主存擴(kuò)充虛擬內(nèi)存教學(xué)課件_第1頁(yè)
主存擴(kuò)充虛擬內(nèi)存教學(xué)課件_第2頁(yè)
主存擴(kuò)充虛擬內(nèi)存教學(xué)課件_第3頁(yè)
主存擴(kuò)充虛擬內(nèi)存教學(xué)課件_第4頁(yè)
主存擴(kuò)充虛擬內(nèi)存教學(xué)課件_第5頁(yè)
已閱讀5頁(yè),還剩66頁(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)介

4.5主存擴(kuò)充(虛擬內(nèi)存)為了使程序員在編程時(shí)不受內(nèi)存的結(jié)構(gòu)和容量的限制,系統(tǒng)為用戶構(gòu)造一種存儲(chǔ)器,其結(jié)構(gòu)可能與內(nèi)存結(jié)構(gòu)不同,容量可能遠(yuǎn)遠(yuǎn)超過(guò)內(nèi)存的實(shí)際容量。這種面向編程的存儲(chǔ)器稱為虛擬存儲(chǔ)器。由虛存構(gòu)成的存儲(chǔ)空間稱為虛存空間,或稱虛地址空間。2023/7/29第四章存儲(chǔ)管理程序局部性原理時(shí)間局部性一條指令被執(zhí)行了,則在不久的將來(lái)它可能再被執(zhí)行空間局部性若某一存儲(chǔ)單元被使用,則在一定時(shí)間內(nèi),與該存儲(chǔ)單元相鄰的單元也可能被使用2023/7/29第四章存儲(chǔ)管理實(shí)現(xiàn)虛擬內(nèi)存的基本原理將程序正在使用的部分內(nèi)容放在內(nèi)存,暫時(shí)不用的部分放在外存,在需要時(shí)由系統(tǒng)調(diào)入內(nèi)存,并將不需要(或暫不需要)的部分調(diào)出內(nèi)存。由操作系統(tǒng)結(jié)合相關(guān)硬件來(lái)完成上述工作計(jì)算機(jī)好象為用戶提供了一個(gè)容量遠(yuǎn)大于內(nèi)存的存儲(chǔ)器,這個(gè)存儲(chǔ)器稱為虛擬存儲(chǔ)器。

2023/7/29第四章存儲(chǔ)管理4.6虛擬頁(yè)式存儲(chǔ)管理1、基本思想在進(jìn)程開(kāi)始運(yùn)行之前,不是裝入全部頁(yè)面,而是裝入幾個(gè)或零個(gè)頁(yè)面,之后根據(jù)進(jìn)程運(yùn)行的需要,動(dòng)態(tài)裝入其它頁(yè)面;當(dāng)內(nèi)存空間已滿,而又需要裝入新的頁(yè)面時(shí),則根據(jù)某種算法淘汰某個(gè)頁(yè)面,以便裝入新的頁(yè)面2023/7/29第四章存儲(chǔ)管理XXXX7X5XXX340612虛地址空間物理地址空間}虛頁(yè)頁(yè)框2023/7/29第四章存儲(chǔ)管理2、頁(yè)表表項(xiàng)頁(yè)號(hào)、內(nèi)存塊號(hào)、駐留位、外存地址、訪問(wèn)位、修改位 駐留位:表示該頁(yè)是在內(nèi)存還是在外存訪問(wèn)位:根據(jù)訪問(wèn)位來(lái)決定淘汰哪頁(yè)(由不同的算法決定)修改位:查看此頁(yè)是否在內(nèi)存中被修改過(guò)頁(yè)號(hào)中斷位內(nèi)存塊號(hào)外存地址訪問(wèn)位修改位2023/7/29第四章存儲(chǔ)管理151413121110

9

87

