Windows Vista/7을 사용할 때 NT 가비지 수집 API를 호출하여 일부 메모리를 확보할 수 있는 memclear 또는 memclean이라는 도구가 있었던 것을 기억합니다. 아마도 캐시도 지워졌을 것입니다. Ubuntu를 사용할 때 시스템 할당 메모리가 잠시 후 몇 GB에 머물고 이미지 편집과 같은 메모리 집약적인 작업을 수행할 때 추가 GB가 교환될 때까지 꽤 오랜 시간을 기다려야 합니다.
커널 GC와 같은 것이 실제로 사용되지 않은 메모리를 강제로 해제하도록 하는 방법이 있습니까? (시작할 때 메모리 소모량이 1G 미만입니다.)
답변1
귀하가 게시한 내용을 보면 Linux에서 메모리가 어떻게 작동하는지 이해하지 못하는 것 같습니다.
나는 독서를 추천한다
- http://www.linuxnix.com/find-ram-size-in-linuxunix/
- http://www.itworld.com/article/2722141/it-management/making-sense-of-memory-usage-on-linux.html
- http://www.linuxatemyram.com/
이 사이트의 요점은 당신이 생각하는 것보다 더 많은 "여유" 메모리를 가지고 있다는 것입니다.
답변2
가상 머신이라면 이렇게 할 수 있습니다
echo 1 > /proc/sys/vm/drop_caches
예를 들어 메모리가 많은 vmware(즉, vmware-tools 또는 open-vmware-tools가 설치된 경우)에서는 캐시에 사용된 현재 메모리를 하이퍼바이저에 반환할 수 있습니다.
다른 사람들이 말했듯이 이것은 매우 특정한 조건에서만 유용합니다.