日韩欧美国产极速不卡一区,国产手机视频在线观看尤物,国产亚洲欧美日韩蜜芽一区,亚洲精品国产免费,亚洲二区三区无码中文,A大片亚洲AV无码一区二区三区,日韩国语国产无码123

您好,歡迎來到維庫電子市�(chǎng)�(wǎng) 登錄 | 免費(fèi)注冊(cè)

虛擬存儲(chǔ)�
閱讀�21692�(shí)間:2011-04-11 11:50:28

  所謂虛�存儲(chǔ)�(Virtual Memory),就是采用一定的方法將一定的外存容量模擬��(nèi)�,同�(shí)�(duì)程序�(jìn)出內(nèi)存的方式�(jìn)行管理,從而得到一�(gè)比實(shí)際內(nèi)存容量大得多的內(nèi)存空�,使得程序的�(yùn)行不受內(nèi)存大小的限制�虛擬存儲(chǔ)區(qū)的容量與物理主存大小無關(guān),而受限于�(jì)算機(jī)的地址�(jié)�(gòu)和可用磁盤容��

工作過程

  虛擬存儲(chǔ)器是由硬件和操作系統(tǒng)自動(dòng)�(shí)�(xiàn)存儲(chǔ)信息�(diào)度和管理�。它的工作過程包�6�(gè)步驟�

 ?、僦醒胩幚砥髟L問主存的邏輯地址分解成組�(hào)a和組�(nèi)地址b,并�(duì)組號(hào)a�(jìn)行地址變換,即將邏輯組�(hào)a作為索引,查地址變換�,以確定該組信息是否存放在主存內(nèi)�

 ?、谌缭摻M�(hào)已在主存�(nèi),則�(zhuǎn)而執(zhí)行④;如果該組�(hào)不在主存�(nèi),則檢查主存中是否有空閑區(qū),如果沒有,便將某�(gè)暫時(shí)不用的組�(diào)出送往輔存,以便將這組信息�(diào)入主存�

 ?、蹚妮o存讀出所要的組,并送到主存空閑區(qū),然后將那�(gè)空閑的物理組�(hào)a和邏輯組�(hào)a登錄在地址變換表中�

 ?、軓牡刂纷儞Q表讀出與邏輯組號(hào)a�(duì)�(yīng)的物理組�(hào)a�

  ⑤從物理組號(hào)a和組�(nèi)字節(jié)地址b得到物理地址�

  ⑥根�(jù)物理地址從主存中存取必要的信��

�(diào)度方�

  �(diào)度方式有分頁�、段式、段頁式3��

  1、頁式調(diào)�

  頁式�(diào)度是將邏輯和物理地址空間都分成固定大小的�。主存按頁順序編�(hào),而每�(gè)�(dú)立編址的程序空間有自己的頁�(hào)順序,通過�(diào)度輔存中程序的各頁可以離散裝入主存中不同的頁面位�,并可據(jù)表一一�(duì)�(yīng)檢索。頁式調(diào)度的�(yōu)�(diǎn)是頁�(nèi)零頭�,頁表對(duì)程序員來說是透明�,地址變換�,調(diào)入操作簡(jiǎn)�;缺�(diǎn)是各頁不是程序的�(dú)立模塊,不便于實(shí)�(xiàn)程序和數(shù)�(jù)的保�(hù)�

  2、段式調(diào)�

  段式�(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ù)��

  3、段頁式�(diào)�

  將這兩種方法結(jié)合起來便�(gòu)成段頁式�(diào)�。在段頁式調(diào)度中把物理空間分成頁,程序按模塊分段,每�(gè)段再分成與物理空間頁同樣小的頁面。段頁式�(diào)度綜合了段式和頁式的�(yōu)�(diǎn)。其缺點(diǎn)是增加了硬件成本,軟件也較復(fù)雜。大型通用�(jì)算機(jī)系統(tǒng)多數(shù)采用段頁式調(diào)��

