가상 메모리 페이징과 세그멘테이션


I. 메모리 단편화 해소 및 가상 주소 관리, 페이징과 세그멘테이션의 개요

항목내용
정의단편화 문제를 해결하기 위해 고정 크기 또는 가변 크기로 분할하여 관리하는 메모리 관리 기법
특징- MMUTLB를 통한 고속 주소 변환
- 매핑 테이블 유지

II. 페이징과 세그멘테이션의 아키텍처 비교

가. 가상 메모리 매핑 아키텍처

[ Paging ]

Page 0 Page 1 Page 2 Frame 0 Frame 1 Frame 2

가상 물리

[ Segmentation ]

Seg 0 Seg 1 Seg 2 Code 10k
<text x="475" y="113">Data</text>
<text x="475" y="125" font-size="10" fill="#6B7280">60k</text>

<text x="475" y="158">Stack</text>
<text x="475" y="170" font-size="10" fill="#6B7280">8k</text>
Seg 1 Seg 0 Seg 2

가상 물리

- 페이징은 페이지 크기와 프레임 크기 동일, 세그멘테이션은 개별 크기 상이 -

  • 페이징은 페이지 크기와 프레임 크기가 동일하며, 세그멘테이션은 개별 단위의 크기가 서로 다름.

나. 페이징과 세그멘테이션 핵심 기술요소 비교

비교 항목페이징 (Paging)세그멘테이션 (Segmentation)
분할 기준고정 크기가변 크기
주소 지정Page Number, OffsetSegment Number, Offset
메모리 보호 / 공유- 페이지 단위 분할
- 의미 단위 보호 및 공유 설정 저하 (↓)
- 논리적 단위 분할
- 보호 및 공유 용이
매핑 테이블PMT (Page Map Table)SMT (Segment Map Table)
오버헤드메모리 낭비 발생 (내부 단편화)할당/해제 알고리즘 복잡 (외부 단편화)
  • 두 방식의 장점을 결합한 세그먼트화된 페이징 기법 활용 가능.

III. 최신 가상 메모리 관리 동향

Paged Segmentation (세그먼트화된 페이징):프로세스를 논리적 단위인 세그먼트로 먼저 분할. 분할된 각 세그먼트를 다시 고정된 크기의 페이지로 분할하여 외부 단편화 방지 및 메모리 보호/공유 효율성 동시 확보.