Linux 內(nèi)存監(jiān)控虛擬內(nèi)存實(shí)現(xiàn)機(jī)制及容量設(shè)定
在地址映射中要通過TLB(翻譯后援存儲(chǔ)器)來尋找物理頁;交換機(jī)制中也要用到交換緩存,并且把物理頁內(nèi)容交換到交換文檔中后也要修改頁表來映射文檔地址。
(1)Linux 內(nèi)存監(jiān)控虛擬內(nèi)存實(shí)現(xiàn)機(jī)制
Linux 內(nèi)存監(jiān)控Linux虛擬內(nèi)存的實(shí)現(xiàn)需要六種機(jī)制的支持:地址映射機(jī)制、內(nèi)存分配回收機(jī)制、緩存和刷新機(jī)制、請求頁機(jī)制、交換機(jī)制、內(nèi)存共享機(jī)制。
首先內(nèi)存管理程式通過映射機(jī)制把用戶程式的邏輯地址映射到物理地址,在用戶程式運(yùn)行時(shí)假如發(fā)現(xiàn)程式中要用的虛地址沒有對(duì)應(yīng)的物理內(nèi)存時(shí),就發(fā)出了請求頁需要;假如有空閑的內(nèi)存可供分配,就請求分配內(nèi)存(于是用到了內(nèi)存的分配和回收),并把正在使用的物理頁記錄在緩存中(使用了緩存機(jī)制)。 假如沒有足夠的內(nèi)存可供分配,那么就調(diào)用交換機(jī)制,騰出一部分內(nèi)存。另外在地址映射中要通過TLB(翻譯后援存儲(chǔ)器)來尋找物理頁;交換機(jī)制中也要用到交換緩存,并且把物理頁內(nèi)容交換到交換文檔中后也要修改頁表來映射文檔地址。
(2)Linux 內(nèi)存監(jiān)控虛擬內(nèi)存容量設(shè)定
也許有人告訴您,應(yīng)該分配2倍于物理內(nèi)存的虛擬內(nèi)存,但這是個(gè)不固定的規(guī)律。假如您的物理保存比較小,能夠這樣設(shè)定。假如您有1G物理內(nèi)存或更多的話,能夠縮小一下虛擬內(nèi)存。Linux會(huì)把大量的內(nèi)存用做Cache的,但在資源緊張時(shí)回收回.。您只要看到swap為0或很小就能夠放心了,因?yàn)閮?nèi)存放著不用才是***的浪費(fèi)。
【編輯推薦】
























