총론 3강. 주기억장치 관리
추천글 : 【운영체제】 운영체제 목차
1. 기억장치 계층 구조 [본문]
2. 주기억장치 할당 방법 [본문]
3. 페이지 교체 [본문]
4. 연관기억장치 [본문]
1. 기억장치 계층 구조 [목차]
⑴ 상위 - 레지스터 - 캐시 기억장치 - 주기억장치 - 보조기억장치 - 하위
⑵ 상위 기억장치일수록 접근 시간이 빠르고, 기억 용량이 작으며 고가임
⑶ 주기억장치는 주소를 이용하여 액세스 할 수 있음
⑷ 보조기억장치에 있는 데이터는 주기억장치에 적재된 후에야 CPU에 의해 액세스될 수 있음
2. 주기억장치 할당 방법 : 기억장치 배치 전략 [목차]
⑴ 연속할당기법 : 프로그램을 주기억장치에 연속으로 할당하는 기법
① 단일분할할당기법 : 주기억장치 내에 1개의 프로그램을 적재하는 방법
○ 가장 단순한 기법으로 초기의 운영체제에서 사용하던 기법
○ 오버레이 기법 : 하나의 프로그램을 여러 조각으로 분할·적재하는 기법
○ 스워핑 기법 : 하나의 프로그램을 다른 프로그램으로 교체하는 기법
② 다중분할할당기법 : 고정분할할당기법(MFT), 가변분할할당기법(MVT)으로 분류
⑵ 분산할당기법 : 프로그램을 주기억장치 내에 분산하여 할당하는 기법, 오버레이의 확장, 가상기억장치에서 사용
① 가상기억장치 : 보조기억장치의 일부를 주기억장치처럼 사용하는 것
② 페이징 기법 : 프로그램을 동일한 크기로 나눈 단위(페이지)를 블록으로 사용하는 기법
○ 특징 : 외부 단편화는 발생하지 않으나 내부 단편화는 발생할 수 있음
○ 페이징 기법의 주소 변환
○ 가상주소 형식 : 페이지 번호(p) - 변위값(d)
○ 페이지 맵 테이블(FMT) : 페이지 번호(p) - 페이지 프레임 번호(p') - 상태 비트
○ 실기억주소 형식 : 페이지 프레임 번호(p') - 변위값(d)
③ 세그멘테이션 기법 : 프로그램을 가변적인 크기로 나눈 단위(세그먼트)를 블록으로 사용하는 기법
○ 특징
○ 기억장치의 사용자 관점 : 프로그램 작성 시 내용으로 구분한 영역 단위를 교체 단위로 사용
○ 기억장치 보호 키 : 세그먼트가 다른 세그먼트의 영역을 침범하지 않도록 하는 것
○ 각 세그먼트는 고유한 이름과 크기를 가짐
○ 세그멘테이션 기법의 주소 변환
○ 가상주소 형식 : 세그먼트 번호(s) - 변위값(d)
○ 세그먼트 맵 테이블(SMT) : 세그먼트 번호(s) - 세그먼트 크기(L) - 기준번지(d)
○ 실기억주소 = 세그먼트 기준번지(d1) + 변위값(d2)
⑶ 단편화(Fragmentation)
① 내부 단편화(Internal Fragmentation) : 분할영역이 프로그램의 크기보다 커서 사용되지 않고 남은 빈 공간
② 외부 단편화(External Fragmentation) : 분할영역이 프로그램의 크기보다 작아서 할당되지 않은 전체 영역
③ 단편화 해결 기법 : 통합 기법(인접한 단편화들을 통합), 압축 기법(단편화된 공간을 한쪽 끝으로 옮김)
3. 페이지 교체 : 기억장치 교체전략 [목차]
⑴ 페이지 부재(Page Fault)가 발생했을 때 어떤 페이지 프레임을 선택하여 교체할 것인지 결정하는 기법
⑵ 알고리즘 : OPT, FIFO, LRU, LFU, NUR, SCR
⑶ 페이지 크기↑ : 페이지 부재율↑, 페이지 단편화 ↓, 입·출력 효율 ↑, FMT 크기 ↓, 불필요한 내용까지도 포함
⑷ 페이지 프레임 수↑ : PFF↑
① Belady의 모순 현상 : FIFO 페이지 교체 알고리즘에서 페이지 프레임 수를 증가할 때 PFF가 증가하는 현상
⑸ 주기억장치 관리
① 지역성 : 프로세스가 실행되는 동안 주기억장치가 일부 페이지만 집중적으로 참조한다는 이론
○ 시간구역성 : 루프, 스택, 부 프로그램, 카운팅, 집계
○ 공간구역성 : 배열, 순차적 코드, 변수
② 워킹 셋 : 프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합
③ 페이지 부재 빈도(PFF, Page Fault Frequency) : 페이지 프레임 수의 상한선, 하한선이 존재
④ 프리페이징(Prepaging) : 처음의 과도한 페이지 부재를 방지하기 위해 한꺼번에 페이지를 적재하는 기법
⑤ 스래싱(Thrashing)
○ 다중 프로그래밍 정도가 높아지면서 프로세스의 처리 시간보다 페이지 교체 시간이 더 많아지는 현상
○ 다중 프로그래밍 정도가 높아지면서 CPU 이용률이 높아지다가 PFF 급증에 따라 CPU 이용률이 급감
4. 연관기억장치 [목차]
⑴ 연관기억장치(Associative Memory) : CAM(Content Addressable Memory)이라고도 함
① 기억된 내용의 일부를 이용하여 자료에 접근할 수 있는 장치
② 정보 검색이 신속하지만 병렬 판독 논리회로를 갖고 있어 하드웨어 비용이 증가
③ Mapping Table을 사용
⑵ 캐시 메모리
① CPU와 주기억장치 사이에 위치한 연관기억장치로 SRAM으로 만들어짐
② 램과 디스크 사이에 생성된 임시 메모리로서 (상대적으로 느린) 디스크 대비 데이터를 빠르게 읽을 수 있게 함
③ 캐시의 분류
○ 레벨1(L1) 캐시 : 마이크로 프로세서 구조 안에 있는 캐시
○ 레빌2(L2) 캐시 : 마이크로 프로세서 구조 밖에 있는 캐시
입력: 2017.08.13 09:13
수정: 2024.01.12 13:58
'▶ 자연과학 > ▷ 운영체제' 카테고리의 다른 글
【운영체제】 총론 5강. 다중/분산 운영체제 (0) | 2017.08.06 |
---|---|
【운영체제】 총론 4강. 보조기억장치 관리 (0) | 2017.08.06 |
【운영체제】 총론 2강. 프로세스 관리 (0) | 2017.08.06 |
【운영체제】 총론 1강. 개요 (0) | 2017.08.06 |
【운영체제】 각론 3강. MS-DOS (0) | 2016.06.27 |
최근댓글