虛擬內(nèi)存工作原理
時(shí)間:2023-03-03 20:39:01 | 來(lái)源:營(yíng)銷百科
時(shí)間:2023-03-03 20:39:01 來(lái)源:營(yíng)銷百科
虛擬內(nèi)存工作原理:
[4]虛擬存儲(chǔ)器是由硬件和操作系統(tǒng)自動(dòng)實(shí)現(xiàn)存儲(chǔ)信息調(diào)度和管理的。它的工作過(guò)程包括6個(gè)步驟:
①中央處理器訪問(wèn)主存的邏輯地址分解成組號(hào)a和組內(nèi)地址b,并對(duì)組號(hào)a進(jìn)行地址變換,即將邏輯組號(hào)a作為索引,查地址變換表,以確定該組信息是否存放在主存內(nèi)。
②如該組號(hào)已在主存內(nèi),則轉(zhuǎn)而執(zhí)行④;如果該組號(hào)不在主存內(nèi),則檢查主存中是否有空閑區(qū),如果沒(méi)有,便將某個(gè)暫時(shí)不用的組調(diào)出送往輔存,以便將這組信息調(diào)入主存。
③從輔存讀出所要的組,并送到主存空閑區(qū),然后將那個(gè)空閑的物理組號(hào)a和邏輯組號(hào)a登錄在地址變換表中。
④從地址變換表讀出與邏輯組號(hào)a對(duì)應(yīng)的物理組號(hào)a。
⑤從物理組號(hào)a和組內(nèi)字節(jié)地址b得到物理地址。
⑥根據(jù)物理地址從主存中存取必要的信息。
調(diào)度方式有分頁(yè)式、段式、段頁(yè)式3種。頁(yè)式調(diào)度是將邏輯和物理地址空間都分成固定大小的頁(yè)。主存按頁(yè)順序編號(hào),而每個(gè)獨(dú)立編址的程序空間有自己的頁(yè)號(hào)順序,通過(guò)調(diào)度輔存中程序的各頁(yè)可以離散裝入主存中不同的頁(yè)面位置,并可據(jù)表一一對(duì)應(yīng)檢索。頁(yè)式調(diào)度的優(yōu)點(diǎn)是頁(yè)內(nèi)零頭小,頁(yè)表對(duì)程序員來(lái)說(shuō)是透明的,地址變換快,調(diào)入操作簡(jiǎn)單;缺點(diǎn)是各頁(yè)不是程序的獨(dú)立模塊,不便于實(shí)現(xiàn)程序和數(shù)據(jù)的保護(hù)。段式調(diào)度是按程序的邏輯結(jié)構(gòu)劃分地址空間,段的長(zhǎng)度是隨意的,并且允許伸長(zhǎng),它的優(yōu)點(diǎn)是消除了內(nèi)存零頭,易于實(shí)現(xiàn)存儲(chǔ)保護(hù),便于程序動(dòng)態(tài)裝配;缺點(diǎn)是調(diào)入操作復(fù)雜。將這兩種方法結(jié)合起來(lái)便構(gòu)成段頁(yè)式調(diào)度。在段頁(yè)式調(diào)度中把物理空間分成頁(yè),程序按模塊分段,每個(gè)段再分成與物理空間頁(yè)同樣小的頁(yè)面。段頁(yè)式調(diào)度綜合了段式和頁(yè)式的優(yōu)點(diǎn)。其缺點(diǎn)是增加了硬件成本,軟件也較復(fù)雜。大型通用計(jì)算機(jī)系統(tǒng)多數(shù)采用段頁(yè)式調(diào)度。