簡要概括Linux內存管理的方式
經(jīng)過長時間的學習Linux內存管理,在此拿出來和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。比如Linux能夠使用文件系統(tǒng)中的一個常規(guī)文件或一個獨立的分區(qū)作為交換空間。交換分區(qū)要快一些,但是很容易改變交換文件的大小(也就無需重分區(qū)整個硬盤,并且可以從臨時分區(qū)中安裝任何東西)。
Linux內存管理
“Minnet、jag、har、tappat、mitt、minne、jag、svensk、eller、finne,、kommer、inte、”(Bosse、terberg)
本章描述了Linux內存管理的特性,也即,虛擬內存和磁盤緩沖。敘述了系統(tǒng)管理員需要考慮到的內存管理的目的、工作原理以及其他一些事情。
關于什么是虛擬內存?下文將給予詳細的講解:
Linux支持虛擬內存(virtual、memory),虛擬內存是指使用磁盤當作RAM的擴展,這樣可用的內存的大小就相應地增大了。內核會將暫時不用的內存塊的內容寫到硬盤上,這樣一來,這塊內存就可用于其它目的。當需要用到原始的內容時,它們被重新讀入內存。這些操作對用戶來說是完全透明的;Linux下運行的程序只是看到有大量的內存可供使用而并沒有注意到時不時它們的一部分是駐留在硬盤上的。當然,讀寫硬盤要比直接使用真實內存慢得多(要慢數(shù)千倍),所以程序就不會象一直在內存中運行的那樣快。用作虛擬內存的硬盤部分被稱為交換空間(swap、space)。
Linux能夠使用文件系統(tǒng)中的一個常規(guī)文件或一個獨立的分區(qū)作為交換空間。交換分區(qū)要快一些,但是很容易改變交換文件的大小(也就無需重分區(qū)整個硬盤,并且可以從臨時分區(qū)中安裝任何東西)。當你知道你需要多大的交換空間時,你應該使用交換分區(qū),但是如果你不能確定的話,你可以首先使用一個交換文件,然后使用一陣子系統(tǒng),你就可以感覺到要有多大的交換空間,此時,當你能夠確信它的大小時就創(chuàng)建一個交換分區(qū)。
你應該知道,Linux允許同時使用幾個交換分區(qū)以及/或者交換文件。這意味著如果你只是偶爾地另外需要一個交換空間時,你可以在當時設置一個額外的交換文件,而不是一直分配這個交換空間。
操作系統(tǒng)術語注釋:計算機科學常常將交換[swapping](將整個進程寫到交換空間)與頁面調度[paging](在某個時刻,僅僅固定大小的幾千字節(jié)寫到交換空間內)加以區(qū)別。頁面調度通常更有效,這也是Linux的做法,但是傳統(tǒng)的Linux術語卻指的是交換。
以上講解的是Linux內存管理;
【編輯推薦】