### Variable Partition Memory Allocation ### : 메모리의 가변 크기의 partitions에 process를 할당하는 것이다. (process가 할당 될 때 process의 크기를 보고 partition을 할당하는 것) => 각 partition에는 정확히 하나의 process가 포함될 수 있다. : internal fragmentation 문제는 해결 but external fragmentation문제는 발생 할 수 있다. : 효율성을 위한 다양한 partition 크기(주어진 process 요구에 따라 크기 조정) : Hole은 사용 가능한 메모리 block이다. (다양한 크기의 hole이 메모리 전체에 흩어져 있다..
### Contiguous Memory Allocation ### : 적재되는 process의 순서대로 memory를 순차적으로 나누어서 할당해주는 것 (여러 process가 memory영역을 인접하게 할당 받는 형태로 process 다른 process 영역을 침범 할 수 있다.) => limited register는 logical address 범위가 포함된다. (각 logical address는 limited register보다 작아야한다.) : Main 메모리는 OS 및 multiple user process를 모두 지원해야 한다. : 가장 효율적인 방법으로 제한된 main 메모리를 할당해야 한다. : Base register에는 최소 물리적 주소 값이 포함된다. ### Fixed Par..
### Memory Management Unit(MMU) ### : virtual address(logical address) 에서 physical address로 run-time mapping을 수행하는 하드웨어 장치 + : base register은 relocation register라고도 한다. : relocation register으로 logical address을 physical address로 변환 시킨다. (physical address에 바인딩 된 logical address) : relocation register의 값은 메모리로 전송 될 때 user 프로세스에 의해 생성된 모든 주소에 추가된다. : user 프로그램은 logical address를 처리한다.( rear phy..
### Address Binding ### : process instruction, data가 실제 할당 될 주소 값을 결정하고 기록하는 작업 - : 메모리 주소에 대한 명령어 및 데이터의 주소 binding되는 시간 => 1) compile time, 2) load time, 3) execution time - : 메모리 위치가 알려진 경우 absolute code(physical address 값을 강제로 결정, 고정)가 생성 될 수 있다. : 위치 변경 시작시 code를 다시 *compile 해야한다. - : compile시 메모리 위치를 모르는 경우 relocatable code를 생성해야 한다...
### Basic Hardware ### : 프로그램이 실행 되려면 disk로부터 프로그램을 읽어 메모리에 적재 해야한다. : cpu는 main memory에 적재된 process instruction, data에 접근해서 관련 내용을 register로 읽은 후 처리 작업 실행한다. (cpu는 main memory와 register에 바로 접근할 수 있다.) : 메모리 장치는 주소 + 읽기 요청 or 주소 + 데이터 및 쓰기 요청을 이행한다. : 올바른 작동을 위해서는 메모리 보호가 필요하다.(cache 메모리 추가) : 각 process를 침범하는 것을 막기 위해서 만들었다(구역 설정) : base reg..