dongdorodongdong
가상기억장치의 관리기법 본문
개요
- 보조기억장치의 일부분을 주기억장치처럼 사용
- 용량이 적은 주기억장치를 마치 큰 용량이 있는 것처럼 사용
- 프로그램을 여러 개의 작은 블록으로 나눔
- 프로그램 수행 시 요구되는 블록만 주기억장치에 불연속적으로 할당
- 주기억장치보다 용량이 큰 프로그램을 실행하기 위해 사용
- 가상기억장치의 주소를 주기억장치의 주소로 변환하는 작업이 필요 (Mapping)
구현 기법
- 고정 분할(정적)
- Paging - 가변 분할(동적)
- Segmentation
Paging 기법
- 정의
- 가상기억장치에 보관되어 있는 프로그램과 주기억장치의 영역을 동일한 크기로 나눔(나눈 단위는 페이지 프레임) - Mapping(주소변환)
- 가상주소(보조기억장치) → 실주소(주기억장치) - 특징
- 주소 변환을 위해 페이지 맵핑 테이블이 필요
- 기억장소 낭비 - Page Fault
- P/G 실행 시 참조한 페이지가 주기억장치에 없는 현상 - 페이지 크기가 작을 때
- 단편화 감소
- 페이지를 주기억장치로 이동하는 시간이 줄어듦
- 프로그램 수행에 필요한 내용만 주기억장치에 적재할 수 있음
- Locality에 더 일치할 수 있기 때문에 기억장치 효율이 높아짐
- 페이지 맵핑 테이블의 크기가 커짐
- 디스크 접근 횟수가 많아져서 전체적인 I/O 시간이 늘어남
- 더 효율적인 Working Set을 유지할 수 있음 - 페이지 크기가 클 때
- 페이지 맵핑 테이블의 크기가 작음
- 디스크 접근 횟수가 줄어들어 전체적인 I/O 시간이 줄어듬
- 단편화 증가
- 한 개의 페이지를 주기억장치로 이동하는 시간이 늘어남
- 프로그램 수행에 불필요한 내용도 적재될 수 있음
Segmantation 기법
- 가상기억장치에 보관되어 있는 프로그램을 다양한 크기의 논리적인 단위로 나눈 후 주기억장치에 적재시켜 실행
- 메모리 절약 - 논리적인 크기로 나눈 단위를 세그먼트
- 각 세그먼트는 고유한 이름과 크기를 갖음
- 다른 세그먼트에게 할당된 영역을 침범X
- 기억장치 보호키가 필요 - 외부단편화O
'Operating System' 카테고리의 다른 글
Spooling / Buffering (0) | 2019.06.13 |
---|---|
Interuppt (인터럽트) (0) | 2019.06.12 |
컴퓨터 시스템 구조 (0) | 2019.06.10 |
UNIX (0) | 2019.04.12 |
System S/W (0) | 2019.04.12 |