기억장치 관리
1. 기억장치
- 보조기억장치의 프로그램이나 데이터를 주기억장치에 적재시키는 시기(When), 적재 위치(Where) 등을 지정하여 한정된 주기억장치의 공간을 효율적으로 사용하기 위함
전략 | 설명 | 알고리즘 종류 |
반입(Fetch) | 언제 적제 | 요구 반입, 예상 반입 |
배치(Placement) | 어디에 | 최초적합, 최적 적합, 최악 적합 |
할당(Allocation) | 어떻게 | 연속할당, 분할 할당 |
교체(Replacemnet) | 어느 영역 교체 | FIFO, LRU, LFU, OPT, NUR,SCR |
1.1 기억장치 관리
(1) 반입(Fetch) 전략
- 보조기억장치에 보관 중인 프로그램이나 데이터를 언제(When) 주기억장치로 적재할 것인지를 결정하는 전략
(a) 요구 반입(Demand Fetch) : 실행 중인 프로그램이 특정 프로그램이나 데이터 등의 참조를 요구할 때 적재
(b) 예상 반입(Anticipatory Fetch): 실행중인 프로그램에 의해 참조될 프로그램이나 데이터를 미리 예상하여 적재
(2) 배치(Placement) 전략 20년 3회 기출문제
- 새로 반입되는 프로그램이나 데이터를 주기억장치의 어디에(Where) 위치시킬 것인지를 결정하는 전략
(a) 최초 적합(First Fit) : 빈 영역 중에서 첫 번째 분할 영역에 배치
(b) 최적 적합(Best Fit) : 빈 영역 중에서 단편화를 가정 작게 남기는 분할 영역에 배치
(c) 최악 적합(Worst Fit): 빈 영역 중에서 단편화를 가장 많이 남기는 분할 영역에 배치
기출문제. 기억장치 관리적략중 3가지 배치 전략에 따라 10k 를 요구할 경우 어느영역에 배치하는지?
No. | 영역 크기 | 상태 |
1 | 5k | 공백 |
2 | 14k | 공백 |
3 | 10k | 사용 중 |
4 | 12k | 공백 |
5 | 16k | 공백 |
> 최초적합(FF): 2번 14k (단편화 4k)
> 최적 적합(Best Fit): 4번 12k (단편화 2k)
> 최악 적합(Worst Fit): 5번 16k (단편화 6k)
(3) 교체(Replacement) 전략 (페이지 결함/부재 횟수, 최종 결과)
- 이미 사용되고 있는 영역 중에서 어느(Who) 영역을 교체할지 결정하는 전략
페이지 교체 알고리즘 : FIFO, LRU, LFU, NUR, OPT, SCR
(a) FIFO(First In First Out), FCFS(First Come First Serve)
-각 페이지가 주기억장치에 적재될 때마다 그때의 시간을 기억시켜 가장 먼저 들어와서 가장 오래 있었던 페이지를 교체
(b) LRU(Least Recently Used)
-최근에 가장 오랫동안 사용하지 않은(가장 오래전에 사용된) 페이지를 교체
- counter 사용(stack)
(c) LFU(Least Frequently Used)
-사용 빈도가 가장 적은 페이지를 교체(Counter)
(d) OPT(OPTimal replacement, 최적 교체)
-앞으로 가장 오랫동안 사용하지 않을 페이지를 교체
-벨레이디(Belady)가 제안한 것으로, 페이지 부재 횟수가 가장 적게 발생하는 가장 효율적인 알고리즘
(e) NUR(Not Used Recently)
참조 비트 | 0 | 0 | 1 | 1 |
변형 비트 | 0 | 1 | 0 | 1 |
교체 순서 | 1 | 2 | 3 | 4 |
-LRU와 비슷한 알고리즘, 최근에 사용하지 않은 페이지를 교체하는 기법
-각 페이지마다 두 개의 비트, 즉 참조 비트와 변형 비트 사용
교체순서 | 1 | 2 | 3 | 4 |
참조비트 | 0 | 0 | 1 | 1 |
변형비트 | 0 | 1 | 0 | 1 |
(f) SCR(Second Chance Replacement, 2차 기회 교체)
-가장 오랫동안 주기억장치에 있던 페이지 중 자주 사용되는 페이지의 교체를 방지하기 위한 것으로, FIFO 기법의 단점을 보완하는 기법
(4) 주기억장치 할당(Allocation) #.연단다 분페세
- 프로그램이나 데이터를 실행시키기 위해 주기억장치에 어떻게(How) 할당할지 정함
(a) 연속 할당 기법: 프로그램을 주기억장치에 연속으로 할당하는 기법
- 단일 분할 할당 기법: 오버레이, 스와핑
- 다중 분할 할당 기법: 고정(정적) 분할 할당 기법, 가변(동적) 분할 할당 기법
(b) 분산 할당 기법: 프로그램을 특정 단위의 조각으로 나누어 할당하는 기법
- 페이징(Paging) 기법 : 고정적 크기
- 세그먼테이션(Segmentation) 기법: 가변적 크기
'Challenges > 정보처리기사' 카테고리의 다른 글
[정보처리기사]4.프로그래밍 언어 활용/SW 운영체제의 활용/프로세스 (0) | 2022.07.04 |
---|---|
[정보처리기사]4.프로그래밍 언어 활용/SW 운영체제의 활용/가상기억장치 (0) | 2022.07.04 |
[정보처리기사]4.프로그래밍 언어 활용/SW 운영체제의 활용/운영체제의 종류 (0) | 2022.07.04 |
[정보처리기사]4.프로그래밍 언어 활용/SW 운영체제의 활용/운영체제의 개념 (0) | 2022.07.03 |
[정보처리기사]4.프로그래밍 언어 활용/프로그래밍 언어/스크립트 언어 (0) | 2022.07.03 |