Process Memory(RSS)

Android 9 이상을 실행하는 기기에 배포된 앱의 경우 프로세스 메모리(RSS) 섹션에는 앱에서 사용 중인 실제 메모리의 양이 표시됩니다.

그림 1. 프로파일러에서 실제 메모리 보기

프로세스 메모리 (RSS) 섹션의 행은 다음을 의미합니다.

  • Total: 프로세스에서 사용 중인 실제 메모리의 총량입니다. Unix 기반 시스템에서는 이를 'Resident Set Size'라고 하며 익명 할당과 파일 매핑, 공유 메모리 할당에 사용된 모든 메모리의 조합입니다.

    Windows 개발자의 경우 Resident Set Size는 작업 집합 크기와 유사합니다.

  • 할당됨: 이 카운터는 프로세스의 일반 메모리 할당에 현재 사용되는 실제 메모리의 양을 추적합니다. 이는 익명(특정 파일이 지원하지 않음) 및 비공개(공유되지 않음)인 할당을 의미합니다. 대부분의 애플리케이션에서는 힙 할당 (malloc 또는 new 사용)과 스택 메모리로 구성됩니다. 실제 메모리에서 교체되면 이러한 할당은 시스템 스왑 파일에 작성됩니다.

  • 파일 매핑: 이 카운터는 프로세스가 파일 매핑에 사용하는 실제 메모리의 양을 추적합니다. 즉, 메모리 관리자가 파일에서 메모리 영역으로 매핑한 메모리입니다.

  • 공유: 이 카운터는 이 프로세스와 시스템의 다른 프로세스 간에 메모리를 공유하는 데 사용 중인 실제 메모리의 양을 추적합니다.