虛擬內(nèi)存技術(shù)的工作原理
虛擬內(nèi)存技術(shù)的工作原理
虛擬內(nèi)存技術(shù)的工作原理是什么?虛擬內(nèi)存有什么技術(shù)?下面由學(xué)習(xí)啦小編來和大家一起了解吧!
虛擬內(nèi)存技術(shù)介紹
虛擬內(nèi)存別稱虛擬存儲器(Virtual Memory)。電腦中所運(yùn)行的
程序均需經(jīng)由內(nèi)存執(zhí)行,若執(zhí)行的程序占用內(nèi)存很大或很多,則會導(dǎo)致內(nèi)存消耗殆盡。為解決該問題,Windows中運(yùn)用了虛擬內(nèi)存[2] 技術(shù),即勻出一部分硬盤空間來充當(dāng)內(nèi)存使用。當(dāng)內(nèi)存耗盡時(shí),電腦就會自動(dòng)調(diào)用硬盤來充當(dāng)內(nèi)存,以緩解內(nèi)存的緊張。若計(jì)算機(jī)運(yùn)行程序或操作所需的隨機(jī)存儲器(RAM)不足時(shí),則 Windows 會用虛擬存儲器進(jìn)行補(bǔ)償。它將計(jì)算機(jī)的RAM和硬盤上的臨時(shí)空間組合。當(dāng)RAM運(yùn)行速率緩慢時(shí),它便將數(shù)據(jù)從RAM移動(dòng)到稱為“分頁文件”的空間中。將數(shù)據(jù)移入分頁文件可釋放RAM,以便完成工作。 一般而言,計(jì)算機(jī)的RAM容量越大,程序運(yùn)行得越快。若計(jì)算機(jī)的速率由于RAM可用空間匱乏而減緩,則可嘗試通過增加虛擬內(nèi)存來進(jìn)行補(bǔ)償。但是,計(jì)算機(jī)從RAM讀取數(shù)據(jù)的速率要比從硬盤讀取數(shù)據(jù)的速率快,因而擴(kuò)增RAM容量(可加內(nèi)存條)是最佳選擇。虛擬內(nèi)存是Windows 為作為內(nèi)存使用的一部分硬盤空間。虛擬內(nèi)存在硬盤上其實(shí)就是為一個(gè)碩大無比的文件,文件名是PageFile.Sys,通常狀態(tài)下是看不到的。必須關(guān)閉資源管理器對系統(tǒng)文件的保護(hù)功能才能看到這個(gè)文件。虛擬內(nèi)存有時(shí)候也被稱為是“頁面文件”就是從這個(gè)文件的文件名中來的。[2] 內(nèi)存在計(jì)算機(jī)中的作用很大,電腦中所有運(yùn)行的程序都需要經(jīng)過內(nèi)存來執(zhí)行,如果執(zhí)行的程序很大或很多,就會導(dǎo)致內(nèi)存消耗殆盡。為了解決這個(gè)問題,WINDOWS運(yùn)用了虛擬內(nèi)存技術(shù),即拿出一部分硬盤空間來充當(dāng)內(nèi)存使用,這部分空間即稱為虛擬內(nèi)存,虛擬內(nèi)存在硬盤上的存在形式就是 PAGEFILE.SYS這個(gè)頁面文件。
工作原理
虛擬存儲器是由硬件和操作系統(tǒng)自動(dòng)實(shí)現(xiàn)存儲信息調(diào)度和管理的。它的工作過程包括6個(gè)步驟:
?、僦醒胩幚砥髟L問主存的邏輯地址分解成組號a和組內(nèi)地址b,并對組號a進(jìn)行地址變換,即將邏輯組號a作為索引,查地址變換表,以確定該組信息是否存放在主存內(nèi)。
?、谌缭摻M號已在主存內(nèi),則轉(zhuǎn)而執(zhí)行④;如果該組號不在主存內(nèi),則檢查主存中是否有空閑區(qū),如果沒有,便將某個(gè)暫時(shí)不用的組調(diào)出送往輔存,以便將這組信息調(diào)入主存。
?、蹚妮o存讀出所要的組,并送到主存空閑區(qū),然后將那個(gè)空閑的物理組號a和邏輯組號a登錄在地址變換表中。
④從地址變換表讀出與邏輯組號a對應(yīng)的物理組號a。
?、輳奈锢斫M號a和組內(nèi)字節(jié)地址b得到物理地址。
?、薷鶕?jù)物理地址從主存中存取必要的信息。
調(diào)度方式有分頁式、段式、段頁式3種。頁式調(diào)度是將邏輯和物理地址空間都分成固定大小的頁。主存按頁順序編號,而每個(gè)獨(dú)立編址的程序空間有自己的頁號順序,通過調(diào)度輔存中程序的各頁可以離散裝入主存中不同的頁面位置,并可據(jù)表一一對應(yīng)檢索。頁式調(diào)度的優(yōu)點(diǎn)是頁內(nèi)零頭小,頁表對程序員來說是透明的,地址變換快,調(diào)入操作簡單;缺點(diǎn)是各頁不是程序的獨(dú)立模塊,不便于實(shí)現(xiàn)程序和數(shù)據(jù)的保護(hù)。段式調(diào)度是按程序的邏輯結(jié)構(gòu)劃分地址空間,段的長度是隨意的,并且允許伸長,它的優(yōu)點(diǎn)是消除了內(nèi)存零頭,易于實(shí)現(xiàn)存儲保護(hù),便于程序動(dòng)態(tài)裝配;缺點(diǎn)是調(diào)入操作復(fù)雜。將這兩種方法結(jié)合起來便構(gòu)成段頁式調(diào)度。在段頁式調(diào)度中把物理空間分成頁,程序按模塊分段,每個(gè)段再分成與物理空間頁同樣小的頁面。段頁式調(diào)度綜合了段式和頁式的優(yōu)點(diǎn)。其缺點(diǎn)是增加了硬件成本,軟件也較復(fù)雜。大型通用計(jì)算機(jī)系統(tǒng)多數(shù)采用段頁式調(diào)度。
看了虛擬內(nèi)存的人還看了:
2.虛擬內(nèi)存設(shè)置多少合適 電腦虛擬內(nèi)存設(shè)置最佳方案