본문 바로가기
computer science

하루에 하나씩 배우는 컴퓨터 사이언스 개념: 요구 페이징 개념

by vita12321 2023. 8. 15.
728x90
반응형

하루에 하나씩 배우는 컴퓨터 사이언스 개념 시리즈에서 이번에는 가상 메모리 시스템에서 사용되는 '요구 페이징(Demand Paging)' 개념에 대해 자세하게 알아보겠습니다. 요구 페이징은 메모리의 효율적인 사용을 가능하게 하는 기법으로, 프로세스가 실제로 필요한 페이지만 메모리에 적재하는 동작과 특성에 대해 배워봅시다.


1. 요구 페이징(Demand Paging) 개념과 배경

 

요구 페이징은 가상 메모리 시스템에서 프로세스가 실제로 필요할 때만 해당 페이지를 메모리에 적재하는 기법입니다. 다시 말해, 모든 페이지가 아닌, 프로세스가 실제로 참조하려는 페이지만 메모리에 불러오게 됩니다. 방식의 도입 배경에는 가지 이유가 있습니다.

 

1) 프로세스가 생성되면서 모든 페이지를 메모리에 올리려면 많은 시간과 공간이 소모됩니다.

2) 실제로 프로세스가 작업을 수행하면서 모든 페이지를 사용하지는 않습니다.

 

따라서 요구 페이징 방식을 사용하면 필요한 페이지만 메모리에 적재함으로써 메모리 사용의 효율성을 높이게 됩니다.


2. 요구 페이징의 동작 원리

 

요구 페이징의 핵심 메커니즘은 페이지 폴트(Page Fault)입니다. 페이지 폴트는 CPU 메모리에 없는 페이지에 접근하려고 발생합니다. 이때 운영 체제는 디스크에서 필요한 페이지를 찾아 메모리에 적재한 , 해당 페이지로의 접근을 다시 시도하게 됩니다. 요구 페이징의 동작 과정은 다음과 같습니다.

 

1) 프로세스가 실행되면서 CPU 메모리 참조를 요청합니다. 이때 주소 변환 과정에서 해당 페이지가 메모리에 존재하는지 확인합니다.

 

2) 해당 페이지가 메모리에 존재하지 않으면, 페이지 폴트가 발생합니다. 이때 운영 체제는 메모리에 적재되지 않은 페이지를 디스크에서 찾습니다.

 

3) 페이지를 찾으면 메모리의 비어있는 프레임에 해당 페이지를 적재합니다. 그리고 페이지 테이블을 업데이트하여 메모리에 적재된 페이지의 정보를 기록합니다.

 

4) 페이지 적재가 완료된 , CPU 다시 같은 메모리 참조를 요청합니다. 이번에는 페이지가 메모리에 존재하므로, 원활하게 메모리 참조를 수행할 있습니다.


3. 메모리 교체 알고리즘

 

요구 페이징에서 메모리는 한정된 공간을 가지고 있어, 새로운 페이지를 적재할 기존 메모리에 있는 페이지를 제거해야 수도 있습니다. 이러한 상황에서 페이지를 교체하는 알고리즘으로는 여러 가지 방법이 존재합니다. 가지 대표적인 메모리 교체 알고리즘은 다음과 같습니다.

 

  • FIFO(First-In-First-Out) 알고리즘:
    메모리에 먼저 들어온 페이지를 제거하는 방식입니다.

  • LRU(Least Recently Used) 알고리즘:
    가장 오래전에 사용된 페이지를 교체하는 방법입니다.

  • LFU(Least Frequently Used) 알고리즘:
    사용 빈도가 가장 낮은 페이지를 제거하는 방식입니다.

  • OPT(Optimal) 알고리즘:
    미래에 가장 늦게 사용될 페이지를 제거하는 방식입니다. 하지만 미래의 사용 정보는 알 수 없기 때문에 이론적인 기법으로 사용됩니다.

4. 요구 페이징의 장단점

 

  • 장점
  • 프로세스가 실제로 사용하는 페이지만 메모리에 적재함으로써 메모리 사용 효율성을 높일 수 있습니다.
  • 필요한 페이지만 메모리에 올리기 때문에 전체 메모리 사용량을 줄일 수 있습니다.
  • 메모리를 효율적으로 사용하여 더 많은 프로세스를 동시에 실행할 수 있게 됩니다.

 

  • 단점
  • 페이지 폴트가 발생하면 디스크에서 페이지를 가져오는 과정에서 메모리 접근 시간이 길어질 수 있습니다.
  • 페이지 교체 알고리즘이나 시스템의 성능에 따라서 전체적인 성능 차이가 발생할 수 있습니다.

5. 요약

 

이번 컴퓨터 사이언스 개념 시리즈에서는 가상 메모리 시스템의 요구 페이징 개념에 대해 깊이 있게 살펴보았습니다. 요구 페이징의 개념과 배경, 동작 원리, 메모리 교체 알고리즘, 그리고 장단점에 대해 자세히 알아보았습니다. 이를 바탕으로 가상 메모리 시스템에 대한 전반적인 이해력을 향상시킬 있기를 바랍니다

 

728x90
반응형