사용자 프로세스는 사용된 메모리의 대부분을 차지하지 않습니다.

사용자 프로세스는 사용된 메모리의 대부분을 차지하지 않습니다.

최근에 클러스터에 Ubuntu Server 14.04.2 LTS 사본을 설치했습니다. 모든 것이 잘 작동하는 것 같지만 사용 가능한 총 RAM의 상당 부분(약 절반)이 사용되고 있습니다. 즉, 실행하면 free다음과 같은 출력이 표시됩니다(버퍼/캐시 라인이 관련됨).

          total       used       free     shared    buffers     cached
Mem:           251        215         36          0          2         70
-/+ buffers/cache:        141        110
Swap:           22          0         22

두 출력을 모두 확인 ps하고 lsof각 사용자의 총 메모리 사용량을 얻었는데 아무도 RAM의 1% 이상을 사용하지 않았습니다. Linux는 종료 프로세스에서 사용하는 메모리를 즉시 해제하지 않는다는 내용을 읽었지만 그렇게 많은 메모리를 계속 사용하는 것이 가능합니까? 그렇지 않다면 이 메모리를 모두 차지하는 다른 것이 있습니까?

답변1

실제로 메모리 사용량의 상당 부분이 종료된 프로세스에서 사용하는 비활성 메모리에 기인할 수 있다는 사실을 발견했습니다. 2014년 1월 이후 사용 가능한 메모리 양을 확인하는 가장 정확한 방법은 다음을 확인하는 것입니다.사용 가능한 메모리/proc/meminfo에 있습니다. 파일의 비활성 메모리 양도 확인할 수 있습니다.

관련 정보