9、虛擬存儲(chǔ)管理
程序局部性原理:時(shí)間局限性和空間局限性。
虛擬頁(yè)式存儲(chǔ)管理:在頁(yè)式管理的基礎(chǔ)上,增加了請(qǐng)求調(diào)頁(yè)和頁(yè)面置換的功能。
基本思路:當(dāng)一個(gè)用戶程序需要調(diào)入內(nèi)存去運(yùn)行時(shí),不是將這個(gè)程序的所有頁(yè)面都裝入內(nèi)存,而是只
裝載部分的頁(yè)面,就可以啟動(dòng)這個(gè)程序運(yùn)行。在運(yùn)行過(guò)程中,如果發(fā)現(xiàn)要執(zhí)行的指令或者訪問(wèn)的數(shù)據(jù)不在
內(nèi)存當(dāng)中,就向系統(tǒng)發(fā)出缺頁(yè)中斷請(qǐng)求,然后系統(tǒng)在處理這個(gè)中斷請(qǐng)求時(shí),就會(huì)將保存在外存中的相應(yīng)頁(yè)
面調(diào)入內(nèi)存,從而使該程序能繼續(xù)運(yùn)行。
在虛擬頁(yè)式存儲(chǔ)管理中,頁(yè)表包含:邏輯頁(yè)面號(hào)、物理頁(yè)面號(hào)、駐留位、保護(hù)位、修改位和訪問(wèn)位。
常用的頁(yè)面置換算法:
A. 最優(yōu)頁(yè)面置換算法:理想化算法。
B. 最近最久未使用算法:鏈表法和棧方法。尋找長(zhǎng)時(shí)間沒(méi)有被訪問(wèn)的頁(yè)面。
C. 最不常用算法:每個(gè)頁(yè)面設(shè)置一個(gè)訪問(wèn)計(jì)數(shù)器。
D. 先進(jìn)先出算法:性能比較差。
E. 時(shí)鐘頁(yè)面置換算法:把頁(yè)面組成環(huán)形鏈表,類似時(shí)鐘面。
一般來(lái)說(shuō),當(dāng)一個(gè)任務(wù)剛剛啟動(dòng)的時(shí)候,它會(huì)不斷去訪問(wèn)一些新的頁(yè)面,然后逐步建立一個(gè)比較穩(wěn)定的
工作集。工作集是指當(dāng)前任務(wù)正在使用的邏輯頁(yè)面的集合。如果分配給一個(gè)任務(wù)的物理頁(yè)面數(shù)太少,不能
包含整個(gè)的工作集,任務(wù)將會(huì)造成很多缺頁(yè)中斷,需要頻繁地進(jìn)行頁(yè)面置換,這種現(xiàn)象稱為“抖動(dòng)”。
相關(guān)推薦:軟考嵌入式系統(tǒng)設(shè)計(jì)歷年真題匯總(2007-2010)
2010年下半年軟考成績(jī)查詢時(shí)間及方式匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |