物理記憶體和虛擬記憶體

2021-10-02 21:21:39 字數 933 閱讀 4049

1.物理記憶體和虛擬記憶體

直接從物理記憶體讀取資料比從硬碟讀寫資料要快得多,因此,我們希望所有的資料的讀寫在記憶體中完成,但是記憶體是有限的,這樣就引出了物理記憶體與虛擬記憶體的概念。

物理記憶體是系統硬體提供的記憶體大小,是真正的記憶體。虛擬記憶體是為了滿足物理記憶體不足而提出的策略,利用磁碟空間虛擬出一塊邏輯記憶體,用作虛擬記憶體的磁碟空間稱為交換空間。

作為物理記憶體的擴充套件,linux未在物理記憶體不足時,使用交換分割槽的虛擬記憶體(核心將暫時不用的記憶體塊資訊寫到交換空間,物理記憶體得到釋放並能用於其他地方,當需要用到原始內容時,這些資訊會被重新從交換空間讀入物理記憶體)。

linux的記憶體管理採取的是分頁訪問機制。為了保證物理記憶體能得到充分利用,核心在適當時候將物理記憶體中不經常使用的資料塊自動交換到虛擬記憶體中,經常使用的資訊保留到物理記憶體中。

2.深入了解linux記憶體執行機制:

首先,linux系統會不時地進行頁面交換操作,以保持盡可能多的空閒物理記憶體。即使並沒什麼事情需要記憶體,linux也會交換出暫時不用的記憶體頁面,可以避免等待交換所需的時間。

linux 進行頁面交換時不是多有的頁面在不用時都交換到虛擬記憶體中。linux核心根據「最近經常使用」演算法,僅僅將一些不經常使用的頁面檔案交換到虛擬記憶體中。有時我們會看到這麼乙個現象:linux物理記憶體還有很多,但是交換空間也使用了很多。這是因為乙個占用很大記憶體的程序執行時,需要耗費很多記憶體資源,因此就會有一些不常用的頁面檔案被交換到虛擬記憶體中。但後來這個占用很多記憶體資源的程序結束並釋放了很多記憶體,剛才被交換出去的頁面檔案並不會自動交換進物理記憶體(除非有這個必要),那麼此刻系統物理記憶體就會空閒很多,同時交換空間也在被使用,就出現了剛才的現象。

最後,交換空間的頁面在使用時會首先被交換到物理記憶體中。如果此時沒有足夠的物理記憶體來容納這些頁面,它們又會被馬上交換出去,如此一來,虛擬記憶體中可能沒有足夠空間來儲存這些交換頁面,最終導致linux出現假死機、服務異常等問題。

物理記憶體和虛擬記憶體

1.物理記憶體和虛擬記憶體 直接從物理記憶體讀取資料比從硬碟讀寫資料要快得多,因此,我們希望所有的資料的讀寫在記憶體中完成,但是記憶體是有限的,這樣就引出了物理記憶體與虛擬記憶體的概念。物理記憶體是系統硬體提供的記憶體大小,是真正的記憶體。虛擬記憶體是為了滿足物理記憶體不足而提出的策略,利用磁碟空間...

虛擬記憶體和物理記憶體

虛擬記憶體 物理記憶體 物理記憶體,在應用中,物理上,真實的插在板子上的記憶體是多大就是多大了。而在cpu中的概念,物理記憶體就是cpu的位址線可以直接進行定址的記憶體空間大小。比如8086只有20根位址線,那麼它的定址空間就是1mb,我們就說8086能支援1mb的物理記憶體,及時我們安裝了128m...

物理記憶體和虛擬記憶體

1 概念 物理記憶體 真實的硬體裝置 記憶體條 虛擬記憶體 利用磁碟空間虛擬出的一塊邏輯記憶體,用作虛擬記憶體的磁碟空間被稱為交換空間 swap space 為了滿足物理記憶體的不足而提出的策略 2.使用的順序 linux會在物理記憶體不足時,使用交換分割槽的虛擬記憶體。核心會將暫時不用的記憶體塊資...