이것은 32GB 메모리 머신입니다. 아래 top/free 명령은 30.5GB의 메모리가 사용됨을 보여주지만 총 RES는 실제로 30.5GB보다 훨씬 적습니다. 왜?
top - 21:54:46 up 20 days, 1:46, 4 users, load average: 0.59, 0.43, 0.34
Tasks: 238 total, 2 running, 233 sleeping, 0 stopped, 3 zombie
%Cpu(s): 3.8 us, 0.7 sy, 0.1 ni, 94.0 id, 1.5 wa, 0.0 hi, 0.0 si, 0.0 st
GiB Mem: 31.523 total, 30.609 used, 0.913 free, 0.456 buffers
GiB Swap: 4.000 total, 0.134 used, 3.866 free. 22.733 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2600 xxxxxxx 20 0 12.048g 2.002g 0.034g S 0.3 6.4 14:24.92 xxxxxx
1443 xxxxx 20 0 1.302g 0.837g 0.019g S 0.3 2.7 102:19.93 xxxxxx
9782 xxxxxxx 20 0 1.942g 0.573g 0.043g S 17.0 1.8 164:53.02 cinnamon
20730 xxxxx 20 0 0.619g 0.289g 0.055g S 0.3 0.9 102:19.50 xxxxxx
29920 xxx 20 0 0.787g 0.189g 0.020g S 0.3 0.6 60:42.72 xxxxxx
31377 xxxxxxx 20 0 3.390g 0.169g 0.006g S 0.0 0.5 38:45.66 xxxxxx
9497 xxxxxxx 20 0 0.367g 0.168g 0.036g S 1.3 0.5 16:00.60 xxxxxx
1402 root 20 0 1.010g 0.154g 0.024g S 0.3 0.5 54:30.61 xxxxxx
14176 root 39 19 0.306g 0.118g 0.011g S 0.0 0.4 4:32.76 xxxxxx
903 xxxxxxx 20 0 0.383g 0.101g 0.034g S 0.3 0.3 0:43.40 xxxxxx
total used free shared buffers cached
Mem: 32 31 1 0 0 23
-/+ buffers/cache: 8 24
Swap: 3 0 3
다음 ps 명령은 총 RSS(7GB)를 계산하지만 top/free 명령은 사용된 30.5GB를 반환합니다. 왜?
ps -e --format rss | awk 'BEGIN{c=0} {c+=$1} END{print c/1024}'
나의 가장 큰 실수는 이 컴퓨터에 실제로 64GB가 아닌 32GB의 RAM이 있다는 것입니다.