linux中記憶體使用,swap,cache,buffer的含義
首先介紹一下linux中記憶體是如何使用的。[@more@]當有應用需要讀寫磁碟資料時,由系統把相關資料從磁碟讀取到記憶體,如果實體記憶體不夠,則把記憶體中的部分資料匯入到磁碟,從而把磁碟的部分空間當作虛擬記憶體來使用,也稱為Swap。如果給所有應用分配足夠記憶體後,實體記憶體還有剩餘,linux會盡量再利用這些空閒記憶體,以提高整體I/O效率,其方法是把這部分剩餘記憶體再劃分為cache及buffer兩部分加以利用。
從磁碟讀取到記憶體的資料在被相關應用程式讀取後,如果有剩餘記憶體,則這部分資料會存入cache,以備第2次讀取時,避免重新讀取磁碟。當一個應用程式在記憶體中修改過資料後,因為寫入磁碟速度相對較低,在有空閒記憶體的情況下,這些資料先存入buffer,在以後某個時間再寫入磁碟,從而應用程式可以繼續後面的操作,而不必等待這些資料寫入磁碟的操作完成。
如果在某個時刻,系統需要更多的記憶體,則會把cache部分擦除,並把buffer中的內容寫入磁碟,從而把這兩部分記憶體釋放給系統使用,這樣再次讀取cache中的內容時,就需要重新從磁碟讀取了。
透過以上分析可以得知,空閒實體記憶體不多,不一定表示系統執行狀態很差,因為記憶體的cache及buffer部分可以隨時被重用,在某種意義上,這兩部分記憶體也可以看作詩額外的空閒記憶體。swap如果被頻繁呼叫,bi,bo長時間不為0,則才是記憶體資源是否緊張的依據。
從磁碟讀取到記憶體的資料在被相關應用程式讀取後,如果有剩餘記憶體,則這部分資料會存入cache,以備第2次讀取時,避免重新讀取磁碟。當一個應用程式在記憶體中修改過資料後,因為寫入磁碟速度相對較低,在有空閒記憶體的情況下,這些資料先存入buffer,在以後某個時間再寫入磁碟,從而應用程式可以繼續後面的操作,而不必等待這些資料寫入磁碟的操作完成。
如果在某個時刻,系統需要更多的記憶體,則會把cache部分擦除,並把buffer中的內容寫入磁碟,從而把這兩部分記憶體釋放給系統使用,這樣再次讀取cache中的內容時,就需要重新從磁碟讀取了。
透過以上分析可以得知,空閒實體記憶體不多,不一定表示系統執行狀態很差,因為記憶體的cache及buffer部分可以隨時被重用,在某種意義上,這兩部分記憶體也可以看作詩額外的空閒記憶體。swap如果被頻繁呼叫,bi,bo長時間不為0,則才是記憶體資源是否緊張的依據。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8109090/viewspace-1028436/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 記憶體中,cache與buffer的含義記憶體
- Linux記憶體、Swap、Cache、BufferLinux記憶體
- Linux記憶體管理Swap和Buffer Cache機制Linux記憶體
- Oracle中Buffer Cache記憶體結構Oracle記憶體
- Buffer Cache的記憶體結構記憶體
- Linux記憶體管理機制中buffer和cache的區別Linux記憶體
- linux記憶體的真正含義Linux記憶體
- Linux作業系統中記憶體buffer和cache的區別Linux作業系統記憶體
- Linux作業系統中記憶體buffer和cache的區別(轉載)Linux作業系統記憶體
- 手動釋放Linux上的Swap、Buffer和CacheLinux
- 在 Linux 上如何清除記憶體的 Cache、Buffer 和交換空間Linux記憶體
- Linux如何手動釋放Swap、Buffer和CacheLinux
- Oracle10g data buffer cache的記憶體結構Oracle記憶體
- buffer cache 記憶體管理物理結構純乾貨記憶體
- 17_buffer_cache記憶體組織結構剖析記憶體
- Linux 記憶體中的 Cache 真的能被回收麼?Linux記憶體
- Linux釋放cache記憶體Linux記憶體
- buffer cache實驗1-記憶體結構圖解記憶體圖解
- 調整緩衝區快取記憶體(Buffer Cache)的效能(轉)快取記憶體
- 調整緩衝區快取記憶體(Buffer Cache)的效能(1)快取記憶體
- 調整緩衝區快取記憶體(Buffer Cache)的效能(2)快取記憶體
- 調整緩衝區快取記憶體(Buffer Cache)的效能(3)快取記憶體
- 解析Linux中的記憶體使用Linux記憶體
- linux下的快取機制及清理buffer/cache/swap的方法梳理Linux快取
- 效能測試必備知識(11)- 怎麼理解記憶體中的Buffer和Cache?記憶體
- 檢視swap記憶體記憶體
- linux系統中的Cache和BufferLinux
- linux積累——swap虛擬記憶體建立Linux記憶體
- Linux下的快取機制free及清理buffer/cache/swap的方法梳理Linux快取
- Linux下清理記憶體和Cache方法Linux記憶體
- Linux下如何釋放cache記憶體Linux記憶體
- Linux系統釋放cache記憶體Linux記憶體
- Linux 記憶體管理:Kmem_cache_initLinux記憶體
- 如何釋放linux cache佔用的記憶體Linux記憶體
- Linux free中buffer與cache區別Linux
- linux cache and buffer【轉】Linux
- 教你如何進行 linux swap 交換記憶體擴容Linux記憶體
- Linux Buffer/Cache 的區別Linux