實體記憶體和虛擬記憶體有什麼區別 平時說的記憶體是實體記憶體還是虛擬

時間 2021-06-08 09:14:33

1樓:匿名使用者

當實體記憶體不夠的時候 系統會將硬碟的區域劃分一部分出來用於記憶體作用

平時說的記憶體是實體記憶體

實體記憶體越大 所需要的虛擬記憶體就越少 機器執行速度越快

2樓:

實體記憶體是實際存在的

虛擬記憶體是硬碟分出來一部分當成記憶體,不知真正記憶體條

虛擬記憶體沒有物理的快

3樓:匿名使用者

實體記憶體 插主機板上的東西

虛擬記憶體 上網 用電腦時快取的 和記憶體作用一樣 不過是佔用了硬碟空間 而實體記憶體它會在 定時或是關機重起 或關閉程式後 它就自動清理了

4樓:

實體記憶體就是咱們通常值得記憶體條的容量。而虛擬記憶體,是指我們將硬碟空間劃分出來一部分,用於與記憶體同樣的作用。如果實體記憶體佔的多了,會表現出系統反映緩慢等問題。

而虛擬記憶體多了,只會佔用硬碟空間。但可以說,畢竟是虛擬出來的記憶體。所以它的系統速度的作用不大,基本代替不了實體記憶體的作用。

5樓:匿名使用者

簡單一點說,實體記憶體就是你電腦裝的記憶體條,而虛擬記憶體是在你的硬碟上劃分出一塊,當做記憶體使用。 一般機子設定為實際記憶體的1。5倍左右,一般新手都是讓系統自動管理(推薦)

如果硬碟可用磁碟空間少了,且少於設定值時,特別是設定值較低,但系統記憶體不足,相對於實際執行程式所需,那麼,系統執行明顯效率會變得很低下,

6樓:uncle大智

實體記憶體是安裝在主機板上的記憶體。

虛擬記憶體是作業系統在硬碟上建立一個檔案,把實體記憶體中不常用的部分拷貝起來,再把那個部分的實體記憶體清空,方便別的程式寫入。虛擬記憶體的大小是可以自定,但是大小通常在實體記憶體的1到2倍之間,太大的話,虛擬記憶體的效能會下降。

因為虛擬記憶體在硬碟上,所以它的速度是取決於硬碟的存取速度、碎片的多少等。另外,因為它不像實體記憶體一樣,資料與停機後消失,所以虛擬記憶體是可以透過解密方法讀取其中的資料。

7樓:手機使用者

1、應用中的概念。

實體記憶體,在應用中,自然是顧名思義,物理上,真實的插在板子上的記憶體是多大就是多大了。看機器配置的時候,看的就是這個實體記憶體。

虛擬記憶體,這個概念就要稍微瞭解一下cpu了,只是稍微,畢竟我們現在談的是應用中的概念。我們應該知道,對於一般的32位cpu,有32根地址線,那麼它的定址空間就是4gb。也就是說,如果沒有其他的限制,我們的主機板上最大可以安裝4gb的實體記憶體。

哈哈,一般的機器是不會裝那麼多實體記憶體的,大把的銀子啊,價效比可合不上。程式設計師可不管這個,我們對cpu程式設計,不能一臺機器根據你實體記憶體的大小我編一個程式吧?那也太原始社會了吧。

所以程式設計師都是直接使用的4gb的奢侈的程序空間(或許,不應該用奢侈這麼短視的詞。曾幾何時,128m的實體記憶體也是我們不可想象的呢?)。

這怎麼辦?總不能不用那些程式了吧。好吧,這個問題交給os去解決吧。

這樣,os就提出了一個虛擬記憶體的概念。就是程序、使用者、不必考慮實際上實體記憶體的限制,而直接對 4gb的程序空間進行定址。如果所定址的資料實際上不在實體記憶體中,那就從「虛擬記憶體」中來獲取。

這個虛擬記憶體可以是一個專門檔案格式的磁碟分割槽(比如 linux下的swap分割槽),也可以是硬碟上的某個足夠大的檔案(比如win下的那個i386檔案,好像是這個名字)。實體記憶體中長期不用的資料,也可以轉移到虛擬記憶體中。這樣的交換由os來控制,使用者看起來就好像實體記憶體大了一樣。

有了虛擬記憶體的概念,我們就可以自由的使用4gb的程序空間了。但是,前提是你的硬碟由足夠的空間,而且你捨得劃分出(4gb-實體記憶體)大的虛擬記憶體空間來。一般情況下,虛擬記憶體的大小,各個os也進行了限制(比如 linux的swap分割槽的大小,win下也可以調整虛擬記憶體檔案的大小和位置)。

