認(rèn)識(shí)電腦系統(tǒng)課件_第1頁
認(rèn)識(shí)電腦系統(tǒng)課件_第2頁
認(rèn)識(shí)電腦系統(tǒng)課件_第3頁
認(rèn)識(shí)電腦系統(tǒng)課件_第4頁
認(rèn)識(shí)電腦系統(tǒng)課件_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第9章虛擬記憶體

(virtualmemory)第9章虛擬記憶體

(virtualmemory)基本觀念生意好的餐廳有所謂的翻桌率,也就是在同一段進(jìn)餐時(shí)間,同一桌可能可以陸續(xù)讓好幾組客人依序用餐。所以即使餐廳只有10張桌面,可能一個(gè)中午出了30桌的菜量電腦的記憶體空間也有限,為了服務(wù)更多的處理元,作業(yè)系統(tǒng)也採用類似的概念,而且有過之而無不及,處理元執(zhí)行時(shí)需要的資料放置到記憶體中,即使有的放不下,也暫時(shí)放到磁碟上,等需要用到時(shí)再想辦法移到記憶體中基本觀念生意好的餐廳有所謂的翻桌率,也就是在同一段進(jìn)餐時(shí)間,隨選分頁(demandpaging)隨選分頁的方法可以讓一個(gè)程式在沒有完全載入到主記憶體中的情況下,依然能夠繼續(xù)執(zhí)行如此一來,程式占有空間的大小就比較沒有限制了這種技術(shù)稱為虛擬記憶體(virtualmemory),分頁本身在系統(tǒng)的安排下,能夠在磁碟與主記憶體中移動(dòng),讓使用者覺得執(zhí)行的程式一直都位於主記憶體中隨選分頁(demandpaging)隨選分頁的方法可以讓一分頁與分段虛擬記憶體技術(shù)比較分頁與分段虛擬記憶體技術(shù)比較虛擬記憶體技術(shù)的優(yōu)點(diǎn)執(zhí)行程式的大小可以不受限於主記憶體空間的大小。記憶體的使用會(huì)更有效率,因?yàn)槌淌綍?huì)用到的部分才會(huì)占用記憶體的空間??梢赃M(jìn)行更廣泛的多工(multiprogramming)。避免externalfragmentation的問題,降低internalfragmentation的程度。容許程式碼與資料的共用。讓程式片段的動(dòng)態(tài)連結(jié)(dynamiclinking)更容易。虛擬記憶體技術(shù)的優(yōu)點(diǎn)執(zhí)行程式的大小可以不受限於主記憶體空間的虛擬記憶體的缺點(diǎn)處理器硬體成本增加處理分頁中斷(pageinterrupts)的額外成本為了避免頻繁置換(thrashing)而增加的軟體複雜性虛擬記憶體的缺點(diǎn)處理器硬體成本增加虛擬記憶體運(yùn)作的方式虛擬記憶體運(yùn)作的方式虛擬記憶體的機(jī)制虛擬記憶體可以讓沒有完全存在於主記憶體中的處理元能夠執(zhí)行換句話說,處理元的位址空間(addressspace)並沒有完全載入到主記憶體中做法是把處理元的位址空間分割,如此一來,需要用到的位址空間分割(addressspacepartition)必須載入,還用不上的就可以先存在secondarymemory裡頭虛擬記憶體的機(jī)制虛擬記憶體可以讓沒有完全存在於主記憶體中的處虛擬記憶體擴(kuò)充主記憶體空間的原理虛擬記憶體擴(kuò)充主記憶體空間的原理實(shí)體記憶體的抽象化虛擬記憶體管理員在secondarymemory建立的虛擬位址空間(virtualaddressspace)可以看成是實(shí)體記憶體的抽象化當(dāng)系統(tǒng)運(yùn)作時(shí),虛擬記憶體管理員會(huì)自動(dòng)控制主記憶體與虛擬記憶體之間的對應(yīng),促成資料方塊在主記憶體與次記憶體間自動(dòng)的移轉(zhuǎn)在虛擬位址空間存在的情況下,對於使用者來說,其實(shí)虛擬位址空間跟實(shí)體位址空間並沒有差別,只是在程式用到虛擬位址空間的時(shí)候,作業(yè)系統(tǒng)要把資料搬到實(shí)體記憶體中實(shí)體記憶體的抽象化虛擬記憶體管理員在secondaryme位址對應(yīng)的過程位址對應(yīng)的過程分段式的虛擬記憶體機(jī)制(segmentation)分段式的虛擬記憶體和relocationregister與limitregister的方法近似,由程式設(shè)計(jì)者本身決定程式的分割方式,產(chǎn)生大小不一的分段(segment)例如UNIXCcompiler訂的text,data與stacksegment分割之後,記憶體空間的位置就可以用

:<分段號(hào)碼,平移量(offset)>