654321000000000000000011110000101100000000000001111001000111010011010100010000000000100011000000000100110在/不在內(nèi)存頁(yè)表虛地址8196物理地址245802023/7/29第四章存儲(chǔ)管理3、缺頁(yè)中斷(PageFault)處理在地址映射過(guò)程中,在頁(yè)表中發(fā)現(xiàn)所要訪問(wèn)的頁(yè)不在內(nèi)存,則產(chǎn)生缺頁(yè)中斷。操作系統(tǒng)接到此中斷信號(hào)后,就調(diào)出缺頁(yè)中斷處理程序,根據(jù)頁(yè)表中給出的外存地址,準(zhǔn)備將該頁(yè)調(diào)入內(nèi)存此時(shí)應(yīng)將缺頁(yè)的進(jìn)程掛起(調(diào)頁(yè)完成再喚醒)2023/7/29第四章存儲(chǔ)管理缺頁(yè)中斷與一般中斷都是中斷相同點(diǎn):保護(hù)現(xiàn)場(chǎng)中斷處理恢復(fù)現(xiàn)場(chǎng)不同點(diǎn):一般中斷是一條指令完成后中斷,缺頁(yè)中斷是一條指令執(zhí)行時(shí)中斷一條指令執(zhí)行時(shí)可能產(chǎn)生多個(gè)缺頁(yè)中斷。如指令可能訪問(wèn)多個(gè)內(nèi)存地址,這些地址在不同的頁(yè)中。2023/7/29第四章存儲(chǔ)管理4.6.2頁(yè)面分配策略和算法為進(jìn)程分配物理塊要解決三個(gè)問(wèn)題:第一,確定最少物理塊數(shù);第二,分配的物理塊數(shù)目是否可變;第三,不同的進(jìn)程所分配的物理塊數(shù)是否相同2023/7/29第四章存儲(chǔ)管理1、最小物理塊數(shù)最少物理塊數(shù)是指能保證進(jìn)程正常運(yùn)行所需的最少物理塊數(shù)。若少于此值時(shí),進(jìn)程將無(wú)法運(yùn)行。進(jìn)程應(yīng)獲得的最少物理塊數(shù)與計(jì)算機(jī)的硬件結(jié)構(gòu)有關(guān),取決于指令的格式、功能和尋址方式2023/7/29第四章存儲(chǔ)管理2、頁(yè)面分配和置換策略兩種分配策略:固定分配和可變分配。兩種置換策略:全局置換和局部置換。組合后有三種方式:固定分配局部置換可變分配全局置換可變分配局部置換2023/7/29第四章存儲(chǔ)管理固定分配局部置換(1)基于進(jìn)程的類型或根據(jù)程序員的要求,為每個(gè)進(jìn)程分配一定數(shù)目的內(nèi)存空間,如M個(gè)頁(yè)框,在整個(gè)運(yùn)行期間都不再改變。(2)發(fā)現(xiàn)缺頁(yè)時(shí)從該進(jìn)程在內(nèi)存的M個(gè)頁(yè)面中選出一頁(yè)換出。存在問(wèn)題:一定數(shù)目的內(nèi)存空間難以確定,太少,會(huì)頻繁地出現(xiàn)缺頁(yè)中斷;太多,使內(nèi)存中駐留的進(jìn)程數(shù)目減少。2023/7/29第四章存儲(chǔ)管理可變分配全局置換(1)OS保持一個(gè)空閑物理塊隊(duì)列,先為每個(gè)進(jìn)程分配一定數(shù)目的物理塊。(2)發(fā)現(xiàn)缺頁(yè)時(shí),由系統(tǒng)從空閑物理塊隊(duì)列中,取出一物理塊分配給該進(jìn)程,并將欲調(diào)入的缺頁(yè)裝入其中。(3)當(dāng)空閑物理塊隊(duì)列中的物理塊用完時(shí),才從內(nèi)存中選擇一頁(yè)調(diào)出,該頁(yè)可能是系統(tǒng)中任一進(jìn)程的頁(yè)。是最易于實(shí)現(xiàn)的一種策略。2023/7/29第四章存儲(chǔ)管理可變分配局部置換先根據(jù)進(jìn)程的類型或程序員的要求,為每個(gè)進(jìn)程分配一定數(shù)目的物理塊;發(fā)生缺頁(yè)時(shí),只從該進(jìn)程在內(nèi)存的頁(yè)面中選出一頁(yè)換出。如果頻繁地發(fā)生缺頁(yè)中斷,則再為之分配若干物理塊,直至缺頁(yè)率減低到適當(dāng)程度為止;反之,若缺頁(yè)率特別低,則適當(dāng)減少物理塊。2023/7/29第四章存儲(chǔ)管理3、物理塊分配算法平均分配算法按比例分配算法考慮優(yōu)先權(quán)的分配算法2023/7/29第四章存儲(chǔ)管理平均分配算法將可供分配的物理塊,平均分配給各個(gè)進(jìn)程。這種方式未考慮到各進(jìn)程本身的大小,表面公平造成實(shí)際不公平。2023/7/29第四章存儲(chǔ)管理按比例分配算法根據(jù)進(jìn)程的大小按比例分配物理塊。n個(gè)進(jìn)程,每個(gè)進(jìn)程的頁(yè)面數(shù)是Si,則系統(tǒng)中頁(yè)面總數(shù)為:物理塊的總數(shù)為m,進(jìn)程i所能分到的物理塊數(shù)注意:應(yīng)該取整,且必須大于最小物理塊數(shù)。2023/7/29第四章存儲(chǔ)管理考慮優(yōu)先權(quán)的分配算法為優(yōu)先權(quán)高的分配較多的內(nèi)存空間。通常把內(nèi)存中可供分配的物理塊分成兩部分: 一部分按比例地分配給各進(jìn)程; 一部分則根據(jù)各進(jìn)程的優(yōu)先權(quán)應(yīng)適當(dāng)增加的物理塊數(shù),分配給各進(jìn)程。2023/7/29第四章存儲(chǔ)管理4.6.3頁(yè)面調(diào)入策略1、何時(shí)調(diào)入頁(yè)面2、從何處調(diào)入頁(yè)面3、頁(yè)面調(diào)入過(guò)程2023/7/29第四章存儲(chǔ)管理1、何時(shí)調(diào)入頁(yè)面預(yù)調(diào)頁(yè)和請(qǐng)求調(diào)頁(yè)(1)預(yù)調(diào)頁(yè)策略預(yù)調(diào)頁(yè)策略以預(yù)測(cè)為基礎(chǔ),將那些預(yù)計(jì)在不久之后便會(huì)被訪問(wèn)的程序或數(shù)據(jù)所在的頁(yè)面預(yù)先調(diào)入內(nèi)存,如一次調(diào)入若干個(gè)相鄰的頁(yè)。但預(yù)測(cè)很難準(zhǔn)確,所以預(yù)調(diào)頁(yè)的成功率僅約一半。這種策略主要用于進(jìn)程的首次調(diào)入時(shí),由程序員指出應(yīng)該先調(diào)入哪些頁(yè)。2023/7/29第四章存儲(chǔ)管理(2)請(qǐng)求調(diào)頁(yè)策賂即進(jìn)程在運(yùn)行中發(fā)現(xiàn)所要訪問(wèn)的頁(yè)面不在內(nèi)存時(shí),立即提出請(qǐng)求,由系統(tǒng)將其所需頁(yè)面調(diào)入內(nèi)存。請(qǐng)求調(diào)頁(yè)策略易于實(shí)現(xiàn),在目前的虛擬存儲(chǔ)器中,大多采用此策略。缺點(diǎn):因?yàn)槊看握?qǐng)求只調(diào)入一頁(yè),增加了磁盤(pán)I/O的啟動(dòng)頻率,系統(tǒng)開(kāi)銷大。2023/7/29第四章存儲(chǔ)管理2、從何處調(diào)入頁(yè)面請(qǐng)求分頁(yè)系統(tǒng)中,外存分為文件區(qū)和對(duì)換區(qū)。分三種情況:(1)系統(tǒng)有足夠的對(duì)換區(qū)空間,在進(jìn)程運(yùn)行前,將與該進(jìn)程有關(guān)的文件,從文件區(qū)拷貝到對(duì)換區(qū),全部從對(duì)換區(qū)調(diào)入所需頁(yè)面,調(diào)頁(yè)速度快。2023/7/29第四章存儲(chǔ)管理(2)系統(tǒng)缺少足夠的對(duì)換區(qū)空間 不會(huì)被修改的文件,直接從文件區(qū)調(diào)入,換出時(shí)不寫(xiě)回,再調(diào)入時(shí)仍從文件區(qū)直接調(diào)入; 對(duì)可能被修改的部分,換出時(shí)換到對(duì)換區(qū),再調(diào)入時(shí)從對(duì)換區(qū)調(diào)入。(3)UNIX方式 未運(yùn)行過(guò)的頁(yè)面,都從文件區(qū)調(diào)入;