所以,我們程式所能使用的儲存空間大小就是:實體記憶體+虛擬記憶體。

2、cpu中的概念。

實體記憶體,cpu的地址線可以直接進行定址的記憶體空間大小。比如8086只有20根地址線,那它的定址空間就是1mb。我們就說8086能支援1mb的實體記憶體。

即使我們安裝了128m的記憶體條在板子上,我們也只能說8086擁有1mb的實體記憶體空間。同理32位的386以上cpu,就可以支援最大4gb 的實體記憶體空間了。

虛擬記憶體,這便是一個和cpu的定址方式有關的一個概念了。x86體系結構中,為了更好的管理記憶體空間,採用分段的方式來對記憶體進行定址。比如8086就用兩個位元組的段基地址和兩個位元組的偏移地址來定址整個可以定址的記憶體空間,即:

0000:0000方式(具體怎麼計算出實際的地址,參見各種彙編教材)。這樣,對整個1mb的實體記憶體空間定址是沒有問題了。

可是,用這種方式,最大可以定址到10ffef這個地址。這超出了20根地址線的地址的ffef大小的空間,就可以說是8086的虛擬記憶體了,所以可以說8086的虛擬記憶體地址空間可以達到10ffef。具體怎麼使用和看待這段記憶體,還取決於 a20線的選通與否了,這是另外的話題了。

同樣的道理,386以上的cpu,由於在保護模式下使用了gdt和ldt,將段的定義放到了記憶體中,從而可以使用16位的段地址和32位的偏移地址。這樣算來,386以上的cpu的虛擬記憶體地址空間就可以達到64tb了。真是大的驚人,看來,這麼大的地址空間,一時還不能被軟體的發展淘汰 .

3、零碎的叫法。

零碎的叫法常常來自與相對感覺深奧詼澀的虛擬記憶體概念。物理的東西,人們大多不去碰它,畢竟是實實在在存在的。而虛擬記憶體就經常有別冒名頂替的。

「一個程序有4個gb的虛擬記憶體」這樣的說法屢見不鮮,其實,這是混淆了4gb的程序地址空間和虛擬記憶體這兩個概念。也算令一種解釋吧,畢竟那4個gb也是見不著影的,也是虛擬的。

虛擬記憶體:

虛擬記憶體指在硬碟中開闢出的、用於輔助實體記憶體交換資料的那部分空間,在windows中可以指定其大小,也可以讓windows自動調節。

進入「控制面板/系統/高階/效能/設定/高階/虛擬記憶體/更改」,來到虛擬記憶體設定視窗,首先確定你的頁面檔案在哪個驅動器碟符,然後將別的碟符驅動器的頁面檔案全部禁用。建議你把它是設定到其他分割槽上,而不是預設的系統所在的分割槽,這樣可以提高頁面檔案的讀寫速度,有利於系統的快速執行。根據微軟的建議,頁面檔案應設為記憶體容量的1.

5倍,但如果你的記憶體比較大,那它佔用的空間也是很可觀的,所以,建議如果記憶體容量在256mb以下,就設定為1.5 倍,最大值和最小值一樣,如果在512mb以上,設定為記憶體容量的一半完全可行。

交換區:一塊記憶體區域或硬碟區域,用來處理資料交換.

虛擬記憶體有多大

虛擬記憶體是用於當做記憶體來彌補計算機ram空間缺乏的硬碟空間。當實際ram滿時 實際上,在ram滿之前 虛擬記憶體就在硬碟上建立了。雖然在執行速度上硬碟不如記憶體,但在容量上記憶體是無法與硬碟相提並論的。當執行一個程式需要大量資料 佔用大量記憶體時,記憶體就會被 塞滿 並將那些暫時不用的資料放到硬...

關於實體記憶體和虛擬記憶體,什麼是實體記憶體和虛擬記憶體

cdef盤是硬碟,不是記憶體,虛擬記憶體是將硬碟一部分劃出來虛擬為記憶體用,實體記憶體就是你實際記憶體條的大小。實體記憶體不能用光。每個程式可用記憶體空間是4g 32位win就是這麼規定的 作業系統會根據呼叫記憶體的情況把一些暫時沒有用上的換到虛擬記憶體。你可以禁用虛擬記憶體。設定虛擬記憶體大小。電...

請問虛擬記憶體有啥用 謝謝

虛擬記憶體是檔案資料交叉連結的活動檔案。是windows目錄下的一個 win386.swp 檔案,這個檔案會不斷地擴大和自動縮小。就速度方面而言,cpu的l1和l2快取速度最快,記憶體次之,硬碟再次之。但是虛擬記憶體使用的是硬碟的空間,為什麼我們要使用速度最慢的硬碟來做為虛擬記憶體呢?因為電腦中所有...