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