曾經(jīng)運(yùn)行過(guò)而又被換出的頁(yè)面被放在對(duì)換區(qū),再次調(diào)入時(shí)從對(duì)換區(qū)調(diào)入。 允許頁(yè)面共享,某進(jìn)程請(qǐng)求的頁(yè)面有可能已被其它進(jìn)程調(diào)入內(nèi)存,不用再?gòu)膶?duì)換區(qū)調(diào)入2023/7/29第四章存儲(chǔ)管理3、頁(yè)面調(diào)入過(guò)程程序所要訪問(wèn)的頁(yè)面未在內(nèi)存時(shí),向CPU發(fā)出缺頁(yè)中斷,由中斷處理程序首先保留CPU環(huán)境,分析中斷原因,轉(zhuǎn)入缺頁(yè)中斷處理程序。2023/7/29第四章存儲(chǔ)管理4.7頁(yè)面淘汰算法理想淘汰算法—最佳頁(yè)面算法(OPT)最近最久未使用頁(yè)面淘汰算法(LRU)先進(jìn)先出頁(yè)面淘汰算法(FIFO)2023/7/29第四章存儲(chǔ)管理1、最佳置換算法最佳置換算法是一種理想化的理論算法,具有最好的性能,但在實(shí)際上卻難于實(shí)現(xiàn)。它選擇永不使用的,或者是在最長(zhǎng)時(shí)間內(nèi)不再被訪問(wèn)的頁(yè)面作為淘汰頁(yè)面。但這是無(wú)法預(yù)知的,因而該算法無(wú)法實(shí)現(xiàn)。它在固定分配頁(yè)面方式中可保證獲得最低的缺頁(yè)率。主要用于評(píng)價(jià)其他算法

