![[3일차] 2025 정보처리산업기사 운영체제 – 주기억 장치 관리와 단편화 (반입전략, 배치전략) 1 정보처리산업기사 운영체제](https://i0.wp.com/jupocket.com/wp-content/uploads/2025/05/image.png?resize=492%2C492&ssl=1)
운영체제는 여러 프로그램이 동시에 실행될 때 제한된 주기억장치(Main Memory) 를 효율적으로 분배해야 한다. 프로세스마다 필요한 메모리의 크기와 시점이 다르기 때문에 운영체제는 언제, 어디에, 어떻게 적재할 것인지를 결정하는 전략을 사용한다.
이번 학습에서는 주기억 장치 관리의 핵심 전략인 반입전략(Fetch Strategy) 과 배치전략(Placement Strategy), 그리고 이 과정에서 발생하는 단편화(Fragmentation) 개념을 정리한다.
정보처리산업기사 1개월 단기 과정 스케줄을 확인하고 싶은분들은 아래글을 이용바랍니다.
1. 기억장치 관리의 기본 원리
프로세스가 실행되기 위해서는 반드시 메모리에 적재(Load) 되어야 한다. 운영체제는 여러 프로세스가 동시에 메모리를 공유할 수 있도록 다음 세 가지 단계를 거쳐 관리한다.
| 구분 | 설명 |
|---|---|
| 반입전략 (Fetch Strategy) | 언제 메모리에 적재할 것인가 |
| 배치전략 (Placement Strategy) | 메모리의 어느 위치에 적재할 것인가 |
| 교체전략 (Replacement Strategy) | 어떤 프로세스를 내보내고 새로 올릴 것인가 |
이번 학습에서는 “반입전략”과 “배치전략”을 중심으로 정리한다.
2. 반입전략 (Fetch Strategy)
1) 개념
프로세스를 언제 주기억장치에 가져올 것인지를 결정하는 전략이다.
운영체제는 반입 시점을 선택함으로써 CPU 효율과 응답속도 사이의 균형을 맞춘다.
2) 종류
| 구분 | 설명 | 특징 |
|---|---|---|
| 요구 반입 (Demand Fetch) | 필요한 시점에 프로세스를 메모리에 적재 | 페이지 부재(Page Fault) 발생 시 반입 |
| 예상 반입 (Anticipatory Fetch) | 앞으로 필요할 것을 미리 예측하여 적재 | 문맥 전환(Context Switch) 시 효율적 |
| 사전 반입 (Prefetch) | 여러 페이지를 한꺼번에 미리 적재 | I/O 병목 완화 가능, 하지만 낭비 위험 있음 |
실기에서는 요구 반입(Demand Fetch)
3. 배치전략 (Placement Strategy)
1) 개념
반입된 프로세스를 어느 메모리 영역에 배치할 것인가를 결정하는 전략이다.
즉, “적재 위치 선택”에 관한 정책이다.
2) 종류
| 구분 | 동작 방식 | 장점 | 단점 |
|---|---|---|---|
| 최초 적합 (First Fit) | 빈 공간을 앞에서부터 탐색, 처음 맞는 곳에 배치 | 탐색 빠름, 구현 단순 | 외부 단편화 발생 |
| 최적 적합 (Best Fit) | 빈 공간 중 가장 크기가 근접한 곳에 배치 | 공간 낭비 최소 | 작은 틈 공간 많아 외부 단편화 심화 |
| 최악 적합 (Worst Fit) | 가장 큰 공간에 배치 | 큰 프로세스 수용성 향상 | 공간 낭비 많음 |
3) 배치전략 예시
| 빈 공간 (KB) | 100 | 500 | 200 | 300 |
|---|---|---|---|---|
| 요청 크기 | 212 | |||
| First Fit | → 500KB에 배치 | |||
| Best Fit | → 300KB에 배치 | |||
| Worst Fit | → 500KB에 배치 |
시험에서는 “어느 블록에 배치되는가”를 묻는 계산형 문제가 자주 출제된다.
4. 단편화(Fragmentation)
메모리를 반복적으로 할당·회수하다 보면 사용할 수 없는 작은 틈이 생긴다. 이 현상을 단편화(Fragmentation) 라고 한다.
| 구분 | 설명 | 예시 |
|---|---|---|
| 내부 단편화(Internal Fragmentation) | 할당된 블록 내부에 남은 공간 | 90KB 요청 → 100KB 블록 사용 |
| 외부 단편화(External Fragmentation) | 블록 사이의 빈 공간이 연속되지 않아 사용 불가 | 여유 공간은 충분하지만 분산되어 있음 |
해결 방법:
- 압축(Compaction): 사용 중인 프로세스를 한쪽으로 몰아 빈 공간 결합
- 비연속 할당(Paging, Segmentation): 다음 단계의 가상메모리 기법 적용
5. 비교 요약
| 구분 | 반입전략 | 배치전략 |
|---|---|---|
| 핵심 질문 | 언제 적재할 것인가 | 어디에 적재할 것인가 |
| 대표 기법 | Demand Fetch, Prefetch | First Fit, Best Fit, Worst Fit |
| 고려 요소 | CPU 이용률, 응답시간 | 메모리 효율, 단편화 |
| 주요 출제포인트 | 페이지 부재(Page Fault) 발생 시점 | 메모리 블록 선택 규칙 |
6. 결론
주기억장치 관리 전략은 운영체제가 프로세스를 효율적으로 메모리에 배치하는 방법을 결정하는 핵심 영역이다. 시험에서는 주로 다음 세 가지 유형이 자주 출제된다.
- “반입전략 종류 구분 (요구 반입, 예상 반입)”
- “배치전략 비교 (First, Best, Worst Fit)”
- “내부·외부 단편화 구분 문제”
다음 학습 – 연속 메모리 할당기법
다음 학습에서는 연속 분할 할당 기법, 다중 분할 할당 기법, 단편화에 대해서 더 자세히 알아본다.