[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차 기회 부여함으로써 성능 하락

-끝-

+ Recent posts