[CA/OS 목차]
1. 최적의 시스템 성능 효율을 위한 주기억장치 메모리 관리 기법 개요
가. 기억장치 관리 기법의 개념
- 다중 프로그래밍 시스템에서 운영체제에 의해 동적으로 메모리의 사용자 영역을 여러 프로세스가 상주할 수 있도록 세분화 하는 기법
- 한정적인 메모리의 용량을 여러 응요 프로그램의 사용을 위해 효율적인 메모리 관리 기법 필요
나. 기억장치 관리 기법의 유형
- 기억 장치 구성 정책 결정된 상태에서 시스템 성능을 최대 높이기 위해 반입,배치,교체,할당 기법 결정 필요함.
2. 기억장치 관리 기법 설명
가. 반입 기법과 배치 기법 설명
구 분 | 세부 기법 | 설 명 |
반입 기법 | - 요구 반입 기법 | - 필요 할때 적재(Load)하는 방법 - 다음에 실행 될 프로세스가 참조 요구가 있을 경우 적재 |
- 예상 반입 기법 | - 시스템의 요구를 예측하여 미리 메모리에 적재 - 요구되는 페이지 이외 다른 페이지도 함께 적재 |
|
배치 기법 | - 최초 적합 | - 여러 유휴 공간들을 차례로 진행 중에 저장 할 수 있을 만큼의 크기를 가진 부분을 최초로 찾으면 할당하는 기법 |
- 최적 적합 | - 요구하는 크기보다 크면서 가장 크기가 비슷한 공간을 채택하여 할당 하는 방법(공백 최소화 장점) | |
- 최악 적합 | - 존재하는 여러 공백 중 가장 큰 부분을 찾아 할당 - 할당하고 남은 부분이 큰 경우, 다른 프로그램 할당 가능 |
나. 교체 기법과 할당 기법 설명
구분 | 세부 기법 | 설 명 |
|
교체 기법 | - FIFO | - 가장 먼저 기억장치에 들어와 있는 페이지와 교체시키는 방법 | |
- Optimal | - 앞으로 사용하지 않을 페이지 대체 - 현실적 구현이 어려워 비교 연구를 위해서 주로 사용 |
||
- LRU(Least Recently Used) | - 현시점에서 가장 오래 동안 사용되지 않은 페이지를 제거 방법 | ||
- 시계 알고리즘 | - FIFO 기반으로 사용 여부를 나타내는 참조비트를 추가 - 원형 버퍼 큐로 배치, 참조비트가 0인 페이지 교체 |
||
- LFU(Least Frequently Used) | - 사용 빈도가 가장 적은 페이지 즉, 호출된 횟수가 가정 적은 페이를 교체 - 최근 사용하지 않음 |
||
할당 기법 |
- 연속 할당 | - 프로세스를 메모리에 올릴 때 그 주소 공간을 여러개로 분할 하지 않고 물리적 메모리의 한곳에 연속적으로 적재하는 방식 | |
고정 분할 | - 물리적 메모리를 고정크기로 분할 | ||
가변 분할 | - 분할 하지 않음(배치: 최초,적합,최악) | ||
- 불연속 할당 | - 하나의 데이터나 프로그램이 여러 개의 블록 또는 세그먼트로 나누어져 주기억 장치내에 분산 배치되도록 적재하거나 보관하는 것 | ||
페이징 | - 각 프로세스의 주소 공간을 동일한 크기의 페이지로 잘라서 메모리에 페이지 단위로 적재 | ||
세그먼테이션 | - 프로그램의 주소 공간을 코드, 데이터, 스택 등 의미 있는 단위인 세그먼트로 나누어 적재 | ||
페이지 세그먼테이션 | - 세그먼트 하나를 다수의 페이지로 구성 |
3. 단편화(Fragmentation)
- 주기억 장치 상에서 프로그램에 의해 사용되지 못하고 낭비되는 부분적인 기억 공간을 의미
가. 단편화 개념 및 종류 설명
나. 단편화 해결 기법
해결 기법 | 설 명 |
통합(Coalescing) | - 비어 있는 기억 장소와 인접되어 있는지를 점검, 하나의 공백으로 합치는 기법 |
압축(Compaction) | - 산재 되어 있는 모든 공백들을 하나의 공백으로 모으는 기법 |
프레임(Frame)기법 | - 메모리를 일정한 크기로 나누어 관리함으로써 내부 단편화 문제 해결 기법 |
버디(Buddy)알고리즘 | - 크기를 절반씩 분할하면서 가장 잘 맞는 크기의 메모리를 찾아 할당 후 통합 하는 알고리즘 |
Slab Allocation | - 슬랩 할당자는 미리 할당해 놓은 작은 메모리 조작을 kmalloc() 의 요청에 따라서 요청한 양이 가장 가까운 메모리 조가을 반환함 |
4. FIFO ANOMALY(Belady's Anomaly)
가. FIFO Anomaly 정의
- 페이지 교체 알고리즘 중의 하나인 FIFO(First In First Out)에서, 페이지 프레임의 개수를 늘렸는데도 불구하고 Page Fault 발생이 오히려 증가하는 현상
- 프레임수가 3개일 경우, 9번의 페이지 부재 발생하지만 프레임수를 4개로 증가 시켰을 때 오히려 페이지 부재가 10회 증가됨.
나. FIFO Anomaly 해결 방법
5. Second Chance Replacement
- FIFO의 잦은 페이지 교체의 단점을 방지 위해 참조비트를 두어 1일 경우 0으로 지정한 후 FIFO 리스트의 마지막으로 피드백 시켜 다음 순서를 기다리게 하는 알고리즘
장점 | 단점 |
- 자주 참조 되는 페이지에 기회를 줌으로써 페이지 부재현상 최소화 - FIFO의 알고리즘의 단점 보완 |
- 모든 페이지의 참조비트가 "1"인 경우 환형 큐를 돌면서 계속해서 2차 기회 부여함으로써 성능 하락 |
-끝-
'메가노트 > 토픽과제(정리)' 카테고리의 다른 글
I/O 전송방식(황선환 이사님) (0) | 2022.11.12 |
---|---|
입출력 인터페이스(이상희 부장님) (0) | 2022.11.12 |
기억장치 분할(배준호 대리님) (0) | 2022.11.12 |
뉴로모픽 반도체(홍진택 주무관님) (0) | 2022.11.12 |
기울기 소실(배준호 대리님) (0) | 2022.11.11 |