연속 메모리 할당

연속 메모리 할당

연속 메모리 할당은 한 프로세스가 물리 메모리의 이어진 구간을 차지하는 방식입니다. 단순하지만 프로세스 크기가 다양하고 생성과 종료가 반복되면 빈 공간이 흩어져 외부 단편화가 커집니다.

01

분할 정책 선택

고정 분할은 관리가 쉽지만 내부 낭비가 크고, 가변 분할은 유연하지만 빈 구멍 관리가 필요합니다.

partition
02

배치 알고리즘을 적용한다

first-fit, best-fit, worst-fit은 빈 공간 목록에서 어떤 구간을 고를지 정합니다.

fit
03

단편화 관찰

총 빈 공간은 충분해도 이어진 구간이 작으면 새 프로세스를 올리지 못합니다.

fragment
04

현대 방식과 비교한다

페이징은 이어진 물리 공간 요구를 없애 연속 할당의 핵심 한계를 줄입니다.

paging
First-fit
처음 맞는 구간을 빠르게 선택 검색 비용은 낮지만 앞쪽에 작은 구멍이 많이 남을 수 있습니다.
speed
Best-fit
가장 딱 맞는 구간 선택 남는 공간을 줄이려 하지만 작은 조각이 많이 생길 수 있습니다.
waste
Compaction
흩어진 빈 공간을 모으기 위해 프로세스를 이동 실행 중 재배치 지원과 큰 복사 비용이 필요합니다.
cost

낭비 종류 · 검색 비용 · 페이징 연결 점검

낭비 종류 분할 안의 빈칸은 내부 단편화, 분할 사이 흩어진 빈칸은 외부 단편화입니다.
검색 비용 빈 공간 목록을 찾는 시간도 메모리 관리 비용에 포함합니다.
페이징 연결 왜 페이지와 프레임으로 쪼개면 이어진 공간 요구가 사라지는지 연결합니다.