查看CentOS系統的swap虛擬內存

有一天發現虛擬內存swap被佔滿了,我想查看一下是哪個進程佔用的,

先用top ,再按f ,再按p ,然後回車就可以看到了(CentOS7 這個方法不好使) ,

要釋放swap最有效的方法就是重啟該進程


分享一個檢查swap佔用情況的腳本:

查看CentOS系統的swap虛擬內存


查看CentOS系統的swap虛擬內存

原理:

每個進程都會在/proc下面生成一個以進程號為名字的目錄,裡面的各個文件就是其在內存中的映像。其中smaps這個文件,便記載了每個進程每個數據段佔用內存的情況。

Swap: 後面的數字,就是該數據段佔用的swap大小,我們只要把這個文件裡所有出現的swap加起來,就是這個進程所佔用的swap大小了


如下圖是查看某個pid的smaps的內容:


查看CentOS系統的swap虛擬內存


分享到:


相關文章: