[시나공] 메모리 관리 & 페이지 교체 알고리즘 (Fetch / Placement / Virtual Memory / FIFO / LRU / LFU / Thrashing)

2026. 3. 27. 19:31Certifications/정보처리기사 실기

1️⃣ 메모리 관리 전략

✅ 반입 전략 (Fetch Strategy)

  • 보조기억장치에 있는 프로그램이나 데이터를 언제 주기억장치로 적재할지 결정하는 전략

✅ 종류


전략 설명
요구 반입
(Demand Fetch)
실행 중인 프로그램이 특정 프로그램이나 데이터를 요구할 때 적재
예상 반입
(Anticipatory Fetch)
실행 중인 프로그램이 앞으로 참조할 데이터를 미리 예상하여 적재

🎯 포인트

  • Demand Fetch → 요구 시 적재
  • Anticipatory Fetch → 미리 예측 적재

2️⃣ 배치 전략 (Placement Strategy)

✅ 개념

  • 새로 반입되는 프로그램이나 데이터를 주기억장치의 어느 위치에 배치할 것인지 결정하는 전략

✅ 종류


전략 설명
First Fit 들어갈 수 있는 첫 번째 빈 영역에 배치
Best Fit 단편화를 가장 작게 남기는 영역에 배치
Worst Fit 단편화를 가장 크게 남기는 영역에 배치

🎯 포인트

  • First Fit → 첫 번째 빈 공간
  • Best Fit → 남는 공간 최소
  • Worst Fit → 남는 공간 최대

3️⃣ 가상기억장치 (Virtual Memory)

✅ 개념

  • 보조기억장치의 일부를 주기억장치처럼 사용하는 기법
  • 용량이 작은 주기억장치를 큰 기억장치처럼 사용할 수 있도록 하는 기술

🔹 특징

  • 프로그램을 작은 블록 단위로 나누어 관리
  • 필요한 부분만 주기억장치에 적재
  • 메모리 사용 효율 증가

🔹 구현 기법


기법 설명
Paging 프로그램을 같은 크기의 페이지로 분할
Segmentation 프로그램을 논리적 단위(세그먼트)로 분할

🎯 포인트

  • 가상기억장치 = 보조기억장치를 주기억장치처럼 사용
  • 구현 기법 → Paging / Segmentation

4️⃣ 페이지 교체 알고리즘

✅ 개념

  • 페이지 부재(Page Fault)가 발생했을 때
  • 어떤 페이지를 교체할 것인지 결정하는 알고리즘

🔹 종류


알고리즘 설명
OPT 앞으로 가장 오래 사용되지 않을 페이지 교체
FIFO 가장 먼저 들어온 페이지 교체
LRU 가장 오래 사용되지 않은 페이지 교체
LFU 사용 빈도가 가장 적은 페이지 교체
NUR 최근 사용 여부와 수정 여부 기준 교체
SCR Second Chance 방식

🎯 포인트

  • 시험에서 FIFO / LRU / LFU / OPT 자주 출제

5️⃣ FIFO (First In First Out)

✅ 개념

  • 가장 먼저 들어온 페이지를 먼저 교체하는 방식

🔹 특징

  • 구현이 가장 단순
  • 오래된 페이지 제거

🎯 포인트

  • Queue 구조
  • Belady's anomaly 발생 가능

6️⃣ LRU (Least Recently Used)

✅ 개념

  • 가장 오랫동안 사용되지 않은 페이지를 교체

🔹 특징

  • 최근 사용 패턴 반영
  • FIFO보다 효율적

🎯 포인트

  • 최근 사용 기록 필요
  • 실제 운영체제에서 많이 사용

7️⃣ LFU (Least Frequently Used)

✅ 개념

  • 사용 빈도가 가장 적은 페이지를 교체

🔹 특징

  • 참조 횟수 기준 교체
  • 오래 사용된 페이지는 유지 가능

🎯 포인트

  • 참조 횟수 기준 교체

8️⃣ Locality (지역성)

✅ 개념

  • 프로세스 실행 중 특정 페이지가 집중적으로 참조되는 성질

🔹 종류


종류 설명
시간 지역성
(Temporal Locality)
최근 사용한 데이터 다시 사용
공간 지역성
(Spatial Locality)
근처 데이터 함께 접근

🎯 포인트

  • 캐시 / 가상기억장치 핵심 이론

9️⃣ Working Set (워킹 셋)

✅ 개념

  • 프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합

🔹 특징

  • 자주 사용하는 페이지를 메모리에 유지
  • 페이지 교체 감소

🔟 Thrashing (스래싱)

✅ 개념

  • 페이지 교체가 너무 자주 발생하여 시스템 성능이 급격히 저하되는 현상

🔹 특징

  • 페이지 부재 증가
  • CPU 사용률 감소
  • 시스템 성능 저하

🎯 포인트

  • 페이지 교체 과다 → 성능 저하

📊 시험 포인트 정리

🔥 1. 페이지 교체 알고리즘 계산 문제

  • FIFO
  • LRU
  • LFU

👉 페이지 부재 횟수 계산 문제 매우 자주 출제


🔥 2. 알고리즘 특징 구분 문제

알고리즘 핵심 키워드
FIFO 먼저 들어온 페이지 교체
LRU 가장 오래 사용되지 않은 페이지
LFU 사용 빈도 가장 적은 페이지
OPT 앞으로 가장 오래 사용되지 않을 페이지

🔥 3. Locality 유형 구분 문제

유형 의미
Temporal 시간 지역성
Spatial 공간 지역성

🔥 4. 가상기억장치 구현 방식

  • Paging
  • Segmentation

🔥 5. Thrashing 개념 핵심 키워드

  • 페이지 교체 증가
  • CPU 활용률 감소
  • 성능 저하

📌 암기 핵심 요약

  • 메모리 관리 = Fetch + Placement + Virtual Memory + Page Replacement
  • 페이지 교체 알고리즘 → FIFO / LRU / LFU / OPT
  • 가상기억장치 핵심 → Paging / Segmentation
  • 성능 문제 → Thrashing





2025 시나공 퀵이지 정보처리기사 실기 단기완성
(저자: 강윤석, 김용갑, 김우경, 김종일 | 출판사: 길벗)

※ 본 글은 위 교재를 참고하여 학습 목적으로 재정리한 내용입니다.