728x90
가상 메모리
- 디스크 (보조 기억 장치)를 가상의 논리적 메모리 공간으로 이용하는 방법이다.
- 다중 프로그래밍 환경에서 프로세스를 모두 메모리에 적재하기엔 물리적 메모리의 크기가 제한적이여서 나온 방법이다.
- 대부분 프로그램은 부분적인 적재만으로도 프로그램을 실행시킬 수 있는데 이러한 특징을 이용한 기법이 가상 메모리다. 즉, 프로세스 실행에 꼭 필요한 부분만 메인 메모리에 적재하고 나머지는 디스크에 저장한다.
요구 페이징 기법
- 가장 일반적인 가상 메모리 체계
- 프로그램을 실행 시 일부 페이지들만 메모리에 적재하고 요구하는 페이지를 메모리에 교체해가며 사용한다.
1. 요구 페이징 장점
- 다중 프로그래밍을 더 활성화시키고 접근하지 않은 페이지는 로드하지 않으므로 메모리를 절약할 수 있다.
- 프로그램 시작 시 로딩 지연이 적다.
2. 요구 페이징 단점
- 페이지 교체가 복잡하다.
- 낮은 성능의 시스템에서 실행되는 프로그램은 페이지 교체를 지원하는 메모리 관리 장치가 없음
페이지 교체 알고리즘
- 요구 페이징 기법 사용 시 페이지 부재율이 가장 낮은 페이지 교체 알고리즘을 사용해야 성능이 좋다.
1. FIFO (First-In First-Out)
- 말 그대로 선입선출 알고리즘으로써 먼저 메모리에 들어간 페이지부터 교체해나가는 기법이다.
2. OPT (최적 페이지 교체)
- 앞으로 가장 오랫동안 사용하지 않을 페이지를 찾아서 교체하는 기법이다.
- 가장 낮은 페이지 부재율을 보장하지만 구현이 어렵다.
3. LRU (Least Recently Used)
- 가장 오랫동안 사용하지 않은 페이지를 교체하는 기법이다.
- 가장 OPT와 근사한 알고리즘이다.
4. LFU (Least Frequently Used)
- 사용 빈도가 가장 낮은 페이지부터 교체하는 기법이다.
- 특정 페이지가 초기에는 많이 사용되었다가 그 후로는 다시 사용되지 않으면 문제가 된다. (사용 빈도 수는 높게 유지되기 때문)
5. MFU (Most Frequently Used)
- 가장 많이 사용된 페이지부터 교체하는 기법이다.
- 적게 사용된 페이지일 수록 메모리에 들어온지 얼마 안되어서 앞으로 많이 사용될 것이라는 가정을 기반으로 한다.
728x90
'Computer Science > 운영체제' 카테고리의 다른 글
[운영체제] 세마포어 (Semaphore)와 뮤텍스 (Mutex) (0) | 2020.11.06 |
---|---|
[운영체제] 메모리 관리 기법 (0) | 2020.10.01 |
[운영체제] CPU 스케줄링 (0) | 2020.09.24 |
[운영체제] 교착상태 (Deadlock) (0) | 2020.09.23 |
[운영체제] 컴퓨터 시스템 구성요소 (0) | 2020.09.20 |
댓글