Solaris

Solaris 上的程序監控

  • October 3, 2013
$ prstat -t
NPROC USERNAME  SWAP   RSS MEMORY      TIME  CPU
164 oracle   5446M 5445M   8.3%  13:47:50 1.6%
52 root      576M  728M   1.1%  42:29:50 1.0%
1 noaccess  300M  273M   0.4%   0:20:54 0.0%
1 smmsp    2192K 9912K   0.0%   0:00:06 0.0%
1 nagios    584K 4256K   0.0%   0:01:54 0.0%
6 daemon   8360K   11M   0.0%   0:12:39 0.0%

Total: 225 processes, 839 lwps, load averages: 1.68, 1.58, 1.46

以上是已安裝prstat的 Solaris Box 上的命令輸出。Oracle 11g然而,Solaris 機器上的 RAM 是64GBoracle 程序似乎正在交換5.5 GB,這正常嗎?將不勝感激有關獲得更細粒度資訊的任何建議!

prstat將 SWAP 定義為:

SWAP

    The sum of swap reservations of the associated processes
    for  each  user,  project,  task,  or  zone. This counts
    shared memory only once for each user, project, task, or
    zone.  Swap  is  reserved when anonymous memory is allo-
    cated or files are mapped private. The value of swap  is
    expressed  in kilobytes (K), megabytes (M), or gigabytes
    (G).

(來自Solaris 10 上的 prstat(1M),參見Open Solaris prstat

基本上這意味著該值包括目前尚未訪問但映射到程序地址空間的記憶體。這樣的記憶體將來可能會被使用,因此可能會被換出(即真正寫入交換分區)。因此,在創建初始映射時,Solaris prstat 將它們計為 SWAP。

這並不意味著此記憶體量實際上已寫入 S​​WAP 分區或一定要寫入該分區。

這些交換保留、匿名記憶體和映射文件是Solaris虛擬記憶體系統的一部分。

另請注意,您正在使用-t- 因此範例中顯示的值不是 oracle 程序之一,而是在 user 下執行的所有程序的總值oracle

使用某些 Solaris 埠可top提供更多有用的資訊,即 SIZE(或 VMEM)和 RES(或 RSS)值。VMEM 包括所有虛擬記憶體頁面,RSS 是常駐大小。這樣關係 VMEM >= RSS 為真(對於 prstat RSS 可能 > SWAP,即 RSS 不包含在 SWAP 中)。

如果您關心實際的交換活動,您可以使用類似vmstat.

引用自:https://unix.stackexchange.com/questions/93224