2023/7/29第四章存儲(chǔ)管理2、先進(jìn)先出頁(yè)面置換算法該算法總是淘汰最先調(diào)入內(nèi)存的頁(yè)面,即選擇在內(nèi)存中駐留時(shí)間最久的頁(yè)面予以淘汰。該算法實(shí)現(xiàn)時(shí)把一個(gè)進(jìn)程已調(diào)入內(nèi)存的頁(yè)面按先后次序鏈接成一個(gè)隊(duì)列,并設(shè)置一個(gè)替換指針,指向最老頁(yè)面。實(shí)現(xiàn)簡(jiǎn)單、性能差2023/7/29第四章存儲(chǔ)管理3最近最久未使用(LRU)選擇最后一次訪問(wèn)時(shí)間距離當(dāng)前時(shí)間最長(zhǎng)的一頁(yè)并淘汰之即淘汰最長(zhǎng)時(shí)間沒(méi)有使用的頁(yè)性能較好,實(shí)現(xiàn)代價(jià)很高軟件方法或硬件方法2023/7/29第四章存儲(chǔ)管理LRU的硬件實(shí)現(xiàn):系統(tǒng)為每頁(yè)設(shè)置一個(gè)寄存器R,每當(dāng)訪問(wèn)這一頁(yè)時(shí),將該頁(yè)對(duì)應(yīng)的寄存器R高位置1,以后每個(gè)時(shí)間間隔將所有的R右移一位,R值越小,對(duì)應(yīng)的頁(yè)未被使用的時(shí)間越長(zhǎng)。當(dāng)淘汰一頁(yè)時(shí)就選擇R值最小的頁(yè)。所以淘汰的是最久未使用的頁(yè)。R的位數(shù)越多越精確,但系統(tǒng)硬件成本也就越高。2023/7/29第四章存儲(chǔ)管理LRU軟件實(shí)現(xiàn):設(shè)置一個(gè)頁(yè)號(hào)棧,當(dāng)一個(gè)頁(yè)面被訪問(wèn)時(shí),就立即將它的頁(yè)號(hào)壓入頁(yè)號(hào)棧,并檢查頁(yè)號(hào)棧中是否有與剛壓入棧頂?shù)南嗤捻?yè)號(hào),若有,則從頁(yè)號(hào)棧中抽出原有的,以保證頁(yè)號(hào)棧中無(wú)相同的頁(yè)號(hào)。當(dāng)系統(tǒng)要淘汰一頁(yè)時(shí),總是從頁(yè)號(hào)棧底取出一個(gè)頁(yè)號(hào)淘汰,即淘汰的頁(yè)是最久未使用的。2023/7/29第四章存儲(chǔ)管理LRU軟件實(shí)現(xiàn):2023/7/29第四章存儲(chǔ)管理某程序在內(nèi)存中分配三個(gè)塊,訪問(wèn)頁(yè)的順序?yàn)?,3,2,1,4,3,5,4,3,2,1,5,按FIFO、

