萬盛學電腦網

 萬盛學電腦網 >> Windows xp教程 >> 淺析電腦中的虛擬內存與虛擬存儲

淺析電腦中的虛擬內存與虛擬存儲

  虛擬內存的作用是什麼?到底設置多少為好?虛擬內存與虛擬存儲有何區別?本文就來對它進行詳細的介紹。以下所有步驟均以Windows XP操作系統為例。

  1.桌面版windows上經常要設置虛擬內存,尤其是實際內存很小時;設置虛擬內存後,計算機可以運行比實際內存更大的軟件;

  這個虛擬內存技術,其實主要就是換頁技術;將外部存儲空間的一部分用來存放內存中暫時不用的東西,就好像它是內存一樣,要的時候再把它調進內存,也就是所謂的虛擬了;桌面版windows可以設置這塊虛擬內存的位置(位於哪個盤下),及大小,它對應的有一個文件pagefile.sys;

  2.虛擬存儲技術(虛擬內存技術,這個虛擬內存完全不同於上面所說的虛擬內存),就是程序員在編寫程序時使用的地址都從0開始,到運行程序時再進行重定位;常將這個從0開始的地址空間,叫虛擬存儲空間(有人也叫虛擬內存空間);這樣做有一個極大的好處:程序員不用管它寫的程序最後會被放到內存的什麼地方執行。

  這個虛擬操作系統的支持,當然更虛擬CPU硬件的支持,像8051單片機好像就不支持這個,像S3C2410這樣的arm芯片就支持;這個硬件就是MMU(內存管理單元)

  3.不要提到虛擬內存或虛擬存儲,就以為計算機可以運行比程序實際需要的內存大的程序;這種想法肯定是錯誤的。很多的嵌入式系統,比如windows mobile手機它支持2G的虛擬存儲空間,但不支持換頁技術,這就表示它不能運行超過它實際可用內存大小的軟件;因為這裡說的2G只是程序員可用的地址空間,它並不能把當前運行程序的一部分放置到外存上,它必須完全滿足運行的程序需要的內存才能運行這個程序;當然如果windows mobile手機配置了超過2G的內存,它當然可以運行這樣的大程序了。

  實際上它們的英語單詞好像是一樣的。但意思不一樣。一個就是指虛擬出的內存;一個表示一個技術,這個技術需要MMU和操作系統的支持。虛擬內存是Windows XP為作為內存使用的一部分硬盤空間。即便物理內存很大,虛擬內存也是必不可少的。虛擬存儲簡單地說就是使主機操作系統看到的存儲與實際物理存儲分開。

copyright © 萬盛學電腦網 all rights reserved