정처기 감자
네트워크/OS메모리/프로세스

검색

검색어를 입력해 개념, 문제, 필기를 찾습니다.

메모리 페이지 교체 알고리즘

네트워크/OS메모리/프로세스
읽는데 7분 소요
처음 쓰여진 날: 2025-09-20
마지막 수정일: 2026-06-11
조회수: —

요약

메모리 관리를 위한 필수 개념, 페이지 교체 알고리즘을 파헤쳐봅니다. 페이지와 페이지 부재의 개념부터 FIFO, LRU, LFU 알고리즘의 동작 방식과 차이점을 명확히 이해하고, 정보처리기사 실기 대비 문제로 실력을 점검하세요.

페이지 교체 알고리즘 정리

알고리즘교체 대상기반 원리
FIFO가장 먼저 메모리에 들어온 페이지선입선출
LRU가장 오랫동안 사용되지 않은 페이지시간 지역성
LFU참조 횟수가 가장 적은 페이지참조 빈도

페이지 교체 알고리즘은 가상 메모리 시스템1에서 물리 메모리(RAM)의 프레임이 부족할 때, 어떤 페이지를 보조기억장치로 내보낼지 결정하는 알고리즘입니다.

페이지와 페이지 부재, 왜 알아야 할까?

컴퓨터가 프로그램을 실행하려면 해당 프로그램의 코드와 데이터가 물리 메모리(RAM) 에 올라와 있어야 합니다. 하지만 RAM의 크기는 한정되어 있고, 여러 프로그램을 동시에 실행하다 보면 공간이 부족해집니다. 이때 운영체제는 가상 메모리2라는 기술을 사용합니다.

페이지(Page)란?

페이지는 가상 메모리를 사용하는 시스템에서 메모리를 관리하는 고정된 크기의 블록입니다. 하드 디스크와 같은 보조기억장치에 있는 프로그램의 코드와 데이터를 일정한 크기로 나누어 놓은 것이죠. RAM 역시 페이지와 동일한 크기의 프레임(Frame) 으로 나누어 관리합니다.

  • 핵심: 가상 메모리는 페이지 단위로 나뉘고, 이 페이지들이 물리 메모리(RAM)의 프레임에 연결(매핑: Mapping)되어야 실행될 수 있습니다.
페이지와 프레임
페이지와 프레임은 연결(매핑)되어 있어요

페이지 부재(Page Fault)란?

프로세스가 특정 페이지를 사용하려고 할 때, 해당 페이지가 RAM(물리 메모리)에 없는 경우를 페이지 부재(Page Fault)3 라고 합니다.

페이지 부재
페이지 부재가 발생했다!(페이지와 매핑된 프레임이 없다!)

페이지 부재가 발생하면 다음과 같은 과정이 일어납니다.

  1. CPU는 운영체제(OS)에 제어권을 넘깁니다.
  2. 운영체제는 보조기억장치(HDD, SSD)에서 필요한 페이지를 찾습니다.
  3. RAM에 비어있는 프레임이 있다면 해당 페이지를 가져옵니다.
  4. 만약 비어있는 프레임이 없다면? 기존에 있던 페이지 중 하나를 보조기억장치로 내보내고(swap-out), 그 공간에 새로운 페이지를 가져옵니다(swap-in).

이때 "어떤 페이지를 내보낼 것인가?"를 결정하는 규칙이 바로 페이지 교체 알고리즘입니다.


주요 페이지 교체 알고리즘

페이지 교체 알고리즘의 목표는 페이지 부재 횟수를 최소화하여 시스템 성능을 높이는 것입니다. FIFO, LRU, LFU가 대표적인 알고리즘입니다.

FIFO (First-In, First-Out)

FIFO 알고리즘
FIFO 알고리즘 - 선입선출(가장 먼저 들어온 페이지를 가장 먼저 내보낸다)

가장 간단한 알고리즘으로, RAM에 가장 먼저 들어온 페이지를 가장 먼저 내보내는 방식입니다. 마치 줄을 서서 먼저 온 사람이 먼저 나가는 것과 같습니다.