LRU、OPT算法分別計(jì)算缺頁(yè)次數(shù)假設(shè)開(kāi)始時(shí)所有頁(yè)均不在內(nèi)存例12023/7/29第四章存儲(chǔ)管理FIFO432143543215432143555211432143335224321444355

xxxxxxx

xx共缺頁(yè)中斷9次FIFO2023/7/29第四章存儲(chǔ)管理訪問(wèn)順序432143543215432143543215432143543214321435432

xxxxxxx

xxx共缺頁(yè)中斷10次

LRU2023/7/29第四章存儲(chǔ)管理

OPT432143543215432111555211433333335554444444444

xxxx

x

xx

共缺頁(yè)中斷7次OPT2023/7/29第四章存儲(chǔ)管理練習(xí)某程序在內(nèi)存中分配四個(gè)塊,訪問(wèn)頁(yè)的走向?yàn)?,3,2,1,4,3,5,4,3,2,1,5,按LRU、OPT算法分別計(jì)算缺頁(yè)次數(shù)假設(shè)開(kāi)始時(shí)所有頁(yè)均不在內(nèi)存2023/7/29第四章存儲(chǔ)管理LRU432143543215頁(yè)1432143543215頁(yè)243214354321頁(yè)34321435432頁(yè)4432111543

xxxxx

xxx共缺頁(yè)中斷8次2023/7/29第四章存儲(chǔ)管理OPT432143543215頁(yè)1432111555511頁(yè)243222222255頁(yè)34333333333頁(yè)4444444444

xxxxx

x共缺頁(yè)中斷6次2023/7/29第四章存儲(chǔ)管理LRU近似算法:Clock算法在頁(yè)表中增加一訪問(wèn)位,每當(dāng)訪問(wèn)一頁(yè)時(shí),將該頁(yè)的訪問(wèn)位由硬件置1,軟件周期(T)性地將所有訪問(wèn)位置0。在時(shí)間T內(nèi),訪問(wèn)過(guò)的頁(yè)訪問(wèn)位為1,反之為0,淘汰為0的頁(yè)。缺點(diǎn):T難定。太小,訪問(wèn)位為0的頁(yè)相當(dāng)多,所選的不一定是最久未用的。太大,所有頁(yè)的引用位可能都為1,找不到合適的淘汰頁(yè)。

2023/7/29第四章存儲(chǔ)管理2023/7/29第四章存儲(chǔ)管理改進(jìn)型Clock置換算法

由訪問(wèn)位A和修改位M可以組合成下面四種類型的頁(yè)面:1類(A=0,M=0):表示該頁(yè)最近既未被訪問(wèn),又未被修改,是最佳淘汰頁(yè)。2類(A=0,M=1):表示該頁(yè)最近未被訪問(wèn),但已被修改,并不是很好的淘汰頁(yè)。3類(A=1,M=0):最近已被訪問(wèn),但未被修改,該頁(yè)有可能再被訪問(wèn)。4類(A=1,M=1):最近已被訪問(wèn)且被修改,該頁(yè)可能再被訪問(wèn)。2023/7/29第四章存儲(chǔ)管理最不經(jīng)常使用(LFU)選擇訪問(wèn)次數(shù)最少的頁(yè)面淘汰之與LRU的硬件解法類似。

