Solaris에서의 프로세스 모니터링

Solaris에서의 프로세스 모니터링
$ 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. 정상입니까? 더 자세한 정보를 얻는 방법에 대한 권장 사항을 알려주시면 감사하겠습니다!

답변1

prstatSWAP을 다음과 같이 정의합니다.

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), 참조.오픈 솔라리스 prstat)

기본적으로 이는 값에 현재 아직 액세스되지 않았지만 프로세스의 주소 공간에 매핑된 메모리가 포함되어 있음을 의미합니다. 이러한 메모리는 나중에 사용될 수 있으므로 스왑 아웃될 수 있습니다(즉, 실제로 스왑 파티션에 기록됨). 따라서 초기 매핑을 생성할 때 Solaris prstat는 이를 SWAP으로 계산합니다.

이는 이 메모리 양이 실제로 SWAP 파티션에 기록되거나 반드시 기록된다는 의미는 아닙니다.

이러한 스왑 예약, 익명 메모리 및 매핑된 파일은가상 메모리솔라리스 시스템.

또한 귀하가 사용하고 있다는 점에 유의하십시오 -t. 따라서 귀하의 예에 표시된 값은 oracle 프로세스 중 하나가 아니라 user 에서 실행되는 모든 프로세스의 집계 값입니다 oracle.

일부 Solaris 포트를 사용하면 topSIZE(또는 VMEM) 및 RES(또는 RSS) 값과 같은 보다 유용한 정보를 얻을 수 있습니다. VMEM에는 모든 가상 메모리 페이지가 포함되며 RSS는 상주 크기입니다. 이를 통해 VMEM >= RSS 관계는 참입니다(prstat RSS의 경우 > SWAP일 수 있음, 즉 RSS는 SWAP에 포함되지 않음).

실제 스왑 활동에 관심이 있는 경우 다음과 같은 것을 사용할 수 있습니다 vmstat.

관련 정보