보조기억장치의 일부를 주기억장치처럼 사용하는 것으로 용량이 작은 주기억장치를 마치 큰 용량을 가진 것처럼 사용하는 기법이다.
프로그램을 여러 개의 작은 블록 단위로 나누어서 가상기억장치에 보관해놓고, 프로그램 실행 시 요구되는 블록만 주기억장치에 불연속적으로 할당하여 처리한다.
- 장점 : 나누어 사용하므로 단편화 해결, 주기억장치의 이용률 향상, 다중 프로그래밍의 효율 향상
가상기억장치에 보관되어 있는 프로그램과 주기억장치의 영역을 동일한 크기로 나눈 후 나눠진 프로그램을 동일하게 나눠진 주기억장치의 영역에 적재시켜 실행하는 기법
- 외부 단편화 발생 X, 내부 단편화 발생 O : 페이지의 크기가 4KB이고 사용할 프로그램이 17KB라면 프로그램은 페이지 단위로 4KB씩 나누어지게 되므로, 마지막 페이지의 실제 용량은 1KB(17KB - 4 * 4KB)가 되고, 이것이 주기억장치에 적재되면 3KB의 내부 단편화가 발생하게 된다.
- 페이지 맵 테이블의 사용으로 비용이 증가하고 처리 속도가 감소된다.
- Page : 프로그램을 일정한 크기로 나눈 단위
- Page frame : 페이지 크기로 일정하게 나누어진 주기억장치의 단위
- Page Map Table : 가상기억장치(논리적 가상 주소)에서 주기억장치(물리적 실 기억 주소)로의 주소 변환을 위한 페이지의 위치 정보를 갖고 있는 테이블
페이지의 크기가 작을 경우
- 페이지 단편화가 감소, 한 개의 페이지를 주기억장치로 이동시키는 시간 감소
- 불필요한 내용이 주기억장치에 적재될 확률이 적으므로 효율적인 워킹 셋을 유지 가능
- 페이지 맵 테이블의 크기가 커지고 매핑 속도가 늦어짐
- 디스크 접근 횟수 증가로 입출력 시간 증가
페이지의 크기가 클 경우
- 페이지 맵 테이블의 크기가 작아지고 매핑 속도 증가
- 디스크 접근 횟수 감소로 입출력 효율성 증가
- 페이지 단편화 증가, 한 개의 페이지를 주기억장치로 이동시키는 시간 증가
가상기억장치에 보관되어 있는 프로그램을 다양한 크기의 논리적인 단위로 나눈 후 주기억장치에 적재시켜 실행시키는 기법
목적 : 기억공간의 절약을 위해 사용
프로세스가 실행되는 동안 주기억장치를 참조할 때 일부 페이지만 집중적으로 참조하는 성질
프로세스가 일정 시간 동안 자주 참조하는 페이지들의 집합
프로세스의 처리 시간보다 페이지 교체에 소요되는 시간이 더 많아지는 현상