Overlay 2

[메모리] 단일 프로그래밍 연속 메모리 할당

단일 프로그래밍 환경에서의 연속 메모리 할당은 단일 사용자 환경의 연속 메모리 할당이라고도 할 수 있다.메모리 할당(=적재)에서 말 그대로 연속적으로 메모리를 적재하는 것이 연속 메모리 할당이다. 연속 메모리 할당은 다시 한번에 하나의 프로그램만 실행시키는 단일 프로그래밍 환경과 여러 프로그램을 동시에 메모리에 적재하고 실행시키는 다중 프로그래밍(=멀티 프로그래밍) 환경으로 나눌 수 있으며 여기서는 단일 프로그래밍 환경을 다룬다.  초기 컴퓨터 시스템에서 단일 사용자(하나의 프로그램)만이 실행될 수 있었고 자원도 해당 프로그램 혼자만 사용하였다. 그리고 프로그램은 메모리보다 클 수 없었으며 프로그래머가 직접 배치 과정을 수행하여 항상 같은 메모리 위치에 적재하였다.그러나 시스템 설계자들은 기본 기능을 구..

[메모리] 메모리 관리

메모리 할당 방식에 대하여 구체적으로 살펴보기 앞서 메모리 관리 용어를 살펴본다. 동적 적재(Dynamic Loading) 초기 컴퓨터 시스템에서는 메모리의 크기가 프로세스의 크기를 제한하였다. 따라서 바인딩을 최대한 늦게 수행하여 실행 직전에 주소를 확정하면 메모리를 효율적으로 운영할 수 있는 동적 적재 방법이 제안되었다.동적 적재는 모든 루틴을 메모리에 적재하지 않고 재배치 가능한 형태로 디스크에 저장메인 프로그램만 먼저 메모리에 적재하여 수행메인 프로그램이 다른 루틴을 호출할 때 메모리에 적재되어 있는지 조사적재되어 있지 않다면 해당 루틴을 메모리에 적재하고 프로그램의 주소 테이블 갱신동적 적재는 사용하지 않는 프로그램(=루틴)을 메모리에 적재하지 않으므로 메모리를 효율적으로 사용할 수 있으며 전체..