시스템 모니터의 메모리 사용량 보고서와 무료 메모리 사용량 보고서의 차이점은 무엇입니까?


14

System Monitor 2.28.0을 사용하고 있습니다. 리소스 탭을 보면 메모리와 스왑에 대한 멋진 그래프가 나타납니다. 메모리는 3.8의 약 60 % 2.3GiB입니다. 명령을 자유롭게 입력하면 다음과 같은 결과가 나타납니다.

             total       used       free     shared    buffers     cached
Mem:       3994908    3962396      32512          0     100852    1477032
-/+ buffers/cache:    2384512    1610396
Swap:      8000328      28468    7971860

고양이 / proc / meminfo | grep MemFree주기

MemFree:           34536 kB

몇 분 동안 상황이 저장되었습니다. 스크립트로 많은 프로세스를 시작했으며 스크립트는 사용 가능한 메모리가 줄어들기를 기다리고 있습니다. 프로세스 탭 (또는 맨 위)에 표시된 내용에 따르면 시스템 모니터의 숫자는 프로세스에서 메모리가 무료로보고 한 총 메모리에 가깝습니다.

감사

답변:


15

차이점은 "버퍼"및 "캐시 된"메모리가 "사용 된"수에 포함되는지 여부입니다.

일반적으로 Linux 시스템 메모리는 프로세스와 파일 / 네트워크 캐시 / 버퍼의 두 가지 목적으로 커널에서 사용합니다. 의 출력을 자세히 보면 free이미 표시되어 있습니다.


             total       used       free     shared    buffers     cached
Mem:       3994908    3962396      32512          0     100852    1477032
-/+ buffers/cache:    2384512    1610396
Swap:      8000328      28468    7971860

"buffers"와 "cache"를 추가 한 다음 "used"열에서 그 값을 빼면 "used"(으로 시작하는 줄) 아래에 두 번째 줄 -/+ buffers/cache이 표시됩니다. 약 2.3G (2384512) 시스템 모니터가보고하는 사용중인보고 된 메모리와 일치하는 use (더 많은 프로세스를위한 공간을 확보하기 위해 버퍼가 무시 됨)

grep에 /proc/meminfo대한 첫 줄의 "free"열과 일치합니다 (32512는 34536에 충분히 가깝습니다. 두 명령 출력간에 변경되었을 가능성이 있습니다).


고마워, 나는 왜 시스템이 캐시에 1.5 기가 필요했는지 궁금해하지만 분명하다.
기 illa 코트

1
"필수"보다는 "필요"의 문제입니다. 그 시점에서, 그것은 적어도 하드 드라이브에서 그 정도를 읽었고 그것을 다시 사용해야 할 경우를 대비하여 여분의 메모리에 보관했습니다.
Kees Cook

0

시스템 모니터를 손에 넣었을 때 "리소스"탭에보고 된 메모리 사용량은의 free열과 동일 했습니다 /usr/bin/free.

문제는 사용 가능한 실제 메모리가 조만간 거의 0이라는 것입니다. Linux 캐시는 엄청나게 많아서 RAM을 구입하는 데 소비 한 비용이 효율적으로 사용됩니다. 그리고 이것은 그래프가 지속적으로> 98 %의 메모리 사용량을 보여줄 것이라는 것을 의미했으며, 이는 쓸모가 없었습니다.

그래서 나는 / 우리는 -/+ buffers/cache:줄 처럼하기로 결정했습니다 /usr/bin/free. 이런 식으로 그래프는 의미가 있으며 사용자는 메모리의 물리적 상태 대신 ~ application / userland 메모리 사용량을 볼 수 있습니다.

대부분의 (l) 사용자는 사용 가능한 실제 메모리가 돈과 성능을 낭비한다는 것을 이해하지 못하기 때문에 이것은 약간 오해의 소지가 있습니다. 직장에서도 같은 문제에 직면했습니다. 매주 월요일에 서버가 재부팅되고 다음 24 시간에 모든 서버가 "메모리 가득 참"경고를 트리거합니다. 그래서 나는 시스템 모니터에서와 같이 감시 소프트웨어에서 무료 메모리 계산을 고쳤습니다.

현재 Solaris는 같은 문제가 다음 ZFS 캐시 (ARC)가 같은 도구에 의해보고 된 사용 가능한 메모리에 포함되지 않습니다 vmstat바보 DB의 관리자를 만드는는 "ZFS가 나쁘다"고 불평 :)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.