? ? ? ? ?
1、存儲器基礎知識
存儲器管理的對象是主存或內存,存儲器是計算機系統中非常關鍵的資源,用來存放各種信息的主要場所。存
儲器管理功能主要包括:主存空間的分配和回收、提供主存利用率、擴充主存、主存信息的保護。
2、存儲器結構
存儲器結構:寄存器、高速緩存、主存、外存
3、地址重定位
地址重定位是指將邏輯地址變換成主存的物理地址的過程。分為:靜態地址重定位、動態地址重定位。
3.1 靜態重定位
靜態重定位是指在程序裝入主存時已經完成了邏輯地址到物理地址的變換、在程序運行期間將不會再發生變化。
優點:無需硬件地址變換機構的支持,它只要求程序本身是可重定位的。
缺點:必須給作業分配一個連續的存儲區域,在作業執行期間不能擴充存儲空間、也不能在主存中移動,多個作業也難以共享主存中的同一程序副本和數據。
3.2 動態重定位
動態重定位是指在程序運行期間完成邏輯地址到物理地址的轉換。
優點:程序在執行期間可以轉入和轉出主存,用來解決主存空間不足的問題、可以在主存中移動、把主存中的碎片集中起來可以充分利用存儲空間、不必給程序分配連續的主存空間、可以利用較小的主存塊、可以實現資源共享。
4、存儲管理方案
存儲管理主要是解決多個用戶使用主存的問題。常見的存儲管理方案:分區存儲管理、分頁存儲管理、分段存儲管理、段頁式存儲管理、虛擬存儲管理。
4.1 分區存儲管理
1、固定分區
固定分區是一種靜態分區方式、在系統生成時已經將主存劃分為若干個分區。
2、可變分區
可變分區是一種動態分區方式。存儲空間的劃分是在作業裝入時進行的,因此分區的個數是可變的,分區的大小剛好等于作業的大小。
可變分區的請求和釋放分區算法:最佳適應算法、最差適應算法、首次適應算法、循環首次適應算法。
3、可重定位分區
可變分區的請求和釋放分區算法:最佳適應算法、最差適應算法、首次適應算法、循環首次適應算法。是解決碎片問題簡單而且有效的方法。原理是移動所有已經分配好的分區、使之成為連續區域。因為地址發生變化,所以會有地址重定位的問題。
4、分區保護
分區保護的目的防止未經核準的用戶訪問分區。常用有兩種方式
1、采用上界/下界寄存器保護。
上界寄存器存放的是作業的裝入地址,下界寄存器中轉入的作業的結束地址,形成的物理地址滿足如下條件:
上界寄存器<=物理地址<=下界寄存器
2、采用基址/限長寄存器保護
基址存放的是作業的裝入地址、限長寄存器中裝入的作業的長度,形成的物理地址滿足如下條件:
基址寄存器<=物理地址<=基址寄存器+限長寄存器