근본 원인을 진단하는 데 어려움을 겪고있는 매우 이상한 문제가 있습니다.
14GB RAM 이있는 Mac Pro (2008, 8 코어 2.8 GHz, 8800GT)가 있습니다 (이 문제로 인해 최근에 업그레이드되었습니다!).
시스템을 부팅하고 로그인하면 vm_stat / top / Activity Monitor에 kernel_task에 약 150MB가 할당되어 있고 시스템에 약 800MB의 유선 메모리가 할당되어 있음이 표시됩니다.
처음에는 800MB의 응용 프로그램이 실행되지 않은 상태에서 많은 유선 메모리가 할당되는 것처럼 보이지만 더 나빠집니다. (NB : 유선 잠금, 스왑 불가능 메모리)
아주 짧은 시간이 지나고 때로는 터미널을 시작하는 것처럼 간단한 일로 인해 kernel_task가 8-900MB의 RMEM (Real Mem)으로 확장되며 유선 메모리는 1.6GB로 가속됩니다 (모든 추가 메모리 요청은 커널의 유선 RAM).
모든 것을 종료하면 (IE : 실행중인 응용 프로그램 없음, 활동 모니터 또는 터미널을 맨 위에 표시), kernel_task RSIZE 또는 유선 메모리 사용량이 크게 감소하지 않습니다. 반대로 시스템에 작업을로드하면 유선 메모리가 줄어들지 않으며, 스와핑보다 우선적으로 줄어들지 않습니다.
로그 아웃했다가 다시 로그인하면 비트 (450MB kernel_task, 1.28GB 유선)가 줄어들지 만 다시 시작하지는 않습니다.
나는 별난 kext를 실행하지 않고있다. 그리고 kextstat는 거기에 거대한 메모리 할당을 보여주지 않는다. 가장 큰 메모리는 약 4MB의 메모리에서 com.apple.nvidia.nv50hal입니다.
이러한 상황이 발생했을 때 머신은 전반적으로 느리게 느껴집니다. 당연히 엄청난 양의 RAM이 페이징 불가능으로 표시되어 있기 때문입니다.
그래서 몇 가지 질문이 있습니다.
1)이 유선 메모리를 모두 할당 한 것을 진단하는 좋은 방법이 있습니까? 종종 응용 프로그램을 실행하지 않고 kernel_task 크기의 2 배 이상입니다. 실제 메모리 총계는 합산되지 않는 것 같습니다. 어디에나 설명되지 않은 RAM이 많이있는 것 같습니다.
2) 커널이 갑자기 6 배의 메모리를 필요로하는 상황은 무엇입니까?