實體記憶體與虛擬記憶體區別

2022-11-24 11:10:23 字數 1606 閱讀 7133

組裝電腦,記憶體是大家比較關注的電腦硬體,如今記憶體的**與容量都比較大,記憶體目前2g也僅100元左右,記憶體知識方面我們常聽說的“虛擬記憶體”和 “實體記憶體”是不能混為一談的。下面我們主要從以下方面對電腦實體記憶體與虛擬記憶體之間的關係。

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

虛擬記憶體是為了滿足系統對超出實體記憶體容量的需求時在外存(如硬碟)上開闢的儲存空間。由於虛擬記憶體其實是放在外存上,因而與實體記憶體相比讀寫速度比較慢。那麼虛擬記憶體有什麼作用呢?

我們知道, 32位cpu,有32根地址線,那麼它的定址空間就是4gb。也就是說,如果沒有其它的限制,我們的主機板上最大可以安裝4gb的實體記憶體。但是一般的機器是不會裝那麼多實體記憶體,而有時軟體應用時所需記憶體確大大超過了實體記憶體,這怎麼辦?

總不能不用那些程式了吧。os就提出了一個虛擬記憶體的概念。就是程序、使用者、不必考慮實際上實體記憶體的限制,而直接對 4gb的程序空間進行定址。

如果所定址的資料實際上不在實體記憶體中,那就從“虛擬記憶體”中來獲取。一般情況下,虛擬記憶體的大小,各個os也進行了限制(比如linux的swap分割槽的大小,win下也可以調整虛擬記憶體檔案的大小和位置)。所以,我們程式所能使用的儲存空間大小就是:

實體記憶體+虛擬記憶體。

在計算機內部每個有效資訊,必須具有3個基本屬性:內容、指向和行為,這三個屬性要通過三個匯流排實現:資料匯流排、地址匯流排、控制匯流排。

他們好像一封信件的內容、地址和信件的狀態,比如一封信到你家門口,郵遞員會大喊一聲:“信來了”。

在計算機內部資料在資料匯流排上傳遞的,每條傳輸線我們稱之為1位,各個傳輸線按序排列,他們之間是並行關係,地址匯流排也是一樣的,資料匯流排決定每次傳輸資料的大小,地址匯流排決定了cpu所能訪問的最大記憶體空間的大小,控制匯流排反映了資料的狀態和傳輸方式,它是地址匯流排的擴充套件和補充。所謂匯流排(bus),是指計算機裝置和裝置之間傳輸資訊的公共資料通道。匯流排是連線計算機硬體系統內多種裝置的通訊線路,它的一個重要特徵是由匯流排上的所有裝置共享,可以將計算機系統內的多種裝置連線到匯流排上。

如果是某兩個裝置或裝置之間專用的訊號連線,就不能稱之為匯流排。微機中的匯流排分為資料匯流排、地址匯流排和控制匯流排3類。不同型號的cpu晶片,其資料匯流排、地址匯流排和控制匯流排的條數可能不同。

資料匯流排db用來傳送資料資訊,是雙向的。cpu既可通過db 從記憶體或輸入裝置讀入資料,又可通過db將內部資料送至記憶體或輸出裝置。db的寬度決定了cpu和計算機其他裝置之間每次交換資料的位數。

地址匯流排ab用於傳送cpu發出的地址資訊,是單向的。傳送地址資訊的目的是指明與cpu交換資訊的記憶體單元或i/o裝置。儲存器是按地址訪問的,所以每個儲存單元都有一個固定地址,要訪問1mb儲存器中的任一單元,需要給出1m個地址,即需要20位地址(220=1m)。

因此,地址匯流排的寬度決定了cpu的最大定址能力。控制匯流排cb用來傳送控制訊號、時序訊號和狀態資訊等。其中有的是cpu向記憶體或外部裝置發出的資訊,有的是記憶體或外部裝置向cpu發出的資訊。

顯然,cb中的每一條線的資訊傳送方向是一定的、單向的,但作為一個整體則

是雙向的。所以,在各種結構框圖中,凡涉及到控制匯流排cb,均是以雙向線表示。匯流排的效能直接影響到整機系統的效能,而且任何系統的研製和外圍模組的開發都必須依從所採用的匯流排規範。

匯流排技術隨著微機結構的改進而不斷髮展與完善。