2023/7/29第四章存儲(chǔ)管理頁(yè)面緩沖算法(PBA:PageBufferingAlgorithm)頁(yè)面緩沖算法中,被淘汰的頁(yè)存放在兩個(gè)鏈表(隊(duì)列): 頁(yè)面未修改的淘汰頁(yè)空閑頁(yè)鏈表(實(shí)質(zhì):空閑物理塊鏈表) 頁(yè)面已修改的淘汰頁(yè)已修改頁(yè)面鏈表。2023/7/29第四章存儲(chǔ)管理當(dāng)需要讀入一個(gè)頁(yè)面時(shí),便利用空閑物理塊鏈表中的第一個(gè)物理塊來(lái)裝入。當(dāng)有一個(gè)未被修改的頁(yè)要換出時(shí),并不將它換出內(nèi)存,而是直接把它所在的物理塊掛在空閑頁(yè)鏈表的末尾。換出一個(gè)已修改的頁(yè)面時(shí),則將其所在的物理塊掛在修改頁(yè)面鏈表的末尾。注:換出頁(yè)面時(shí),頁(yè)面在內(nèi)存并不做物理上的移動(dòng),只是將頁(yè)表中的表項(xiàng)移到上述兩個(gè)鏈表之一中。2023/7/29第四章存儲(chǔ)管理優(yōu)點(diǎn):可使已被修改的頁(yè)面和未被修改的頁(yè)面,都仍留在內(nèi)存中。當(dāng)進(jìn)程以后再次訪問(wèn)這些頁(yè)面時(shí),就有可能只須花費(fèi)較小的開(kāi)銷。

只有當(dāng)被修改頁(yè)面達(dá)到一定數(shù)量,例如64個(gè)頁(yè)面時(shí),再將它們一起寫(xiě)回到磁盤(pán),從而顯著地減少了磁盤(pán)I/O的操作次數(shù)。2023/7/29第四章存儲(chǔ)管理(1)分配給進(jìn)程的物理塊數(shù)(2)頁(yè)本身的大小(3)程序的編制方法(練習(xí))(4)頁(yè)淘汰算法影響缺頁(yè)次數(shù)的因素2023/7/29第四章存儲(chǔ)管理思考:分配給進(jìn)程的物理塊數(shù)增加缺頁(yè)次數(shù)一定能夠減少?例2有一虛擬存儲(chǔ)系統(tǒng),采用先進(jìn)先出的頁(yè)面淘汰算法。在內(nèi)存中為每個(gè)進(jìn)程分配3塊。進(jìn)程執(zhí)行時(shí)使用頁(yè)號(hào)的順序?yàn)?32143543215(1) 該進(jìn)程運(yùn)行時(shí)總共出現(xiàn)幾次缺頁(yè)。(2) 若每個(gè)進(jìn)程在內(nèi)存有4塊,又將產(chǎn)生幾次缺頁(yè)。(3) 如何解釋所出現(xiàn)的現(xiàn)象。

2023/7/29第四章存儲(chǔ)管理FIFO432143543215頁(yè)1432143555211頁(yè)243214333522頁(yè)34

3

2

1444

355

xxxxxxx

xx共缺頁(yè)中斷9次m=32023/7/29第四章存儲(chǔ)管理FIFO432143543215頁(yè)1432111543215頁(yè)243222154321頁(yè)34333215432頁(yè)4444

3

2

1543

xxxxxx

xxxx共缺頁(yè)中斷10次m=42023/7/29第四章存儲(chǔ)管理m=3時(shí),缺頁(yè)中斷9次,缺頁(yè)率9/12=75%m=4時(shí),缺頁(yè)中斷10次,缺頁(yè)率10/12=83%FIFO頁(yè)面淘汰算法會(huì)產(chǎn)生異?,F(xiàn)象(稱為Belady現(xiàn)象),即:當(dāng)分配給進(jìn)程的物理頁(yè)面數(shù)增加時(shí),缺頁(yè)次數(shù)反而增加2023/7/29第四章存儲(chǔ)管理練習(xí):程序?qū)θ表?yè)的影響程序編制方法1:forj:=1to128fori:=1to128A[i,j]:=0;程序編制方法2:fori:=1to128forj:=1to128A[i,j]:=0;內(nèi)存分配一頁(yè),初始時(shí)矩陣數(shù)據(jù)均不在內(nèi)存;頁(yè)面大小為128個(gè)整數(shù);矩陣A128X128按行存放。這兩個(gè)程序執(zhí)行時(shí)分別會(huì)產(chǎn)生多少次缺頁(yè)中斷?2023/7/29第四章存儲(chǔ)管理解程序編制方法1:forj:=1to128fori:=1to128A[i,j]:=0;程序編制方法2:fori:=1to128forj:=1to128A[i,j]:=0;128*1281282023/7/29第四章存儲(chǔ)管理

