
有些人大概必然要問出來個一二三來,荷蘭服務器 英國主機租用,那么請繼承往下看。
Linux的根基原則是沒有資源應該被揮霍.因此焦點會利用盡大概多的RAM,來緩存來自當地和長途的文件系統的信息.系統做讀寫操縱的時候,會將與當前運行的歷程相關的數據只管存儲在RAM里.系統陳訴的緩存是緩沖和頁緩存兩者之和.緩存并不是在歷程竣事的時候被接納(你大概很快會啟動別的一個歷程,需要同樣的數據),而是隨需接納–好比,當你啟動一個需要大量內存的歷程時,Linux焦點會從內存中接納緩存,將獲得的內存分派給新的歷程.
有些區域,好比匿名內存映射(mmps)和共享內存區域,它們被陳訴為緩存,但不是被焦點直接釋放.一般的緩存不映射到歷程的地點空間,僅僅是簡樸的焦點映射,而這些出格的緩存映射到所有掛接到它們上面的歷程.
所以你執行top呼吁看到的
Tasks: 330 total, 3 running, 327 sleeping, 0 stopped, 0 zombie
Cpu(s): 13.4% us, 6.3% sy, 0.0% ni, 79.0% id, 0.7% wa, 0.7% hi, 0.0% s
Mem: 2066800k total, 1962740k used, 104060k free, 50828k buffers
Swap: 2097136k total, 960k used, 2096176k free, 1349532k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6921 my_sql 15 0 131m 20m 5244 S 27 1.0 244:57.46 mysqld
18665 vhost 15 0 24980 10m 3588 S 3 0.5 0:00.34 httpd
19878 vhost 16 0 25800 11m 3584 S 3 0.6 0:00.10 httpd
19900 vhost 15 0 24884 10m 3584 S 1 0.5 0:00.03 httpd
Mem: 2066800k total, 1962740k used,并不是代表你的應用措施已經利用了1.9G的內存,這1.9G是包括了:應用措施內存 + 緩沖 + 緩存的內存的,需要用free呼吁查察.
下面是一個例子(單元是MB):
# free -m
total used free shared buffers cached
Mem: 2018 1927 91 0 45 1293
-/+ buffers/cache: 588 1430
Swap: 2047 0 2047
在這里例子中,應用措施只利用了588MB內存,尚有1430MB空閑內存可以利用.
一些簡樸的計較要領:
物理已用內存 = 實際已用內存 - 緩沖 - 緩存 = 1927M - 45M - 1293M
物理空閑內存 = 總物理內存 - 實際已用內存 + 緩沖 + 緩存
應用措施可用空閑內存 = 總物理內存 - 實際已用內存
應用措施已用內存 = 實際已用內存 - 緩沖 - 緩存