메모리 관리 전략
메모리 관리 전략은 보조기억장치의 프로그램이나 데이터를 주기억장치에 적재시키는 시기, 적재 위치 등을 지정하여 한정된 주기억장치의 공간을 효율적으로 사용하여 많은 프로세스를 로드하기 위한 것이다.
각각의 프로세스 는 독립된 메모리 공간을 갖고, 운영체제 혹은 다른 프로세스의 메모리 공간에 접근할 수 없는 제한이 걸려있고, 운영체제 만이 운영체제 메모리 영역과 사용자 메모리 영역의 접근에 제약을 받지 않기 때문에 이를 운영체제가 담당한다.
메모리 관리 전략의 종류
반입 정책(fetch policy)
보조기억장치에 보관중인 프로그램이나 데이터를 언제 주기억장치로 적재할 것인지를 결정
- 요구 반입(=요구 페이징) : 실행중인 프로그램이 특정 프로그램이나 데이터 등의 참조를 요구할 때 적재
- 예상 반입 : 실행중인 프로그램에 의해 참조될 프로그램이나 데이터를 미리 예상하여 적재
배치 정책(placement policy)
새로 반입되는 프로그램이나 데이터를 주기억장치의 어디에 위치시킬 것인가를 결정
최초 적합
프로그램이나 데이터가 들어갈 수 있는 크기의 빈 영역 중 첫 번째 분할 영역에 배치
- 다른 배치 방법에 비해 탐색 시간이 적어 빠름
- 메모리 공간 활용도가 떨어질 수 있다.
최적 적합
프로그램이나 데이터가 들어갈 수 있는 크기의 빈 영역 중 단편화를 가장 적게 남기는 분할 영역에 배치
- 매우 작은 크기의 빈공간을 생성하여 메모리 단편화가 적게 발생하지만, 모든 빈 공간을 탐색해야 하므로 탐색 비용이 많이 발생
최악 적합
프로그램이나 데이터가 들어갈 수 있는 크기의 빈 영역 중 단편화를 가장 많이 남기는 분할 영역에 배치시키는 방법
- best fit과 마찬가지로 전체 탐색이 필요
- 최적 배치와 반대되는 접근 방법으로, 최적 배치는 남는 공간의 활용도가 적은 반면 최악 배치는 남는 공간에 다른 프로세스 및 다른 데이터를 배치할 수 있게된다.
교체 정책(replacement policy)
페이지 부재(Page Fault)가 발생하면 가상기억장치에서 필요한 페이지를 찾아 주기억장치에 적재해야 하는데, 이때 주기억장치의 모든 페이지 프레임이 사용중이면 어떤 페이지 프레임을 선택하여 교체할 것인지를 결정하는 기법
FIFO(First In First Out)
각 페이지가 주기억장치에 적재될 때마다 그때의 시간을 기억시켜 가장 먼저 들어와서 가장 오래 있었던 페이지를 교체
LRU(Least Recently Used)
최근에 가장 오랫동안 사용하지 않은 페이지를 교체
LFU(Least Frequently Used)
사용 빈도가 가장 적은 페이지를 교체
Reference
'CS > 운영체제' 카테고리의 다른 글
12. 가상기억장치 구현 기법 (0) | 2024.08.03 |
---|---|
11. 주기억장치 할당 기법 (0) | 2024.08.03 |
9. 스케줄링 (0) | 2024.08.03 |
8.좀비 프로세스와 고아 프로세스 (0) | 2024.07.12 |
7.IPC (0) | 2024.07.12 |