來決定分段號(hào)碼指定記憶體的某個(gè)區(qū)塊,平移量指所在之處與分段起點(diǎn)之間的距離分段本身就成為虛擬記憶體管理員在主記憶體與次記憶體之間移動(dòng)資料的單位分段式的虛擬記憶體機(jī)制(segmentation)分段式的虛分段式的記憶體配置方式分段式的記憶體配置方式SMT的內(nèi)容與用途SMT的內(nèi)容與用途分段法的實(shí)作分段法的實(shí)作分頁的記憶體配置(pagedmemoryallocation)分頁的記憶體配置方式將CPU所要處理的job分成大小一樣的分頁(page)有的作業(yè)系統(tǒng)以記憶體區(qū)塊的大小為分頁的大小,而且也剛好跟磁碟上區(qū)塊的大小一樣分頁的記憶體配置(pagedmemoryallocati分頁的記憶體配置(pagedmemoryallocation)方式分頁的記憶體配置(pagedmemoryallocati分頁的虛擬記憶體機(jī)制(paging)分頁的虛擬記憶體機(jī)制(paging)使用單一成份的位址,虛擬記憶體空間分成線性的(linear)虛擬位址程式設(shè)計(jì)者不需要知道虛擬記憶體空間如何運(yùn)作,完全由虛擬記憶體管理程式負(fù)責(zé)把固定大小的分頁(page)依照需求在主記憶體與次記憶體之間移動(dòng)在實(shí)作上,分頁機(jī)制比較簡單,使用者對於技術(shù)上的細(xì)節(jié)不必了解每個(gè)處理元的虛擬位址空間分成邏輯上的分頁,外部空間散佈的問題(externalfragmentation)比較小分頁的虛擬記憶體機(jī)制(paging)分頁的虛擬記憶體機(jī)制(p常見的分頁配置演算法靜態(tài)配置演算法(staticallocation)動(dòng)態(tài)配置演算法(dynamicallocation)常見的分頁配置演算法靜態(tài)配置演算法(staticalloc靜態(tài)分頁配置演算法(staticpagingalgorithm)取用政策(fetchpolicy):決定分頁何時(shí)載入主記憶體。替換政策

(replacementpolicy):決定系統(tǒng)資源不足時(shí)那一個(gè)分頁應(yīng)卸載。置放政策(placementpolicy):決定取用的分頁應(yīng)放在何處。靜態(tài)分頁配置演算法(staticpagingalgori取用政策(fetchpolicy)取用政策決定分頁那時(shí)候會(huì)被載入到主記憶體中分頁演算法通常不會(huì)預(yù)先知道分頁引用的順序,所以要做到預(yù)先擷取(prefetch)是不太可能的,prefetch是指在分頁被引用之前就先載入到主記憶體中大多數(shù)的演算法都採用所謂的依需求取用分頁(demandpaging)的方法,也就是當(dāng)程式引用到分頁時(shí)才將分頁載入到主記憶體中取用政策(fetchpolicy)取用政策決定分頁那時(shí)候會(huì)需求分頁法(demandpaging)依需求分頁(demandpaging)的觀念是指只將程式的一部分載入到記憶體中原本在job開始執(zhí)行一直到結(jié)束,整個(gè)job都要放在記憶體中假如程式引用到?jīng)]有載入的分頁,再將分頁載入到pageframe需求分頁法(demandpaging)依需求分頁(demaBelady的靜態(tài)配置演算法Belady的靜態(tài)配置演算法LRU的靜態(tài)配置演算法LRU的靜態(tài)配置演算法LFU的靜態(tài)配置演算法LFU的靜態(tài)配置演算法FIFO的靜態(tài)配置演算法FIFO的靜態(tài)配置演算法只使用了3個(gè)pageframe的FIFO靜態(tài)配置演算法只使用了3個(gè)pageframe的FIFO靜態(tài)配置演算法動(dòng)態(tài)分頁配置演算法(dynamicpagingalgorithm)動(dòng)態(tài)配置演算法會(huì)考量處理元執(zhí)行過程中需求的改變,修正記憶體的配置情況處理元引用記憶體位址的區(qū)域性關(guān)聯(lián)(locality)在此就可以派上用場工作集演算法(workingsetalgorithm)就是著名的動(dòng)態(tài)配置演算法動(dòng)態(tài)分頁配置演算法(dynamicpagingalgor工作集(workingset)一個(gè)job的工作集(workingset)是記憶體中job使用的pages的集合當(dāng)使用者開始執(zhí)行程式以後,開始會(huì)有pages載入到記憶體中,經(jīng)過一陣子以後,大多數(shù)的程式對於pages的存取都會(huì)進(jìn)入穩(wěn)定的狀態(tài),很少有pagefault發(fā)生,代表job會(huì)用到的pages都已經(jīng)在主記憶體中,這些pages就形成了job的workingset程式的執(zhí)行有可能在進(jìn)入另一個(gè)階段以後又開始產(chǎn)生pagefaults,因?yàn)橛玫降膚orkingset改變了工作集(workingset)一個(gè)job的工作集(work工作集中兩個(gè)重要的觀念為什麼不乾脆把job的workingset中所有的pages一次全部都載入到記憶體中呢

?首先,workingset會(huì)隨locality而改變,所以除非是把所有用道pages都載入,否則無法全部一次都載入。分時(shí)系統(tǒng)中會(huì)有jobswapping的現(xiàn)象,重新載入記憶體的job一開始都會(huì)產(chǎn)生很多pagefaults,影響系統(tǒng)的效能。工作集中兩個(gè)重要的觀念為什麼不乾脆把job的workingWindowsize為3的工作集動(dòng)態(tài)配置演算法Windowsize為3的工作

溫馨提示

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

評論

0/150

提交評論