![ps 명령의 메모리(rss)가 top 명령에 표시된 메모리와 다른 이유는 무엇입니까?](https://rvso.com/image/170281/ps%20%EB%AA%85%EB%A0%B9%EC%9D%98%20%EB%A9%94%EB%AA%A8%EB%A6%AC(rss)%EA%B0%80%20top%20%EB%AA%85%EB%A0%B9%EC%97%90%20%ED%91%9C%EC%8B%9C%EB%90%9C%20%EB%A9%94%EB%AA%A8%EB%A6%AC%EC%99%80%20%EB%8B%A4%EB%A5%B8%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
여기 MacOS Catalina에서 프로세스의 메모리 사용량을 확인할 때 ps
명령이 위에 표시된 메모리 사용량과 다른 RSS 값을 표시하는 것을 볼 수 있습니다.
$> ps e -o command,vsize,rss,%mem|grep "myapplication"|head -n 1
myapplication 4594896 51364 0.3
RSS -> 51364
top
PID COMMAND %CPU TIME #TH #WQ #PORT MEM
48106 myapplication 115.7 09:06.12 69/1 1 101 37M+
메모리 -> 3700만
왜 이런 차이가 있습니까?
업데이트:
IntelliJ 프로세스의 또 다른 예:
top -pid 357
PID COMMAND %CPU TIME #TH #WQ #POR MEM PURG CMPRS PGRP PPID STATE BOOSTS %CPU_ME %CPU_OTHRS UID FAULTS COW MSGSENT MSGRECV SYSBSD
357 idea 2.6 03:16:46 112 1 925 4906M 0B 1583M 357 1 sleeping 0[2884] 0.00000 0.00000 281451937 28337096 54627 8404446+ 2733245+ 156093159+
인기 프로그램4906M
ps aux
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
xxxxxxx 357 3.6 14.5 180050484 2430728 ?? S 1:44PM 196:48.70 /Applications/IntelliJ IDEA.app/Contents/MacOS/idea -psn_0_73746
ps는 RSS를 보여줍니다2430728(KB)
답변1
가장 가능성 있는 이유는 ps가 상주 메모리를 표시하는 반면 top은 전체 또는 가상 메모리(예: 교체 및 공유 포함)를 표시하기 때문입니다.
이를 포함하여 많은 질문이 있습니다.https://stackoverflow.com/questions/7880784/what-is-rss-and-vsz-in-linux-memory-management하지만 이것이 바로 여기서 값이 다른 이유입니다.