Linux에서 내 메모리는 어디에 있습니까?

Linux에서 내 메모리는 어디에 있습니까?

나는 내 기억을 찾으려고 노력하고 있습니다.

나는 프로그램을 사용한다mema.py 프로그램에서 사용하는 메모리를 기준으로 프로세스의 메모리 사용량(ps aux --sort -rss)을 계산합니다. 22%(3713500kb) 합계(16Gb RAM을 얻습니다)

무료보고서:

             total       used       free     shared    buffers     cached
Mem:      16431416   14773344    1658072     440524     234416    1780688
-/+ buffers/cache:   12758240    3673176
Swap:     43528916          0   43528916

(총 14773344kb 사용) - (1780688 캐시) - (234416 캐시 버퍼) - (3713500 애플리케이션) = 9044740

그렇다면 9Gb는 어디에 있습니까? 그 용도와 용도는 무엇입니까?

debian 8.8 Linux acrhlx 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2 (2017-04-30) x86_64 GNU/Linux

고쳐 쓰다 내 메모리가 ZFS에 의해 소비되고 있으며 버퍼+캐시에 보고되지 않는다는 것을 알았습니다. 버그인지 기능인지 확실하지 않습니다. ZF에 대한 추가 정보

답변1

사용됨은 사용자가 생각하는 의미를 의미하지 않습니다. 사용된 메모리에는 사용 중이지만 사용할 수 있는(즉, 현재 애플리케이션에서 사용하지 않는) 메모리가 포함됩니다. 더 많은 정보를 원하시면 읽어주세요이것.

게다가 나는 이것이 모든 것을 설명한다고 믿지 않습니다 ps aux --sort -rss. 예를 들어 커널( 참조 cat /proc/meminfo|grep Slab)이나 커널 모듈( 두 번째 열 참조 ) 을 볼 수 없습니다 cat /proc/modules. 자세한 내용은 다음을 참조하세요.이 답변존재하다Unix 및 Linux 스택 교환그건 그렇고, 내 생각에는 이 질문이 실제로 속한 곳입니다.

답변2

버퍼+캐시에서 ZFS 모듈이 보고되지 않음

비슷한 문제를 찾는 데 도움이 되도록 메모리 분석 도구를 업데이트했습니다.

오류 없는 메모리

관련 정보