关于内存的一些基础知识
1、free:Display amount of free and used memory in the system.
free顯示的數(shù)值來(lái)自/proc/meminfo(默認(rèn)單位是KB)。各個(gè)項(xiàng)的含義分別是:
1)Mem這一行,shared:已廢棄;buffers:Buffer Cache內(nèi)存;cached:Page Cache內(nèi)存。
2)-/+ buffers/cache這一行:
used=(Mem一行的)used - buffers - cached。此為應(yīng)用程序使用內(nèi)存數(shù)。
free=(Mem一行的)free + buffers + cached。此為應(yīng)用程序可用內(nèi)存數(shù)。
這里區(qū)分Mem行和-/+ buffers/cache行的free列,是因?yàn)閘inux內(nèi)核會(huì)將空閑內(nèi)存用到buffers/cached以提高數(shù)據(jù)訪問(wèn)性能,當(dāng)應(yīng)用程序需要內(nèi)存時(shí),buffers/cached的內(nèi)存是可以被利用的,在這種意義上,應(yīng)用程序的可用內(nèi)存是(Mem:)free + buffers + cached。used列也是同樣的道理。
3)Swap(交換分區(qū)),即虛擬內(nèi)存。
?
2、虛擬內(nèi)存。使用虛擬內(nèi)存的幾個(gè)目的:
1)進(jìn)程間隔離。進(jìn)程以虛擬地址的形式訪問(wèn)自己的內(nèi)存空間及其數(shù)據(jù)。除非是共享內(nèi)存,否則各個(gè)進(jìn)程互不干涉。
2)硬件抽象。內(nèi)核能夠改變一個(gè)虛擬地址映射到的物理地址。另外,在物理內(nèi)存緊張時(shí),內(nèi)核會(huì)把長(zhǎng)時(shí)間不用的內(nèi)存空間的數(shù)據(jù)swap到磁盤。
3)
?
?
?
?
參考鏈接:
https://techtalk.intersec.com/2013/07/memory-part-1-memory-types/
?
?
待了解:linux內(nèi)核2.6.14及以上版本支持的/proc/進(jìn)程ID/smaps文件、/proc/sys/vm/drop_caches、Private內(nèi)存、Virtual內(nèi)存、Share內(nèi)存等。
?
?
不斷學(xué)習(xí)中。。。
轉(zhuǎn)載于:https://www.cnblogs.com/hanerfan/p/4165834.html
總結(jié)
以上是生活随笔為你收集整理的关于内存的一些基础知识的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: booth算法实现乘法器
- 下一篇: ABAP中创建动态内表的三种方法(转载)