1. 물리 메모리, 가상 메모리
ㅇ 물리 메모리 : 주기억장치
- 한편, 주기억장치 내 개별 기억 셀들을 식별하기 위한 물리 주소가 있게 됨
ㅇ 가상 메모리 : CPU가 생성
- 컴퓨터가 비록 상대적으로 작은 물리 메모리를 가지고 있어도,
- 응용 프로그램으로 하여금 큰 물리 메모리를 사용하는 듯한 환상을 갖게하는 기술
- 통상, 운영체제 커널이 하는 주요 역할 중 하나
ㅇ 장점
- 결국, 각 프로세스가 적은 물리 메모리를 사용함으로써,
- 동시에 많은 프로세스가 물리 메모리에 존재 가능하므로,
- 메모리 및 CPU 가동율이 향상됨
2. 가상 메모리 관리 기법 (가상 기억 장치)
ㅇ 프로세스 메모리 전체가, 물리 메모리에 적재되지 않더라도 실행 가능케하는 기법
- 이 기술은 메모리의 실제 위치와는 구별되는 주소 공간의 개념을 필요로 함
ㅇ 가상기억장치 구성
- 주기억장치
- 메모리관리장치(MMU)
. 대부분의 가상 메모리 시스템은,
. 물리주소에 접근하기 위해 프로세서에서 제공하는 MMU와 상호 협력 함
- 보조기억장치
ㅇ 가상기억장치 역할
- 다수 프로세스들이 동시 실행 가능토록, 각각에 주소 공간 제공
- 각 프로세스 고유 메모리 자원을 보호해 줌
- 필요시 마다 프로세스 간에 주소공간을 공유할 수 있게 함
- 주소공간을 프로그램에게 투명하게 제공 관리해 줌
ㅇ 주요 구현 기법
- 페이징(Paging) 방식
. 각 프로그램이 사용하는 메모리를 페이지라는 고정 크기 단위로 구분
. 운영체제 커널은 각 프로세스에 대한 페이지 테이블(페이지 위치)을 유지관리
. 만일 현재 물리적 메모리에 없는 페이지를 참조하면
.. 페이지 폴트(Page Fault)가 발생되고,
.. 해당 페이지를 찾아서 메모리에 적재하는 동안 프로세스 실행이 잠시 중지됨
- 세그먼테이션(Segmentation) 방식
. 프로그램,데이터 등 다양한 크기의 가변 독립 개체(세그먼트)에 의한 메모리 관리 기법
. 각 세그먼트 마다 연속적이어야 하고, 외부 파편화 현상으로 메모리 낭비가 심한편
- 페이지화된 세그먼테이션 방식
. 위 두 방식의 장점을 절충
3. 스왑 영역 (페이지 파일, 스왑 파일)
ㅇ 가상 메모리 관리를 위해 사용되는 디스크 영역
ㅇ 페이지 적중 (Page Hit) : 참조 주소가 실제 주기억장치에 있을 때
ㅇ 페이지 부재 (Page Fault) : 참조 주소가 보조기억장치에 있을 때