MacOSX의 비활성 메모리 이해 문제


8

MacOSX가 메모리를 관리하는 방법을 이해했다고 생각했지만 최근에는 성능으로 인해 당황했습니다. 상황은 다음과 같습니다.

  1. MacOSX 10.6.7을 실행하는 8GB의 실제 메모리가 장착 된 새로운 Core i7 시스템이 있습니다. Safari, Mail, Xcode, Terminal 등 일부 메모리를 정기적으로 사용하는 몇 가지 앱이 있습니다.
  2. 3 개의 64 비트 프로세스를 병렬로 실행해야하며 각 프로세스는 약 2000M의 실제 메모리를 사용합니다.
  3. 유선 메모리가 1000M 미만으로 유지되지만 (예 : 프로세스에 사용 가능한 7000M 이상), 페이징 활동이 많으면 시작한 세 가지 메모리 집약적 프로세스에서 성능이 매우 떨어집니다.
  4. 보고 된 비활성 메모리가 약 2500M을 유지하고 활성 메모리가 5000M을 초과하지 않기 때문에 사용 가능한 RAM이 부족하지 않습니다.

MacOSX가 왜 페이징에 의존하지 않고 필요한 프로세스에 대해 비활성 메모리를 해제하지 않는지에 대한 단서가 있습니까? 또한 시스템의 메모리 관리에 영향을 줄 수있는 적절한 방법이 있습니까?


답변:


5

내 컴퓨터에서 Mac OS X이 올바른 페이지를 출력하는 데 약간 느리다는 것을 알았습니다.

특히 메모리가 굶주린 일을 할 때마다 종종 도움이되는 몇 가지 응용 프로그램을 종료합니다. Safari는 한동안 실행되어 온 응용 프로그램 목록의 최상위에있는 거대한 메모리 호그입니다. 필자의 경우 이것은 실제 RAM이 충분하지 않은 상태에서 VMWare Fusion을 실행하려고 할 때였습니다.

아마도 이것을 알고 있지만 OS X의 메모리 사용 및 가상 메모리를 설명하는 Apple 문서에 대한 링크는 다음과 같습니다.

http://support.apple.com/kb/ht1342

http://developer.apple.com/library/mac/#documentation/Performance/Conceptual/ManagingMemory/Articles/AboutMemory.html

다음은 제공되는 설명입니다. 비활성 목록에는 현재 실제 메모리에 상주하지만 최근에 액세스하지 않은 페이지가 있습니다. 이것이 의미하는 바를 정확하게 정의하기는 어렵지만 실제 비활성 메모리뿐만 아니라 파일 시스템 캐시도 포함하는 것 같습니다.

비활성 메모리는 대화 형 GUI 기반 OS에서 사용자가 언제든지 실행중인 응용 프로그램으로 전환하고 이러한 상황에서 응답 성을 제공하도록 선택할 수있는 처리하기 어려운 문제 일 수 있습니다. 그러나 그 단점은 당신과 같은 상황에서 OS는 옳은 일이 무엇인지 잘 모릅니다.

purge 명령 을 사용하여 비활성 메모리를 제거 할 수 있습니다 (일부) . CHUD 도구를 설치하여 설치해야하지만 이미 설치되어있을 수 있습니다. purge 명령을 사용하지 않았으므로 YMMV ...

나는 조금 엉망으로 당신의 질문에 대답했을 수도 있고 아닐 수도 있습니다. 이 모든 것을 작성한 후, 나는 이 사이트에서 도움이 될만한 동일한 정보의 다른 질문을 발견했습니다 .


감사! purge명령은 내가 찾던 정확히 것입니다. Apple의 KB에서 지원 기사를 찾았지만 특별히 유용하지는 않았습니다.
Ventzi Zhechev

1

MacOS 비활성 메모리를 해제하지만 실제로 필요한 경우에만 해제합니다. 이 "비활성 메모리"는 실제로 커널이 페이징 아웃 후보라고 생각하는 메모리 일 수 있지만, 아직 비활성 메모리를 참조하지 않고 더 많은 시간이 지날 때까지 결정하지는 않았습니다 (대신 메모리 페이징에 중점을두고 있습니다) 실제로는 곧 다시 사용되지 않을 것입니다). 이 경우 비활성 메모리를 "퍼지"하면 실제로 성능이 저하됩니다 (프로그램이 계속 실행되기 전에 자주 사용하는 페이지를 디스크에서 다시 읽어야하기 때문에).

purge개발자가 응용 프로그램의 시작 조건을 시뮬레이션하는 데 유용합니다 (예 : 부팅 또는 긴 중단 후 응용 프로그램을 처음 실행하는 데 걸리는 시간 확인). 일반 사용자 purge에게는 그다지 유용하지 않으며 실제로 일시적인 성능 저하를 유발합니다.

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