和Cache的異同點(diǎn)

  虛擬存儲(chǔ)器和主存Cache 存儲(chǔ)器是兩�(gè)不同存儲(chǔ)層次的存�(chǔ)體系。在概念上兩者有不少相同之處:但由主� - 輔存組成的虛擬存�(chǔ)器和主存Cache 存儲(chǔ)器亦有很多不同之處:

  ●Cache 存儲(chǔ)器采用與CPU速度匹配的快速存�(chǔ)元件彌補(bǔ)了主存和CPU之間的速度差距,而虛擬存�(chǔ)器雖然限度地減少了慢速輔存對(duì)CPU的影�,但它的主要功能是用來彌�(bǔ)主存和輔存之間的容量差距,具有提供大容量和程序編址方便的優(yōu)�(diǎn)�

  ●兩�(gè)存儲(chǔ)體系均以信息塊作為存�(chǔ)層次之間基本信息的傳送單�,Cache存儲(chǔ)器每次傳送的信息塊是定長(zhǎng)�,只有幾十字節(jié),而虛擬存�(chǔ)器信息塊劃分方案很多,有�、段等等,長(zhǎng)度均在幾百~幾百K 字節(jié)左右�

  ●CPU訪問快速Cache存儲(chǔ)器的速度比訪問慢速主存快5 ~ 10�。虛擬存�(chǔ)器中主存的速度要比輔存縮短100 ~ 1000 倍以��

  ●主存Cache 存儲(chǔ)體系中CPU與Cache和主存都建立了直接訪問的通道。一旦不命中�(shí),CPU 就直接訪問主存并同時(shí)向Cache�(diào)度信息塊,從而減少了CPU等待的時(shí)�。而輔助存�(chǔ)器與CPU之間沒有直接通路,一旦在主存不命中時(shí),只能從輔存�(diào)塊到主存。因?yàn)檩o存的速度相對(duì)CPU的差距太大,�(diào)度需要毫秒級(jí)�(shí)間,因此,CPU一般改換執(zhí)行另一�(gè)程序,等到調(diào)度完成后才返回原程序繼續(xù)工作�

  ●Cache 存儲(chǔ)器存取信息的過程、地址變換和替換策略全部用硬件�(shí)�(xiàn),對(duì)程序員均是透明�。而主�- 輔存層次的虛擬存�(chǔ)器基本上是由操作系統(tǒng)的存�(chǔ)管理軟件并輔助一些硬件來�(jìn)行信息塊的劃分和主存 - 輔存之間的調(diào)�,所以對(duì)�(shè)�(jì)存儲(chǔ)管理軟件的系�(tǒng)程序員來說,它是不透明�,而對(duì)廣大用戶,因?yàn)樘摂M存儲(chǔ)路提供了龐大的邏輯空間可以任意使�,所以對(duì)�(yīng)用程序員是透明��

地址變換算法

  虛擬存儲(chǔ)器地址變換基本上有3種形虛擬存儲(chǔ)器工作過程式:全�(lián)想變�、直接變換和組聯(lián)想變�。任何邏輯空間頁面能夠變換到物理空間任何頁面位置的方式稱為全�(lián)想變�。每�(gè)邏輯空間頁面只能變換到物理空間一�(gè)特定頁面的方式稱為直接變換。組�(lián)想變換是指各組之間是直接變換,而組�(nèi)各頁間則是全�(lián)想變換。替換規(guī)則用來確定替換主存中哪一部分,以便騰空部分主�,存放來自輔存要�(diào)入的那部分內(nèi)容。常見的替換算法�4��

  ①隨�(jī)算法:用軟件或硬件隨�(jī)�(shù)�(chǎn)生器確定替換的頁��

  ②先�(jìn)先出:先�(diào)入主存的頁面先替��

  ③近期最少使用算法:替換最�(zhǎng)�(shí)間不用的頁面�

  ④算法:替換最�(zhǎng)�(shí)間以后才使用的頁�。這是理想化的算法,只能作為衡量其他各種算法優(yōu)劣的�(biāo)�(zhǔn)�

  虛擬存儲(chǔ)器的效率是系�(tǒng)性能�(píng)�(jià)的重要內(nèi)�,它與主存容�、頁面大�、命中率,程序局部性和替換算法等因素有�(guān)�

種類

  一、頁式虛擬存�(chǔ)�

  在頁式虛擬存�(chǔ)系統(tǒng)�,將程序按統(tǒng)一的大小劃分成多�(gè)�,同�(shí)也將虛擬存儲(chǔ)器劃分為同樣大小的頁,其中虛擬空間的頁稱為虛頁(邏輯頁),而主存空間的頁稱為實(shí)頁(物理頁),并�(duì)這些頁按地址從低到高的順序編�(hào)�

  在編程時(shí),程序的虛地址由高位字段的虛頁�(hào)和低位字段的頁內(nèi)地址兩部分組�,虛頁號(hào)�(biāo)�(shí)頁。虛地址到實(shí)地址之間的變換是由頁表來�(shí)�(xiàn)�。頁表是一張存放在主存中的虛頁�(hào)和實(shí)頁號(hào)的對(duì)照表,記錄著程序的虛頁調(diào)入主存時(shí)被安排在主存中的位置。若�(jì)算機(jī)采用多道程序工作方式,則可為每�(gè)用戶作業(yè)建立一�(gè)頁表,硬件中�(shè)置一�(gè)頁表基址寄存�,存放當(dāng)前所�(yùn)行程序的頁表的起始地址�

  頁表中的每一行記錄了與某�(gè)虛頁�(duì)�(yīng)的若干信�,包括虛頁號(hào)、裝入位和實(shí)頁號(hào)�。頁表基址寄存器和虛頁�(hào)拼接成頁表索引地址。根�(jù)這�(gè)索引地址可讀到一�(gè)頁表信息字,然后檢測(cè)頁表信息字中裝入位的狀�(tài)。若裝入位為1,表示該頁面已在主存�,將�(duì)�(yīng)的實(shí)頁號(hào)與虛地址中的頁內(nèi)地址相拼接就得到了完整的�(shí)地址;若裝入位為0,表示該頁面不在主存�,于是要啟動(dòng)I/O系統(tǒng),把該頁從輔存中�(diào)入主存后再供CPU使用,若主存已滿,還需要使用替換算法替換頁。如圖所示給出了頁式虛擬存儲(chǔ)器的�-�(shí)地址的變換過��

