5.1程式的裝入與鏈結
編譯
鏈結
目標**+所需庫函式=裝入模組
裝入
將裝入模組裝入記憶體,該過程也叫做位址重定位,也稱位址對映
程式的鏈結方式5.2連續分配儲存管理方式
作業系統的任務是將系統程式和使用者程式分開。
連續分配:指為乙個使用者程式分配乙個連續的記憶體空間。
單一連續分配:應用於單使用者、單任務作業系統。使用基址-限長暫存器。
固定分割槽分配:應用於多道程式設計系統。使用分割槽大小相等、分割槽大小不等。
可變分割槽分配:分割槽的大小和個數隨系統的執行而不斷改變。
可變分割槽的處理:
動態分割槽分配資料結構:空閒分割槽表 空閒分割槽鏈
最佳適應法:空閒分割槽鏈以儲存空間大小遞增的次序拉鍊。
最壞適應法:空閒分割槽鏈以儲存空間大小遞減的次序拉鍊。
動態分割槽的分配和**操作
可變分割槽的**:**分割槽與其相鄰的空閒分割槽合併
離散分配方式的引入
分頁儲存管理方式:儲存管理的需要
分段儲存管理方式:使用者程式設計的需要
5.3頁式儲存管理
將程序的邏輯位址空間分成若干個大小相等的片,稱為頁面或頁。
記憶體空間分成與頁大小相等的若干個儲存塊,稱為物理塊或頁框。
在為程序分配記憶體時,以塊為單位,將程序中的若干頁分別裝入多個可以不相鄰的塊中。
頁式儲存管理位址變換機構
實體地址=塊號*頁的大小+頁位移
快表:由於頁表放在記憶體,使得cpu存放乙個資料時,要兩次訪問記憶體,為了提高速度,增設快表(快取記憶體)
記憶體有效訪問時間(eat)
t為訪問一次記憶體所需時間;a為命中率;y為查詢快表所需時間
不用快表:eat=t+t=2t
引入快表後:eta=ay+(t+y)(1-a)+t=2t+y-ta
典型頁式作業系統舉例:
一級分頁:pdp_11
二級分頁:vax
**分頁:sparc
四級分頁:68030
5.4段式儲存管理
(方便程式設計、分段共享、分段保護、動態鏈結、動態增長)
段表:段號、段長、基址
段式儲存管理位址變換機構
當段號小於程序的總段數時,段號合法;
當段內位移小於段長時,段內位址合法。
分頁和分段的區別分頁
分段頁是資訊的物理單位
段是資訊的邏輯單位
分頁是系統管理的需要
分段是為了更好的滿足使用者的需求
頁的大小固定,由系統決定
段的長度不固定,由使用者所編寫的程式決定
分頁的作業位址空間時一維的,是單一的線性位址空間
分段的作業位址空間時二維的,需要有端名和段內位址
段的共享與保護分段的分配與**
段的保護:訪問控制、段表保護、保護環(編號越高,許可權越低)
保護環:
核心是0級、系統呼叫是1級、庫函式是2級、使用者程式是3級
5.5段頁式儲存管理
段頁式位址變換機構
段表始址找段表,頁表始址找頁表。
段號大於段表長度時,產生越界中斷。
狀態為不在記憶體,產生段中斷。
頁號大於頁表長度,產生越界中斷。
段頁式儲存管理系統舉例
multics intel 80386
作業系統第五章
虛擬儲存器的基本概念 引入 實現 特徵 請求分頁儲存管理方式 硬體支援 位址變換 分配演算法 頁面置換演算法 效能分析 請求分段儲存管理方式 主要相同點是都要在記憶體與外存之間交換資訊 主要區別在於交換技術換出換進一般是整個程序 proc結構和共享正文段除外 因此乙個程序的大小受物理儲存器的限制 而...
MOOC南京大學作業系統第五次單元測驗
編號選項a inode節點 b超級塊 c空閒塊 d目錄項 編號選項 a檔案系統 b資料儲存系統 c資料庫系統 d檢索系統 編號選項 a索引 b路徑 c約定的方法 d多級目錄 編號選項 a索引檔案 b變長記錄的檔案 c索引順序檔案 d流式檔案 編號選項 a鏈結檔案 b連續檔案 c索引檔案 d記錄式檔案...
作業系統 第五章 死鎖(一)
死鎖 deadlock 定義 在多道程式中,由於多個併發程序共享系統的資源,如果使用不當可能會造成一種僵局,即當某個程序提出資源的使用請求後,使得系統中一些程序處於無休止的阻塞狀態,在無外力的作用下,這些程序將無法繼續進行下去,這就是死鎖。產生死鎖的環境 1 多道程式設計技術 2 多個併發程序 3 ...