주기억장치에 저장되는 프로그램에는 사용자가 작성 응용프로그램과 시스템 프로그램이 있다. 일반 사용자 응용프로그램은 실행될 때만 주기억장치에 저장되었다가, 수행이 종료되면 다른 프로그램으로 대체되거나 삭제되고 전원이 꺼지면 삭제된다. 반면 시스템 프로그램은 컴퓨터가 구동을 시작해서 종료할 떄까지 주기억장치에 유지되므로 시스템 프로그램과 사용자 응용 프로그램 저장 영역을 분리해야한다. [ 그림 7-7 ]은 주기억장치의 분할 구조를 나타낸 것으로 시스템 프로그램 영역과 사용자 응용 프로그램 영여으로 분류된 것을 확인할 수 있다.

① 시스템 프로그램 영역

② 사용자 응용프로그램 영역

[ 그림 7-7 ]

주기억장치는 고가라 용량에 제한이 있으므로 사용자 응용프로그램 영역을 효율적으로 사용하기 위한 여러 가지 사항을 고려해야 한다.

① 단일 사용자 할당 기법

② 고정 분할 할당 기법

③ 가변 분할 할당 기법

(가) 기억 장소의 집약

(나) 공백 영역을 찾는 알고리즘

[ 그림 7-11 ]은 공백 영역을 찾는 알고리즘을 나타낸 것이다. 새로운 17KB의 기억 장소를 필요로 하는 프로그램이 주기억장치로 들어오면, 최초 적합 방법의 경우는 ①에 프로그램이 적재된다. 최적 적합 방법의 경우는 ④에 프로그램이 적재되고 최악 적합 방법의 경우는 ③에 프로그램이 적재된다.