RAMMap은 시스템의 물리 메모리, 즉 RAM을 어떻게 활용하고 있는지 분석하는 Sysinternals 유틸리티 프로그램이다. 윈도우 운영체제에서 실행되는 프로세스나 메모리에 매핑된 파일 등을 확인할 수 있어, 작업 관리자나 성능 모니터로 포착할 수 없는 작업 집합을 파악하는 데 유용하게 사용될 수 있다.
아래는 RAMMap에서 나열하는 메모리 할당 유형들을 소개한다.
메모리 할당 유형 | 설명 |
---|---|
Process Private | 단일 프로세스가 전용으로 사용하기 위해 할당된 메모리이다. |
Shareable | 다수의 프로세스가 함께 사용할 수 있도록 공유 가능하다고 표식된 페이지이다. |
Mapped File | 가상 주소로 매핑된 파일 내용물 중 RAM을 점유하고 있는 크기이다. 물리 메모리에 로드된 파일들은 File Summary 및 File Detail 탭에서 살펴볼 수 있다. |
Metafile | NTFS 메타데이터를 담는 일종의 시스템 캐시이며, 이는 파일 시스템의 성능 향상에 도모한다. |
Paged Pool | 디스크로 페이징 될 수 있는 커널 모드의 풀 메모리이다. |
Nonpaged Pool | 디스크로 페이징 될 수 없는 커널 모드의 풀 메모리이다. |
Page Table | 프로세스의 가상 주소 공간과 RAM의 실제 주소 간의 매핑 정보를 담는 커널 모드 메모리이다. |
System PTE | 입출력 공간, 커널 스택 등의 시스템 페이지와 RAM의 실제 주소 간에 동적으로 매핑하기 위한 시스템 PTE가 사용하는 메모리이다. |
Session Private | 특정 로그온 세션만이 사용할 수 있도록 할당된 메모리이다. 해당 메모리는 RDS 세션 호스트 서버에서 높게 측정될 것이다. |
AWE | SQL 또는 데이터베이스 프로그램 등에서 사용하는 유형의 메모리이다. |
Large Page | SQL 또는 오라클 프로그램 등에서 사용하는 유형의 메모리이며, (일반적인 4 KB 크기가 아닌) 2 MB로 확장된 페이지이다. |
Driver Locked | 드라이버에 의해 RAM에 고정된 페이지이며, 흔히 하이퍼바이저의 가상 머신에 배정된 물리 메모리 용량을 확보하기 위해 사용된다. |
Kernel Stack | 커널 스레드 스택을 담는 메모리이다. |
Unused | 미사용 중인 메모리이다. |