- 마지막 페이지의 내부 낭비가 작습니다.
- 권한과 공유를 작은 범위로 나눌 수 있습니다.
- 큰 주소 공간에서는 PTE 수와 TLB 압박이 커집니다.
Page size
페이지 크기 영향
페이지와 프레임은 항상 같은 크기입니다. 크기를 키우면 변환 메타데이터는 줄지만, 한 번에 낭비되거나 보호되는 단위도 함께 커집니다.
- 한 TLB 엔트리가 4KB 페이지 512개 분량을 덮습니다.
- 데이터베이스처럼 넓게 순회하는 워크로드에 유리합니다.
- 작은 객체가 섞이면 낭비와 권한 단위가 거칠어집니다.
- 페이지 테이블 계층과 TLB 미스를 크게 줄일 수 있습니다.
- 대용량 캐시, 분석 작업처럼 긴 연속 영역에 맞습니다.
- 할당 실패와 내부 단편화 위험도 가장 큽니다.
작게 잡으면
내부 단편화와 보호 범위는 좋아지지만, 테이블과 TLB 부담이 늘어납니다.
크게 잡으면
변환 비용은 줄지만, 실제로 쓰지 않는 바이트도 큰 단위로 따라옵니다.
현대 OS
기본 4KB 위에 Huge Page를 선택적으로 얹어 워크로드별 균형을 맞춥니다.