記憶體管理的內碎片和外碎片

2022-03-19 10:49:02 字數 650 閱讀 8528

在記憶體管理中,「內零頭」和「外零頭」個指的是什麼?在固定式分割槽分配、可變式分割槽分配、頁式虛擬儲存系統、段式虛擬儲存系統中,各會存在何種零頭?為什麼?

解答: 

在儲存管理中,內零頭是指分配給作業的儲存空間中未被利用的部分,外零頭是指系統中無法利用的小儲存塊。 

在固定式分割槽分配中,為將乙個使用者作業裝入記憶體,記憶體分配程式從系統分割槽表中找出乙個能滿足作業要求的空閒分割槽分配給作業,由於乙個作業的大小並不一定與分割槽大小相等,因此,分割槽中有一部分儲存空間浪費掉了。由此可知,固定式分割槽分配中存在內零頭。 

在可變式分割槽分配中,為把乙個作業裝入記憶體,應按照一定的分配演算法從系統中找出乙個能滿足作業需求的空閒分割槽分配給作業,如果這個空閒分割槽的容量比作業申請的空間容量要大,則將該分割槽一分為二,一部分分配給作業,剩下的部分仍然留作系統的空閒分割槽。由此可知,可變式分割槽分配中存在外零頭。 

在頁式虛擬儲存系統中,使用者作業的位址空間被劃分成若干大小相等的頁面,儲存空間也分成也頁大小相等的物理塊,但一般情況下,作業的大小不可能都是物理塊大小的整數倍,因此作業的最後一頁中仍有部分空間被浪費掉了。由此可知,頁式虛擬儲存系統中存在內零頭。

在段式虛擬儲存系統中,作業的位址空間由若干個邏輯分段組成,每段分配乙個連續的記憶體區,但各段之間不要求連續,其記憶體的分配方式類似於動態分割槽分配。由此可知,段式虛擬儲存系統中存在外零頭。

記憶體管理 內部碎片和外部碎片

概念 乙個分割槽內部出現的碎片 即被浪費的空間 不能被利用。能明確指出屬於哪個程序 例子 固定分割槽法中,當6kb的程序被分配了10kb的記憶體空間,就有4kb的內部碎片 乙個程序申請43kb的記憶體空間,某些處理器因為限制 比如其體系結構規定只能整除4 8 16 該程序被分配了44kb,就有1kb...

計算機作業系統 外碎片和內碎片

碎片是指記憶體中無法利用的儲存空間,碎片分為內部碎片和外部碎片,內部碎片是指分配給作業的儲存空間中未被利用的部分,外部碎片是指系統中無法利用的小儲存塊。在分頁儲存管理系統中,作業位址空間劃分成若干大小相等的頁,相應地將記憶體的儲存空間分成與頁大小相等的塊,在為作業分配儲存空間時,總是以塊為單位來分配...

記憶體碎片的由來

經常看別人部落格說到 記憶體碎片 這個概念,而且很多程式設計技巧書也經常提到頻繁地呼叫記憶體分配函式會導致越來越多的記憶體碎片產生,降低記憶體的利用率。那麼這個 記憶體碎片 究竟是怎麼產生的呢?答案可能要從 作業系統 中查詢了。在翻閱了一些 作業系統 的書之後,對於這個概念有了更清晰的理解,下面進行...