虛擬存儲(chǔ)器(2)ppt課件_第1頁(yè)
虛擬存儲(chǔ)器(2)ppt課件_第2頁(yè)
虛擬存儲(chǔ)器(2)ppt課件_第3頁(yè)
虛擬存儲(chǔ)器(2)ppt課件_第4頁(yè)
虛擬存儲(chǔ)器(2)ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

從根本上提高內(nèi)存利用率的手段 頁(yè)式存儲(chǔ)管理 分頁(yè)存儲(chǔ)管理的基本思想 一 進(jìn)程圖像等分成若干頁(yè)面內(nèi)存按同樣大小等分成若干頁(yè)框例 32位機(jī)器 配置1G內(nèi)存 頁(yè)面大小4K 問(wèn) 進(jìn)程虛地址空間占多少頁(yè) 內(nèi)存有多少頁(yè)框 分頁(yè)存儲(chǔ)管理的基本思想 二 一個(gè)頁(yè)面占據(jù)一個(gè)頁(yè)框同一個(gè)進(jìn)程在主存中占據(jù)的頁(yè)框不必連續(xù)頁(yè)表 登記進(jìn)程的頁(yè)面在主存占據(jù)的頁(yè)框號(hào) 每個(gè)進(jìn)程擁有一張頁(yè)表 進(jìn)程運(yùn)行時(shí)頁(yè)表全部駐留主存問(wèn) 頁(yè)表何時(shí)被創(chuàng)建 系統(tǒng)何時(shí)會(huì)對(duì)頁(yè)表進(jìn)行修改 用頁(yè)表進(jìn)行地址映射 例 設(shè)某臺(tái)計(jì)算機(jī)的頁(yè)面長(zhǎng)4k 右圖是現(xiàn)運(yùn)行進(jìn)程pa的頁(yè)表 問(wèn) 1 邏輯地址為5K的代碼在內(nèi)存中的起始地址2 頁(yè)表有多少表項(xiàng) 占多少內(nèi)存 實(shí)現(xiàn)地址變換的硬件邏輯 假設(shè)進(jìn)程執(zhí)行時(shí)需要訪問(wèn)邏輯地址n 簡(jiǎn)單分頁(yè)系統(tǒng)的地址變換過(guò)程如下 整個(gè)過(guò)程由硬件的地址變換機(jī)構(gòu)自動(dòng)完成 將邏輯地址n分成頁(yè)號(hào)p和頁(yè)內(nèi)位移量s 根據(jù)頁(yè)號(hào)查找頁(yè)表 頁(yè)表起始地址a存放在頁(yè)表控制寄存器中 確定包含n單元的頁(yè)面在內(nèi)存中的存放位置 頁(yè)框號(hào)t 3用頁(yè)框號(hào)t取代邏輯地址中的頁(yè)號(hào)部分p 實(shí)現(xiàn)下面的計(jì)算 物理地址 頁(yè)框號(hào) 頁(yè)長(zhǎng) 頁(yè)內(nèi)位移 之后將結(jié)果送MAR訪問(wèn)主存 解決頁(yè)表容量過(guò)大的問(wèn)題 二級(jí)頁(yè)表IntelPentium sSolution 總的思路 將頁(yè)表進(jìn)行分頁(yè) 用頁(yè)目錄中的表項(xiàng)記錄頁(yè)表在主存中位置 頁(yè)目錄 頁(yè)表的頁(yè)表頁(yè)目錄占一個(gè)頁(yè)框有了二級(jí)頁(yè)表之后 頁(yè)表不用占據(jù)連續(xù)的存儲(chǔ)空間 甚至不用100 駐留內(nèi)存請(qǐng)畫(huà)出最小的程序的二級(jí)頁(yè)表最重要的 頁(yè)表的內(nèi)容 容量 大大地減少了 MMU支持二級(jí)頁(yè)表時(shí)邏輯地址 MMU支持二級(jí)頁(yè)表時(shí)邏輯地址分三部分頁(yè)目錄號(hào)頁(yè)號(hào)頁(yè)內(nèi)偏移量 例 長(zhǎng)度為128M的進(jìn)程之頁(yè)表長(zhǎng)度為128k字節(jié) 32頁(yè)求進(jìn)程的二級(jí)頁(yè)表 31張頁(yè)表不必連續(xù)存放在內(nèi)存只有進(jìn)程最近一段時(shí)間內(nèi)使用的頁(yè)表才需要駐留內(nèi)存 解決了頁(yè)表內(nèi)存消耗過(guò)大的問(wèn)題 頁(yè)表內(nèi)存消耗巨大問(wèn)題的解決方案之二 PowerPC sSolution 反向頁(yè)表 InvertedPageTable 反向頁(yè)表中每一項(xiàng)對(duì)應(yīng)于一個(gè)主存頁(yè)而不是虛頁(yè) 在這種方法中 系統(tǒng)維護(hù)一張反向頁(yè)表 在這張表中每一項(xiàng)對(duì)應(yīng)于一個(gè)主存頁(yè)而不是虛頁(yè) 系統(tǒng)使用一個(gè)簡(jiǎn)單的散列 hash 函數(shù)將虛地址的頁(yè)號(hào)部分映射到散列表中的某一項(xiàng) 其中登記著一根指向反向頁(yè)表表項(xiàng)的指針 由于散列表和反向頁(yè)表中的每一項(xiàng)對(duì)應(yīng)于一個(gè)主存頁(yè)框 因此 無(wú)論有多少個(gè)進(jìn)程 支持多少虛頁(yè) 頁(yè)表 反向頁(yè)表 的容量是固定的 512M的主存只需要128K個(gè)反向頁(yè)表表項(xiàng) 熟悉散列表的讀者一定知道 多個(gè)頁(yè)號(hào)的hash函數(shù)運(yùn)算結(jié)果可能會(huì)相同 即多個(gè)虛地址頁(yè)面可能會(huì)被映射到同一個(gè)主存頁(yè)框 系統(tǒng)可以利用鏈接管理技術(shù)來(lái)處理hash沖突 只要hash函數(shù)選擇的好 同一個(gè)hash結(jié)果對(duì)應(yīng)的反向頁(yè)表鏈會(huì)很短 只有一到兩項(xiàng) 空閑內(nèi)存區(qū)的管理 位示圖 bitmap 操作系統(tǒng)使用位示圖登記內(nèi)存中物理頁(yè)面的分配情況 內(nèi)存的每個(gè)物理頁(yè)面對(duì)應(yīng)于一個(gè)bit 0相應(yīng)的頁(yè)框空閑可供使用 1該頁(yè)框中已存入其它進(jìn)程的邏輯頁(yè)面 當(dāng)進(jìn)程需要內(nèi)存空間時(shí) 操作系統(tǒng)掃描位示圖尋找值為0的bit 并將這些bit對(duì)應(yīng)的主存頁(yè)框分配給該進(jìn)程 進(jìn)程運(yùn)行結(jié)束或出于某種原因釋放內(nèi)存空間時(shí) 操作系統(tǒng)找到所釋放的所有頁(yè)框 在bit圖中將它們對(duì)應(yīng)的bit改為0 離散的代價(jià) 訪存時(shí)間加倍 簡(jiǎn)介 原則上 每個(gè)虛存訪問(wèn)可能引起兩次主存訪問(wèn) 一次取相應(yīng)的頁(yè)表項(xiàng) 一次取想要的數(shù)據(jù) 因此簡(jiǎn)單的頁(yè)式存儲(chǔ)方案會(huì)導(dǎo)致存儲(chǔ)器訪問(wèn)時(shí)間加倍 為克服這個(gè)問(wèn)題 系統(tǒng)可以在CPU和主存之間配一組特殊的高速cache 用來(lái)存放現(xiàn)運(yùn)行進(jìn)程的頁(yè)表表項(xiàng) 這種Cache是聯(lián)想寄存器 它可以按內(nèi)容進(jìn)行并行查找 當(dāng)輸人端有一個(gè)輸人值 頁(yè)號(hào)p時(shí) 其中存放頁(yè)號(hào)為p的那一項(xiàng)立即被選中 并輸出其變換值 頁(yè)框號(hào)t Cache的訪問(wèn)速度遠(yuǎn)遠(yuǎn)高于主存 它的引入大大提高了地址變換的速度 但由于成本關(guān)系 價(jià)格非常昂貴 聯(lián)想寄存器不可能做得很大 一般而言 聯(lián)想寄存器中只能夠存放CPU最近用過(guò)的少數(shù)頁(yè)表表項(xiàng) 隨著進(jìn)程的運(yùn)行 系統(tǒng)會(huì)經(jīng)常運(yùn)行置換算法以淘汰聯(lián)想寄存器中不經(jīng)常使用的部分 配備了聯(lián)想寄存器的系統(tǒng)在每次地址變換時(shí) 根據(jù)頁(yè)式地址中的頁(yè)面號(hào)同時(shí)查找主存頁(yè)表和聯(lián)想寄存器 轉(zhuǎn)換后備緩沖區(qū)TLB 若TLB中存在相匹配的頁(yè)號(hào) 系統(tǒng)可以直接從TLB中讀出頁(yè)框號(hào)送MAR以形成物理地址 否則 系統(tǒng)等待主存頁(yè)表的查詢結(jié)果 頁(yè)框號(hào) 形成物理地址的同時(shí)將頁(yè)框號(hào)送TLB 若TLB已滿 需首先運(yùn)行置換算法淘汰某個(gè)頁(yè)面 內(nèi)存訪問(wèn)時(shí)間加倍問(wèn)題的解決 轉(zhuǎn)換后備緩沖區(qū) TLB CPU和主存之間的聯(lián)想寄存器 作為高速cache 存放CPU在最近一段時(shí)間內(nèi)經(jīng)常訪問(wèn)的頁(yè)表表項(xiàng) TLB高速緩存的硬件特性 按內(nèi)容查表 并發(fā)地用待查找的內(nèi)容與每個(gè)表項(xiàng)匹配 若命中 一個(gè)訪問(wèn)周期內(nèi)就可以得到邏輯頁(yè)面在主存中的地址若不命中 等待左側(cè)頁(yè)表的查詢結(jié)果 形成物理地址的同時(shí)將頁(yè)框號(hào)送TLB 保證TLB始終存放CPU最近使用的頁(yè)面頁(yè)面置換算法注 TLB又稱為快表 或聯(lián)想寄存器組 虛擬存儲(chǔ)器 思想來(lái)源 實(shí)際上絕大多數(shù)進(jìn)程在運(yùn)行時(shí)并非用到全部程序 因此 進(jìn)程在運(yùn)行時(shí)圖像全部駐留主存顯然是不必要的 1961年英國(guó)曼徹斯特大學(xué)提出虛擬存儲(chǔ)器的概念 使用硬盤(pán)中的swap分區(qū)作為主存的輔助存儲(chǔ)器 存放所有進(jìn)程的圖像 主存中只存放CPU最近需要使用的信息 用頁(yè)式管理實(shí)現(xiàn)虛擬存儲(chǔ) 缺頁(yè) 缺頁(yè)事件 CPU所訪問(wèn)的信息內(nèi)存中不存在計(jì)算機(jī)使用中斷處理缺頁(yè)事件硬件 當(dāng)前指令訪問(wèn)的數(shù)據(jù) 或CPU下一條待執(zhí)行的指令不在內(nèi)存 產(chǎn)生缺頁(yè)中斷軟件 操作系統(tǒng) 中斷處理程序在swap分區(qū)中找到包含CPU所需訪問(wèn)的數(shù)據(jù) 指令 的邏輯頁(yè)面 將其裝入內(nèi)存頁(yè)框 完整的頁(yè)表的結(jié)構(gòu) 1 狀態(tài)位P 指示該頁(yè)是否已調(diào)入內(nèi)存 2 訪問(wèn)字段A 記錄本頁(yè)在一段時(shí)間內(nèi)被訪問(wèn)的次數(shù)或最近未被訪問(wèn)的時(shí)間 3 修改位M 表示該頁(yè)在調(diào)入內(nèi)存后是否被修改過(guò) 若修改過(guò) 則換出時(shí)需重寫(xiě)至外存 4 外存地址 指出該頁(yè)在外存上的地址 缺頁(yè)中斷的產(chǎn)生 地址變換查頁(yè)表時(shí) 發(fā)現(xiàn)表項(xiàng)的狀態(tài)位為0 地址變換機(jī)構(gòu) 開(kāi)始 頁(yè)號(hào) 頁(yè)表長(zhǎng)度 CPU檢索快表 N N Y 頁(yè)表項(xiàng)在快表中 訪問(wèn)頁(yè)表 頁(yè)在內(nèi)存 修改訪問(wèn)位和修改位 修改頁(yè)表 形成物理地址 地址變換結(jié)束 越界中斷 程序請(qǐng)求訪問(wèn)一頁(yè) Y N 缺頁(yè)中斷處理 Y 頁(yè)面置換 缺頁(yè)中斷時(shí) 若此時(shí)無(wú)空頁(yè) 操作系統(tǒng)必須從主存中選擇一頁(yè)進(jìn)行淘汰以便為即將被調(diào)人的頁(yè)讓出空間 這就是頁(yè)面替換 也稱頁(yè)面置換 替換算法 目標(biāo) 淘汰最近最不可能訪問(wèn)的頁(yè)1最優(yōu)頁(yè)面替換算法 Optimal OPT選擇下次訪問(wèn)距當(dāng)前時(shí)間最長(zhǎng)的頁(yè)面進(jìn)行置換 無(wú)法實(shí)現(xiàn) 2FIFO3最近最久未使用算法 LRU選擇主存頁(yè)面中上次訪問(wèn)時(shí)間距今最長(zhǎng)的頁(yè)面予以淘汰 硬件實(shí)現(xiàn)的代價(jià)太大 4其它 最佳置換算法例 假定系統(tǒng)為某進(jìn)程分配了3個(gè)物理塊 進(jìn)程運(yùn)行時(shí)的頁(yè)面走向?yàn)? 2 3 4 1 2 5 1 2 3 4 5 開(kāi)始時(shí)3個(gè)物理塊均為空 計(jì)算采用最佳置換頁(yè)面淘汰算法時(shí)的缺頁(yè)率 7 12 注 實(shí)際上這種算法無(wú)法實(shí)現(xiàn) 因頁(yè)面訪問(wèn)的未來(lái)順序很難精確預(yù)測(cè) 但可用該算法評(píng)價(jià)其它算法的優(yōu)劣 先進(jìn)先出置換算法例題 1 假定系統(tǒng)為某進(jìn)程分配了3個(gè)物理塊 進(jìn)程運(yùn)行時(shí)的頁(yè)面走向?yàn)? 2 3 4 1 2 5 1 2 3 4 5 開(kāi)始時(shí)3個(gè)物理塊均為空 計(jì)算采用先進(jìn)先出頁(yè)面淘汰算法時(shí)的缺頁(yè)率 9 12 先進(jìn)先出置換算法例題 2 假定系統(tǒng)為某進(jìn)程分配了4個(gè)物理塊 進(jìn)程運(yùn)行時(shí)的頁(yè)面走向?yàn)? 2 3 4 1 2 5 1 2 3 4 5 開(kāi)始時(shí)4個(gè)物理塊均為空 計(jì)算采用先進(jìn)先出頁(yè)面淘汰算法時(shí)的缺頁(yè)率 10 12 先進(jìn)先出置換算法 注 1 該算法的出發(fā)點(diǎn)是最早調(diào)入內(nèi)存的頁(yè)面 其不再被訪問(wèn)的可能性會(huì)大一些 2 該算法實(shí)現(xiàn)比較簡(jiǎn)單 對(duì)具有線性順序訪問(wèn)的程序比較合適 而對(duì)其他情況效率低 3 先進(jìn)先出算法存在一種異常現(xiàn)象 即在某些情況下會(huì)出現(xiàn)分配給的進(jìn)程物理塊數(shù)增多 缺頁(yè)次數(shù)有時(shí)增加 有時(shí)減少的奇怪現(xiàn)象 這種現(xiàn)象稱為Belady現(xiàn)象 如上幾例 LRU最近最久未使用算法 選擇到當(dāng)前時(shí)間為止訪問(wèn)次數(shù)最少頁(yè)面淘汰 該算法要求為每頁(yè)設(shè)置一個(gè)訪問(wèn)計(jì)數(shù)器 每當(dāng)頁(yè)被訪問(wèn) 該頁(yè)的訪問(wèn)計(jì)數(shù)器加1 發(fā)生缺頁(yè)中斷時(shí) 淘汰計(jì)數(shù)值最小的頁(yè)面 并將所有計(jì)數(shù)器清零 最近最久未使用算法 注 該算法的出發(fā)點(diǎn) 如果某個(gè)頁(yè)面被訪問(wèn)了 則它可能馬上還要訪問(wèn) 反之 如果很長(zhǎng)時(shí)間未被訪問(wèn) 則它在最近一段時(shí)間也不會(huì)被訪問(wèn) 該算法的性能接近于最佳算法 但實(shí)現(xiàn)起來(lái)較困難 因?yàn)橐页鲎罱罹梦词褂玫捻?yè)面 必須為每一頁(yè)設(shè)置相關(guān)記錄項(xiàng) 用于記錄頁(yè)面的訪問(wèn)情況 并且每訪問(wèn)一次頁(yè)面都須更新該信息 這將使系統(tǒng)的開(kāi)銷加大 所以在實(shí)際系統(tǒng)中往往使用該算法的近似算法 該算法的近似算法實(shí)現(xiàn) 方法1 利用一特殊的棧保存當(dāng)前使用的頁(yè)號(hào) 每當(dāng)進(jìn)程訪問(wèn)某頁(yè)面時(shí) 把被訪問(wèn)頁(yè)面移到棧頂 于是棧底的頁(yè)面就是最久未使用的頁(yè)面 方法2 為每個(gè)頁(yè)面設(shè)立一個(gè)寄存器記錄頁(yè)面的訪問(wèn)情況 每當(dāng)進(jìn)程訪問(wèn)某頁(yè)面時(shí) 將該頁(yè)面對(duì)應(yīng)寄存器的最高位置1 系統(tǒng)定期將寄存器右移一位并將最高位補(bǔ)0 于是寄存器數(shù)值最小的頁(yè)面是最久未使用的頁(yè)面 最近最久未使用算法例 假定系統(tǒng)為某進(jìn)程分配了3個(gè)物理塊 進(jìn)程運(yùn)行時(shí)的頁(yè)面走向?yàn)? 2 3 4 1 2 5 1 2 3 4 5 開(kāi)始時(shí)3個(gè)物理塊均為空 計(jì)算采用最近最久未使用頁(yè)面淘汰算法時(shí)的缺頁(yè)率 10 12 簡(jiǎn)單Clock置換算法 NRU NotRecentlyUsed算法 該算法是LRU和FIFO的折衷 該算法要求為每頁(yè)設(shè)置一個(gè)訪問(wèn)位 并將內(nèi)存中的所有頁(yè)鏈接成一個(gè)循環(huán)隊(duì)列 當(dāng)某頁(yè)被訪問(wèn)時(shí) 系統(tǒng)將其訪問(wèn)位設(shè)置為1 置換時(shí)采用一個(gè)指針 從當(dāng)前指針位置開(kāi)始按序檢查各頁(yè) 若訪問(wèn)位為0則選擇該頁(yè)換出 若訪問(wèn)位為1則將其設(shè)置為0 最后指針停留在被置換頁(yè)的下一頁(yè)上 替換指針 2 改進(jìn)型Clock置換算法 該算法即考慮頁(yè)面的使用情況 又考慮置換代價(jià) 被淘汰頁(yè)面以修改位為0者為佳 改進(jìn)型Clock置換算法的細(xì)節(jié) 由訪問(wèn)位A和修改位M可以組成下面四種類型的頁(yè)框 1類 A 0 M 0最近沒(méi)有被訪問(wèn) 也沒(méi)有被修改 2類 A 0 M 1最近沒(méi)有被訪問(wèn) 但被修改 3類 A 1 M 0最近被訪問(wèn)過(guò) 但沒(méi)有被修改 4類 A 1 M 1最近被訪問(wèn)過(guò) 被修改 改進(jìn)型Clock置換算法的實(shí)現(xiàn) 顯然第1類頁(yè)面是最佳淘汰頁(yè)面 應(yīng)盡量避免淘汰第4類頁(yè)面 算法執(zhí)行的步驟如下 1從current指針開(kāi)始掃描內(nèi)存頁(yè)框 尋找第1類頁(yè)面予以替換 2如果第1步操作失敗 重新掃描 尋找第2類頁(yè)面 對(duì)掃描過(guò)程中途徑的所有頁(yè)幀A位清0 3如果第2步也失敗 指針將回到原來(lái)的位置 并且所有的頁(yè)幀使用位均為0 重復(fù)第1步 必要時(shí)重復(fù)第2步 這一次一定可以找到淘汰頁(yè) 最近被訪問(wèn)過(guò)的頁(yè)面 4 頁(yè)面緩沖算法 該算法是對(duì)FIFO算法的發(fā)展 通過(guò)建立置換頁(yè)面的緩沖 就有機(jī)會(huì)找回剛被置換的頁(yè)面 從而減少系統(tǒng)I O的開(kāi)銷 頁(yè)面緩沖算法用FIFO算法選擇被置換頁(yè) 選擇出的頁(yè)面不是立即換出 而是放入兩個(gè)鏈表之一 如果頁(yè)面未被修改 就將其歸入到空閑頁(yè)面鏈表的末尾 否則將其歸入已修改頁(yè)面鏈表末尾 這些空閑頁(yè)面和已修改頁(yè)面會(huì)在內(nèi)存中停留一段時(shí)間 如果這些頁(yè)面被再次訪問(wèn) 只需將其從相應(yīng)鏈表中移出 就可以返回進(jìn)程 從而減少一次I O開(kāi)銷 缺頁(yè)時(shí) 系統(tǒng)需調(diào)頁(yè) 則將新頁(yè)讀入到空閑頁(yè)面鏈表的第一個(gè)頁(yè)面中 然后將其從該鏈表中移出 當(dāng)已修改的頁(yè)面達(dá)到一定數(shù)目后 再將它們一起寫(xiě)入磁盤(pán) 然后將它們歸入空閑頁(yè)面鏈表 這樣能大大減少I(mǎi) O操作的次數(shù) 虛擬存儲(chǔ)器技術(shù)的理論基礎(chǔ) 技術(shù)的可行性分析 該技術(shù)的引入不會(huì)使程序執(zhí)行速度降低許多 程序執(zhí)行時(shí)呈現(xiàn)局部性規(guī)律 指令局部性 1程序在執(zhí)行時(shí) 除少數(shù)跳轉(zhuǎn)語(yǔ)句外 其余仍是順序操作 即CPU下一步要訪問(wèn)的是本條指令之后的指令 2一般 子程序調(diào)用的深度不會(huì)超過(guò)5 即一段時(shí)間內(nèi) 內(nèi)存中駐留5個(gè)正在執(zhí)行中的子程序就可以滿足一段時(shí)間內(nèi)CPU對(duì)指令的訪問(wèn)需求 數(shù)據(jù)局部性 1進(jìn)程對(duì)數(shù)組等數(shù)據(jù)結(jié)構(gòu)進(jìn)行訪問(wèn)會(huì)持續(xù)一段時(shí)間 即在一段時(shí)間內(nèi) 進(jìn)程所訪問(wèn)的數(shù)據(jù)僅限于與數(shù)組相關(guān)的一組變量 工作集 程序在時(shí)刻t的前 時(shí)間單位中所訪問(wèn)的頁(yè)面集合稱為程序的工作集W t 根據(jù)程序的局部性原理 程序在執(zhí)行時(shí)將首先相對(duì)穩(wěn)定地工作在某個(gè)工作集中 其中包含所有需訪問(wèn)的指令和數(shù)據(jù) 當(dāng)程序運(yùn)行于新舊段落的轉(zhuǎn)折期時(shí) 工作集將巨增以容納新的頁(yè)面 經(jīng)過(guò)一段時(shí)間的調(diào)整 工作集的大小降低 直到它僅包含來(lái)自新段落的頁(yè)面 駐留集 駐留集是進(jìn)程在主存中的圖像 在虛擬存儲(chǔ)器中進(jìn)程的駐留集會(huì)隨時(shí)間而變化 1駐留集包含工作集時(shí) 進(jìn)程才能運(yùn)行下去2為減少內(nèi)存的消耗 os應(yīng)周期性地從駐留集中移去不在工作集中的頁(yè)面 3因?yàn)轳v留集不可能包含全部進(jìn)程圖像 因此會(huì)出現(xiàn)要訪問(wèn)的內(nèi)容在磁盤(pán)中的情況 稱為缺頁(yè) 一般 頻繁發(fā)生缺頁(yè)時(shí) 進(jìn)程一定工作在兩個(gè)邏輯段落過(guò)渡的時(shí)刻 駐留集的管理 操作系統(tǒng)應(yīng)該為進(jìn)程分配多少個(gè)頁(yè) 內(nèi)存分配策略 固定分配可變分配替換范圍 局部替換全局替換 三 請(qǐng)求分頁(yè)中的頁(yè)面調(diào)入策略 1 調(diào)入策略決定什么時(shí)候?qū)⒁粋€(gè)頁(yè)面由外存調(diào)入內(nèi)存 從何處將頁(yè)面調(diào)入內(nèi)存 何時(shí)調(diào)入頁(yè)面預(yù)調(diào)頁(yè)策略 將那些預(yù)計(jì)在不久便被訪問(wèn)的頁(yè)預(yù)先調(diào)入內(nèi)存 這種調(diào)入策略提高了調(diào)頁(yè)的效率 減少了I O次數(shù) 但由于這是一種基于局部性原理的預(yù)測(cè) 若預(yù)調(diào)入的頁(yè)面在以后很少被訪問(wèn) 則造成浪費(fèi) 故這種方式常用于程序的首次調(diào)入 請(qǐng)求調(diào)頁(yè)策略 當(dāng)進(jìn)程運(yùn)行中訪問(wèn)的頁(yè)出現(xiàn)缺頁(yè)時(shí) 則發(fā)出缺頁(yè)中斷 提出請(qǐng)求調(diào)頁(yè) 由OS將所需頁(yè)調(diào)入內(nèi)存 這種策略實(shí)現(xiàn)簡(jiǎn)單 應(yīng)用于目前的虛擬存儲(chǔ)器中 但易產(chǎn)生較多的缺頁(yè)中斷 且每次調(diào)一頁(yè) 系統(tǒng)開(kāi)銷較

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論