連續分配管理方式

2021-09-29 01:49:40 字數 1836 閱讀 9871

連續分配管理方式屬於記憶體空間的分配和**的內容

連續分配:指為使用者程序分配的必須是乙個連續的記憶體空間.

1.單一連續分配

(1)只支援單道程式,記憶體分為系統區和使用者區,使用者程式放在使用者區

(2)無外部碎片,有內部碎片

在單一連續分配方式中,記憶體被分為系統區和使用者區。系統區通常位於記憶體的低位址部分,用於存放作業系統相關資料;使用者區用於存放使用者程序的相關資料。記憶體只能有一道使用者程式,使用者程式獨佔整個使用者區空間。

優點:實現簡單;無外部碎片;可以採用覆蓋技術擴充記憶體;不一定需要採取記憶體保護。(早期的pc作業系統ms-dos )

缺點:只能用於單使用者,單任務的作業系統中,有內部碎片;儲存器利用率極低。

2.固定分割槽分配

(1)支援多道程式,記憶體使用者空間分為若干個固定大小的分割槽,每個分割槽只能裝一道作業

(2)無外部碎片,有內部碎片

(3)兩種分割槽方式:

1.分割槽大小相等:缺乏靈活性,適合用一台計算機控制多個相同物件的場合

2.分割槽大小不等:增加了靈活性,可以滿足不同大小的程序需求,根據常在系統中執行的作業大小情況進行劃分。

作業系統需要建立乙個資料結構–分割槽說明表,來實現各個分割槽的分配與**。每個表項對應乙個分割槽,通常按分割槽大小排列。每個表項包括對應分割槽的大小、起始位址、狀態。

用資料結構的陣列或鍊錶即可表示這個表.

當某使用者程式要裝入記憶體時,由作業系統核心程式根據使用者程式大小檢索該錶,從中找到乙個能滿足大小的、未分配的分割槽,將之分配給該程式,然後修復狀態。

優點:實現簡單,無外部碎片。

缺點:a.當使用者程式太大時,可能所有的分割槽都不能滿足需求,此時不得不採用覆蓋技術來解決,但這又會降低效能;b.會產生內部碎片,記憶體利用率低

3.動態分割槽分配

(1)支援多道程式,在程序裝入記憶體時,根據程序的大小動態的建立分割槽

(2)無內部碎片,有外部碎片

(3)外部碎片可用「緊湊」技術來解決

(4)**記憶體分割槽時,可能遇到四種情況

1.**區之後有相鄰的空閒分割槽

2.會收區之前有相鄰的空閒分割槽

3.**區前後有相鄰的空閒分割槽

4.**區前後沒有相鄰的空閒分割槽

動態分割槽分配,又稱可變分割槽分配。這種分配方式不會預先劃分記憶體分割槽,而是在程序裝入記憶體時,根據程序的大小動態地建立分割槽,並使分割槽的大小正好適合程序的需要。因此系統分割槽的大小和數目是可變的。

1.系統要用什麼樣的資料結構記錄記憶體的使用情況?

有兩種常用的資料結構:

1.空閒分割槽表

每乙個空閒分割槽對應乙個表項。表項中包含分割槽號、分割槽大小、分割槽起始位址等資訊。

2.空閒分割槽鏈

每個分割槽的起始部分和末尾部分分別設定前向指標和後向指標。起始部分處還可記錄分割槽的大小等資訊。

2.當很多空閒分割槽都能滿足需求時,應該選擇哪個分割槽進行分配?

把乙個新作業裝入記憶體時,需要按照一定的動態分割槽分配演算法,從空閒分割槽表(或空閒分割槽鏈)中選出乙個分割槽分配給該作業。由於分配演算法對系統效能有很大影響,因此對其有很多的研究.

具體細節在後面會進行詳細講解。

3.如何進行分割槽的分配和**操作?

**後進行空閒區的合併

連續分配儲存管理方式

一 單一連續分配 最簡單的一種儲存管理方式,只能用於單使用者 單任務的作業系統中。優點 易於管理。缺點 對要求記憶體空間少的程式,造成記憶體浪費 程式全部裝入,很少使用的程式部分也占用記憶體。二 固定分割槽分配 把記憶體分為一些大小相等或不等的分割槽 partition 每個應用程序占用乙個分割槽。...

連續分配儲存管理方式

連續分配 為 乙個使用者程式分配一段 連續的記憶體空間 包括 單一連續分配 固定分割槽分配 動態分割槽分配以及動態重定位分配。離散分配 分頁儲存 分段儲存。記憶體分為系統區 使用者區和空閒區三部分,系統區僅提供給 os使用 使用者區記憶體中,僅裝有一道使用者程式。系統區使用者區空閒區 劃分分割槽的方...

記憶體分配管理方式一 連續分配管理方式

內存在此方式下分為系統區和使用者區,系統區僅提供給作業系統使用,通常在低位址部分 使用者區是為使用者提供 除系統區之外的記憶體空間。這種方式無需進行記憶體保護。因為記憶體中永遠只有一道程式,肯定不會因為訪問越界而干擾其他程式。簡單 無外部碎片 可以使用覆蓋技術,不需要額外技術的支援 只能用於單使用者...