記憶體的管理的概念

2021-09-29 01:10:37 字數 799 閱讀 7512

1)作業系統要怎麼記錄哪些記憶體區域已經被分配出去了,哪些又還空閒呢?

(2)當程序執行結束之後,如何將程序占用的空間**呢?

(3)很多位置都可以放,那應該放**呢?

提供虛擬化技術,從邏輯上對記憶體空間進行擴充套件,通過只有4g或8g記憶體的系統可以執行幾十或上百g的程式

(1)作業系統負責實現邏輯位址到實體地址的轉換

為了程式設計的方便,寫程式時,只需要關注指令、資料的邏輯位址,而邏輯位址到實體地址的轉換需要作業系統來完成。

(2)三種方式:

1.絕對裝入:編譯器負責位址轉換,就沒有位址轉換(單道程式階段,無作業系統)

2.可重定位裝入:裝入程式負責位址轉換(早期多道批處理階段)

3.動態執行時裝入:執行時才進行位址轉換。需要設定重定位暫存器(現代的作業系統)(裝入記憶體時,未執行時,還是邏輯位址)

(1)保證各自程序在自己的記憶體空間內執行,不會越界訪問。

(2)兩種方式:

1.設定上下限暫存器.

cpu中設定一對上下限暫存器,存放上、下限位址。程序的指令要訪問某個位址時,cpu檢查是否越界。

2.利用重定位暫存器、界位址暫存器進行判斷

重定位暫存器中存放的時程序的起始實體地址,界位址暫存器存放是程序的最大邏輯位址。

記憶體管理的概念

程序和記憶體空間 程序 一旦程式正在執行,它就叫程序,程序擁有它自己的記憶體,檔案控制代碼及其他系統資源.windows工作列顯示的是主視窗而不是程序,單個程序可能有幾個主視窗,每個視窗都由它自己的執行緒支援.每個程序都具有它自己 私有 的4gb虛擬位址空間,它包括 程式的exe映像,所載入的任何非...

記憶體管理之概念

程式裝入和鏈結 程式在經過編譯成目標模組 obj 檔案,鏈結程式鏈結之後,需要將對應的模組裝入記憶體,有三種方式 1 絕對裝入 絕對裝入程式按照裝入模組中的位址,將程式和資料裝入記憶體。由於程式中的邏輯位址與實際位址完全相同,不需要對程式和資料的位址進行修改。只適用於單道程式環境 也就是說,基本上接...

作業系統 記憶體管理(概念)

對於計算機系統而言,作業系統充當著基石的作用,它是連線計算機底層硬體與上層應用軟體的橋梁,控制其他程式的執行,並且管理系統相關資源,同時提供配套的系統軟體支援。對於專業的程式設計師而言,掌握一定的作業系統知識比不可少,因為不管面對的是底層嵌入式開發,還是上層的雲計算開發,都需要使用到一定的作業系統相...