本文是 Unix/Linux 系統管理自動化系列中的一篇文章,主要介紹了內存管理所涉及的命令,並通過編寫自動化腳本實現了內存管理與監控的自動化內存是 Unix/Linux 內核所管理的最為重要的資源之一,內存管理是系統管理中非常重要也是最復雜的的部分。這次,我們來講解如何使用AIX svmon。
系統管理員需要掌握內存管理的基本工作原理以及使用合適的工具與策略監控內存的工作狀態。 本文將闡述 AIX 系統中所涉及到的內存監控的方法,並對其中涉及到的內核內存管理的原理做初步的說明。
AIX操作系統數據庫服務器上,文件型內存不需要太多的空間。 通常我們會遇到的 paging space 占用率過高就有可能設置了過高的文件型內存。
進程空間內存監控命令。
AIX svmon
AIX svmon 命令提供了一個更加深入的內存使用情況的分析,比起 vmstat 和 ps 命令,它帶有更多的信息量。-i 選項能夠間隔性的捕獲一個內存狀態的快照。
svmon 命令可以生成 9 種不同的報告結果,這裡我們選用比較有代表性的帶 -G 標志來監視內存全局使用情況。
清單 5.AIX svmon 命令顯示當前內存全局使用狀況
- # svmon -G
- size inuse free pin virtual
- memory 262144 208128 54016 72891 163644
- pg space 131072 1912
- work pers clnt other
- pin 62497 0 0 10394
- in use 163644 0 44484
- PageSize PoolSize inuse pgsp pin virtual
- s 4 KB - 128032 1912 24667 83548
- m 64 KB - 5006 0 3014 5006
size 標示了實際內存的頁面數
inuse 正在使用中的頁面數
free 空閒的頁面數
pin 物理內存中固定的頁面數
virtual 虛擬內存使用的頁面數
這裡AIX svmon 只是提供了更加精確的結果,具體的內存調試優化可以參照以上 vmo, ps 和 svmstat 命令中所涉及到的方法。