Solaris 10의 메모리에 대한 질문이 하나 더 있습니다.
상단 I 672 MB의 메모리를 가지고 있음을 보여줍니다 나 :
130 processes: 126 sleeping, 2 zombie, 2 on cpu
CPU states: 95.1% idle, 3.9% user, 1.0% kernel, 0.0% iowait, 0.0% swap
Memory: 16G phys mem, 672M free mem, 2048M total swap, 2023M free swap
의 vmstat 쇼 나에게 같은 :
kthr memory page disk faults cpu
r b w swap free re mf pi po fr de sr rm s0 s1 s2 in sy cs us sy id
0 0 0 564744 687896 3 13 0 0 0 0 0 0 0 0 0 354 667 752 1 1 98
그러나 prstat -a -s 크기를 수행 하면 다음과 같이 나타납니다.
NPROC USERNAME SWAP RSS MEMORY TIME CPU
45 orbixadm 1449M 1592M 9.7% 4:46:53 0.4%
48 root 146M 160M 1.0% 8:09:49 1.2%
3 user1 46M 204M 1.2% 0:00:45 0.0%
9 webservd 46M 14M 0.1% 0:00:00 0.0%
5 ctxsrvr 28M 32M 0.2% 4:54:51 0.0%
11 user2 23M 34M 0.2% 0:00:37 0.2%
4 user3 4840K 11M 0.1% 0:00:01 0.0%
1 smmsp 1456K 4552K 0.0% 0:00:24 0.0%
2 daemon 2128K 6224K 0.0% 0:06:32 0.0%
1 user4 1232K 3608K 0.0% 0:00:00 0.0%
1 nagios 376K 2472K 0.0% 0:15:18 0.0%
보시다시피 RSS 값의 합계는 15GB의 메모리에 도달하지 않으며 SWAP 값을 추가하더라도 마찬가지입니다.
내 질문은 : 내가 어떤 명령을 믿습니까?
top과 vmstat가 좋은 결과를 낳으면 15GB의 메모리는 어디에 있습니까? 그렇지 않다면 왜 저에게 보여 주나요?
편집 : 명령의 결과 : % echo ::memstat | mdb -k
Page Summary Pages MB %Tot
------------ ---------------- ---------------- ----
Kernel 1687138 13180 82%
Anon 137110 1071 7%
Exec and libs 47107 368 2%
Page cache 95277 744 5%
Free (cachelist) 22248 173 1%
Free (freelist) 69592 543 3%
Total 2058472 16081
Physical 2055442 16058
편집 2 :
좋아, 이제 ARC 캐시에 사용 된 메모리를 볼 수 있습니다.
그러나 몇 가지 새로운 테스트를 통해 이제 다음과 같은 결과를 얻었습니다.
2066 MB used
( prstat -Z 및 echo :: memstat | mdb -k 결과)
1193 MB free
( 최고 결과)
8859 MB ARC cache
( kstat zfs :: arcstats : 크기 결과)
12 GB
내 시스템에있는 동안 어느 정도 의 메모리를 제공 16 GB
합니다.
어쩌면 내가 다른 것을 놓친 것일 수도 있지만 다른 곳은 어디에 4 GB
있습니까?
kstat zfs::arcstats:size
질문 에 출력을 추가 하십시오.