我們知道動態分割區受到外部碎片的影響。 但是,這可能會導致一些嚴重的問題。
為了避免壓縮,我們需要更改規則,該規則指出進程無法儲存在記憶體中的不同位置。
也可以使用壓縮來減少外部碎片的可能性。 在壓縮過程中,所有的空閒分割區都是連續的,所有載入的分割區都集中在一起。
通過應用這種技術,可以將更大的進程儲存在記憶體中。 合併可用分割區,現在可以根據新進程的需要分配這些分割區。 這種技術也稱為碎片整理。
如上圖所示,由於缺少連續的空間,無法將記憶體裝載到記憶體中的進程P5現在可以載入到記憶體中,因為空閒分割區是連續的。
由於所有的自由空間將從幾個地方轉移到一個地方,因此在壓實的情況下系統的效率會降低。
這個過程投入了大量的時間,並且CPU一直保持空閒狀態。 儘管壓實避免了外部碎片,但卻使得系統效率低下。
讓我們考慮一下,作業系統需要6個NS將1個位元組從一個地方複製到另一個地方。
1 B轉移需要6 NS
256 MB傳輸需要256 X 2 ^ 20 X 6 X 10 ^ -9秒
因此,在一定程度上證明,較大容量的儲存器傳輸需要幾秒鐘的大量時間。