頁式虛擬存儲(chǔ)器的虛-實(shí)地址變換

  頁式虛擬存儲(chǔ)器雖然能�(shí)�(xiàn)虛擬存儲(chǔ),但它還存在一些不��

 ?�?)由于采用定�(zhǎng)的頁,雖然建立頁表方�,頁的調(diào)入也容易�(shí)�(xiàn)。但由于程序不可能正好是頁面的整倍數(shù),那么一頁的零頭將無法利用而造成空間浪費(fèi)�

  �2)由于頁不是邏輯上獨(dú)立的�(shí)�,這給程序的處�、保�(hù)和共享等帶來了麻��

  �、段式虛擬存�(chǔ)�

  在段式虛擬存�(chǔ)器系�(tǒng)�,將程序按其邏輯�(jié)�(gòu)劃分為段,各�(gè)段的�(zhǎng)度因程序而異。段式虛擬存�(chǔ)器借助于段表來�(shí)�(xiàn)虛地址與實(shí)地址的轉(zhuǎn)�。段表中每一行記錄了某�(gè)段對(duì)�(yīng)的若干信息,包括段號(hào)、裝入位、段起點(diǎn)和段�(zhǎng)�。裝入位�1,表示該段已�(diào)入主�;裝入位�0,則表示該段不在主存�。段表其�(shí)本身也是一�(gè)段,可以存放在輔存中,但一般存放在主存��

  在段式虛擬存�(chǔ)器系�(tǒng)中,虛地址由段�(hào)和段�(nèi)地址兩部分組�,如�3-18所示給出了段式虛擬存儲(chǔ)器的�-�(shí)地址的變換過��

  由于段式虛擬存儲(chǔ)器的段具有邏輯獨(dú)立性,因此它易于程序的處理、保�(hù)和共享等操作,但是,�?yàn)槎蔚拈L(zhǎng)度參差不�,給主存空間分配帶來了麻煩,同時(shí)很可能也�(huì)帶來一定的空間浪費(fèi)�

  三、段頁式虛擬存儲(chǔ)�

  段頁式虛擬存�(chǔ)器是�(duì)段式、頁式虛擬存�(chǔ)器的綜合,它先將程序按其邏輯�(jié)�(gòu)分段,再將每段劃分為若干大小相等的頁,同�(shí)將主存空間劃分為同樣大小的塊�

  �?yàn)槎雾撌酱�?chǔ)管理�(duì)邏輯地址�(jìn)行了兩次劃分,次將邏輯地址劃分為若干段,第二次將每�(gè)段劃分為若干�。因此,要對(duì)�(nèi)存正常尋址,不僅要知道將要訪問的地址屬于哪�(gè)�,也要知道該地址屬于該段的哪�(gè)頁。邏輯頁與物理塊一一�(duì)�(yīng),所以需要頁表來記錄各頁�(duì)�(yīng)的塊�(hào),且�?yàn)槊總�(gè)段都分成了很多頁,所以每�(gè)段都需要一�(gè)頁表。同�(shí),作�(yè)分成了很多段,為了統(tǒng)一管理,系�(tǒng)需要知道每�(gè)段的分頁情況,所以又要設(shè)置一�(gè)段表來記錄每�(gè)段所�(duì)�(yīng)的頁��

  作業(yè)將要�(zhí)行其中的某�(gè)語句�(shí),根�(jù)其地址�(jì)算出段號(hào)、頁�(hào)和頁�(nèi)地址。首先根�(jù)段號(hào)查找段表,得到該段的頁表的起始地址,然后查找頁�,得到該頁對(duì)�(yīng)的塊�(hào),根�(jù)塊的大小和頁�(nèi)地址�(jì)算出該語句的�(nèi)存地址�

維庫電子�,電子知�(shí),一查百通!

已收錄詞�161156�(gè)