이미 메모리에 있는 페이지가 다시 참조되면 페이지 부재가 발생하지 않습니다.
페이지 교체 없이 그대로 유지되며, 들어온 순서도 변하지 않습니다.
  • 장점: 구현이 매우 간단합니다.
  • 단점: 자주 사용되는 페이지임에도 불구하고 먼저 들어왔다는 이유만으로 교체될 수 있어 비효율적일 수 있습니다. (이를 Belady의 모순(Belady's Anomaly) 이라고도 합니다. 프레임 수를 늘렸는데도 페이지 부재가 더 많이 발생하는 현상)

LRU (Least Recently Used)

가장 오랫동안 사용되지 않은 페이지를 교체하는 알고리즘입니다. "최근에 사용된 페이지는 가까운 미래에도 다시 사용될 것이다"라는 시간 지역성(Temporal Locality) 아이디어를 기반으로 합니다.

브라우저가 video 태그를 지원하지 않습니다.
참조 문자열 7, 0, 1, 2, 0, 3, 0, 4를 프레임 3칸에 LRU 방식으로 처리하는 과정입니다. 페이지 부재 개념부터 시험장에서 표 전체를 채워 푸는 방법까지 차례로 보여줍니다.
이미 메모리에 있는 페이지가 다시 참조되면 페이지 부재가 발생하지 않습니다.
페이지 교체 없이 해당 페이지의 사용 시간만 현재로 갱신됩니다. 즉, 메모리 안에서 순서만 바뀔 뿐 새로 들어오는 것이 아닙니다.
  • 장점: FIFO에 비해 페이지 부재율이 낮고, 일반적으로 좋은 성능을 보입니다.
  • 단점: 각 페이지의 최근 사용 시간을 기록하고 유지해야 하므로, 운영체제의 부담이 크고 구현이 복잡합니다.

LFU (Least Frequently Used)

참조 횟수가 가장 적은 페이지를 교체하는 알고리즘입니다. "과거에 많이 사용된 페이지는 앞으로도 많이 사용될 것이다"라는 가정에 기반합니다.

이미 메모리에 있는 페이지가 다시 참조되면 페이지 부재가 발생하지 않습니다.
페이지 교체 없이 해당 페이지의 참조 횟수만 1 증가합니다. LRU와 달리 자리를 위로 옮기지 않으므로, 표에서도 그 페이지가 있던 줄에 그대로 두고 횟수만 올리면 됩니다.
교체되어 메모리에서 빠진 페이지는 참조 횟수가 초기화됩니다.
나중에 같은 페이지가 다시 적재되면 참조 횟수 1부터 새로 시작합니다. 이전에 몇 번 참조되었는지는 기록되지 않습니다.
  • 장점: LRU가 잡아내지 못하는 장기적인 참조 패턴을 고려할 수 있습니다.
  • 단점:
    • 참조 횟수를 계산하기 위한 오버헤드가 큽니다.
    • 초기에 많이 사용되었지만 더 이상 사용되지 않는 페이지가 계속 메모리에 남아있을 수 있습니다.
    • 참조 횟수가 동일한 페이지가 여러 개일 경우, 어떤 것을 교체할지 결정하기 위한 추가적인 규칙(e.g., FIFO)이 필요합니다.

정보처리기사 실기 대비 문제


Footnotes

  1. 가상 메모리 시스템에는 가상 메모리 (논리적 주소 공간),물리 메모리 (RAM), 페이지 테이블 (가상 주소와 물리 주소 매핑 정보) 등이 포함됩니다. ↩

  2. 가상 메모리는 RAM에 있어야 할 데이터를 HDD/SSD에 담아두는 것 이상의 개념입니다. RAM 부족 시 HDD/SSD를 활용하는 구현 기술은 스와핑이라고 합니다. ↩

  3. 가상 메모리에는 항상 페이지가 존재합니다. 물리 메모리에는 공간 효율성을 위해 페이지와 매핑된 프레임이 존재하지 않을 수 있습니다. ↩


메가커피와 함께, 홈페이지 개선에 참여하세요! ☕
혹시 이용에 불편한 점이나 개선이 필요한 부분을 발견하셨나요? 댓글로 알려주시면 더 나은 감자가 될 수 있어요! 🥔 제보해주신 모든 분께 메가커피 기프티콘을 드립니다! (본인 이메일로 댓글 달아주셔야해요~)

추천 개념

Beta

관련 글

(16개)
제목태그업데이트시험
메모리/프로세스 정보처리기사 실기 모의 시험
메모리/프로세스네트워크/OS메모리/프로세스
2025-10-03응시
프로세스 스케줄링 알고리즘
메모리/프로세스네트워크/OS메모리/프로세스
2025-10-31-
Shell Script 정보처리기사 실기 모의 시험
Shell Script네트워크/OSShell Script
2026-01-24응시
정처기 감자정처기 감자

정보처리기사 합격
도와줄라고 하는 감자

실기 이론

  • 이론 공부법
  • DB
  • 네트워크/OS
  • SW 설계
  • SW 개발
  • 보안/신기술

시험 응시

  • 시험장 찾기
  • 원서 접수
  • 응시자격 서류

요약 PDF

  • 26년 1회 이론 압축
  • 초압축 25년 3회
  • 압축 25년 3회

기출문제

  • 전체 기출문제
  • 25년 3회
  • 25년 2회
  • 문제 포럼

감자 이용권

  • 이용권 구매

실기 이론

  • 이론 공부법
  • DB
  • 네트워크/OS
  • SW 설계
  • SW 개발
  • 보안/신기술

시험 응시

  • 시험장 찾기
  • 원서 접수
  • 응시자격 서류

요약 PDF

  • 26년 1회 이론 압축
  • 초압축 25년 3회
  • 압축 25년 3회

기출문제

  • 전체 기출문제
  • 25년 3회
  • 25년 2회
  • 문제 포럼

감자 이용권

  • 이용권 구매
© 2025 재현기획개발. All rights reserved.
  • 정처기 감자의 시작
  • 업데이트 로그
  • 개인정보 처리방침
  • 이용약관
상호명 : 재현기획개발 / 주소: 서울특별시 영등포구 영등포로 150, 지하1층 108호 L145 가라지(당산동1가, 생각공장 당산) / 대표: 김재현 / 전화: 010-8158-7127 / 통신판매업신고: 제2025-서울영등포-1569호 / 이메일: contact@edugamja.com / 사업자등록번호: 573-51-00999