在虛存中,頁(yè)面在內(nèi)存與外存之間頻繁調(diào)度,以至于調(diào)度頁(yè)面所需時(shí)間比進(jìn)程實(shí)際運(yùn)行的時(shí)間還多,此時(shí)系統(tǒng)效率急劇下降,甚至導(dǎo)致系統(tǒng)崩潰。這種現(xiàn)象稱為顛簸或抖動(dòng)原因:頁(yè)面淘汰算法不合理分配給進(jìn)程的物理頁(yè)面數(shù)太少顛簸(抖動(dòng))2023/7/29第四章存儲(chǔ)管理解決基本思想:根據(jù)程序局部性原理,一般進(jìn)程在一段時(shí)間內(nèi)總是集中訪問(wèn)一些頁(yè)面,這些頁(yè)面稱為活躍頁(yè)面,如果分配給一個(gè)進(jìn)程的物理頁(yè)面數(shù)太少了,使該進(jìn)程所需的活躍頁(yè)面不能全部裝入內(nèi)存,則進(jìn)程在運(yùn)行過(guò)程中將頻繁發(fā)生中斷如果能為進(jìn)程提供與活躍頁(yè)面數(shù)相等的物理頁(yè)面數(shù),則可減少缺頁(yè)中斷次數(shù)對(duì)于給定的訪問(wèn)序列選取定長(zhǎng)的區(qū)間,稱為工作集窗口,落在工作集窗口中的頁(yè)面集合稱為工作集2023/7/29第四章存儲(chǔ)管理例如工作集某段時(shí)間內(nèi)進(jìn)程使用過(guò)的頁(yè)面的集合。N=105554777511623415341555343433312323444控制缺頁(yè)率范圍Ws(t1)=1,4,5,7}t1Ws(t1)={3,4,5}t22023/7/29第四章存儲(chǔ)管理1、基本機(jī)制2、分段共享3、分段保護(hù)

4.8虛擬段式存儲(chǔ)管理2023/7/29第四章存儲(chǔ)管理1、段表內(nèi)容

增加:存取方式:標(biāo)識(shí)段的存取屬性是只執(zhí)行、只讀或允許讀/寫(xiě)。訪問(wèn)字段A:記錄該段被訪問(wèn)的頻繁程度。修改位M:表示該段進(jìn)入內(nèi)存后,是否已被修改過(guò)。存在位:指示是否已調(diào)入內(nèi)存。增補(bǔ)位:指示本段在運(yùn)行過(guò)程中,是否進(jìn)行過(guò)動(dòng)態(tài)增長(zhǎng)。外存始址:指示本段在外存中的起始地址,即起始盤(pán)塊號(hào)?;緳C(jī)制2023/7/29第四章存儲(chǔ)管理2、缺段中斷處理檢查內(nèi)存中是否有足夠的空閑空間①若有,則裝入該段,修改有關(guān)數(shù)據(jù)結(jié)構(gòu),中斷返回②若沒(méi)有,內(nèi)存中空閑區(qū)的總和是否滿足要求?是,采用緊縮技術(shù),轉(zhuǎn)①;否,淘汰一(些)段,轉(zhuǎn)①

P139圖4-313、地址變換

P140圖4-32基本機(jī)制2023/7/29第四章存儲(chǔ)管理2023/7/29第四章存儲(chǔ)管理2、分段共享與保護(hù)共享段表:在系統(tǒng)中配置一張共享段表,所有共享段都在共享段表中占有一表項(xiàng),表項(xiàng)中記錄了共享段的段號(hào)和段長(zhǎng)、內(nèi)存始址、存在位等信息,并記錄了共享此分段的每個(gè)進(jìn)程的情況。

P140圖4-332023/7/29第四章存儲(chǔ)管理(1)共享進(jìn)程計(jì)數(shù)count整型變量,記錄共享該分段的進(jìn)程數(shù)。共享段只有當(dāng)所有共享該段的進(jìn)程全都不再需要它時(shí),才由系統(tǒng)回收該段所占內(nèi)存區(qū)。(2

溫馨提示

  • 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)論