3.4 存儲管理
現(xiàn)代計算機系統(tǒng)中的存儲系統(tǒng)通常是多級存儲體系,至少有主存(內存)和輔存(外存)兩級,有的系統(tǒng)有更多的級數(shù)。
主存是由系統(tǒng)實際提供的存儲單元組成的一個連續(xù)地址空間,處理器可以直接存取。它的存儲容量受到實際存儲單元的限制。
輔存是指軟盤、硬盤、光盤和磁帶等一些外部存儲部件,常用來存放暫不執(zhí)行的程序和數(shù)據(jù),處理器不能直接訪問,需啟動I/O設備,才能進行內存、外存交換。
系統(tǒng)中主存的使用一般分系統(tǒng)空間和用戶空間兩個部分。
把相對地址空間的程序轉換成絕對地址空間(物理地址)空間上能夠執(zhí)行的過程稱為地址重定位,也稱為地址映射或地址映像。地址重定位有兩種:靜態(tài)重定位和動態(tài)重定位。
存儲管理應該提高存儲資源的利用效率,又方便用戶使用,存儲管理的任務應具有下列功能。
● 分配與回收
● 存儲擴充
● 共享與保護
◆實存管理:實存的管理一般有三種分配方式。
● 單一連續(xù)分配:一個作業(yè)占全部空間,靜態(tài)分配(不對主存保護,引起沖突)
● 固定分區(qū)分配:靜態(tài),空間分區(qū)
● 可變分區(qū)分配:動態(tài)分配分區(qū)
● 交換:較小的空間運行較大的作業(yè),采用的方法
其中,可變分區(qū)分配方法是目前的系統(tǒng)采用得較多的。它將主存空間按用戶要求動態(tài)地分劃成若干個分區(qū)。為了消除分配中的外部碎片,系統(tǒng)還需要合并自由區(qū)和進行存儲拼接或緊湊。
關于實存的存儲分配算法主要有4種。
● 最佳適應算法
● 首次適應算法
● 最差適應算法
● 循環(huán)首次適應算法
◆虛存管理
虛擬存儲(簡稱虛存)不考慮實際主存的大小和數(shù)據(jù)存取的實際地址,只考慮相互有關的數(shù)據(jù)之間的相對位置,其容量由計算機的地址位數(shù)決定。
虛擬存儲通常涉及存儲空間大于計算機系統(tǒng)主存中可利用存儲空間時的尋址能力問題。其特點是運行程序訪問的地址不是從主存中可以獲得的,即運行進程訪問的地址與主存可用的地址分離。
運行進程訪問的地址稱為虛地址,主存中可用的地址稱為實地址。一個運行進程可以訪問的虛地址范圍稱為進程的虛地址空間,相應的,可使用的實地址范圍稱為實地址空間。
虛存的組織方式有3種。
◆分段存儲組織
一個作業(yè)是由若干個具有邏輯意義的段組成。在分段系統(tǒng)中,允許程序(作業(yè))占據(jù)主存中若干分離的分區(qū),每個分區(qū)存儲一個程序分段。分段系統(tǒng)中的虛地址是一個有序對(段號、段內位移)。系統(tǒng)為每個作業(yè)建立一個段表,其內容包括段號與主存起始地址的對應關系、段長和狀態(tài)。
◆頁式存儲組織
與段式存儲組織相似。主存被劃分成若干個定長的頁,頁式系統(tǒng)中的虛地址是一個有序對(頁號、頁內位移)。系統(tǒng)為每個進程建立一個頁表,其內容包括進程的邏輯頁號與物理頁號的對應關系、狀態(tài)等。
◆段頁式存儲組織
綜合了上述兩種存儲組織的特點。主存被劃分成定長的頁,段頁式系統(tǒng)中虛地址形式是(段號、段內頁號、頁內位移)。系統(tǒng)為每個進程建立一個段表,再為每個段表建立一個頁表。
虛存管理的置換策略有幾種算法
● 最優(yōu)(OPT)算法:選擇淘汰不再使用或最遠的將來才使用的頁。
● 隨機(RAND)算法:隨機的選擇淘汰的頁。
● 先進先出(FIFO)算法:選擇淘汰主存駐留時間最長的頁。
● 最近最少使用(LRU)算法:選擇淘汰離當前時刻最近的一段時間使用得最少的頁。
虛存管理策略的基礎是局部性原理--進程往往不均勻地高度局部化地訪問主存。這種局部性表現(xiàn)為時間局部性和空間局部性兩種。
根據(jù)局部性原理的特性,提出了工作集理論。工作集是指進程頻繁訪問頁面的集合。工作集理論要求,為了使進程能有效的運行,它的頁面工作集應駐留在主存中,以防止“顛簸”(又稱抖動,即指由于進程頻繁的從輔存請求頁面而造成的過度的頁面調度)現(xiàn)象。
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |