Memory Protection
프로세스 내에는 메모리 관리를 위한 base 레지스터와 limit 레지스터가 존재한다. 프로세스가 할당받은 메모리 영역의 하한과 상한값을 기억하고 있는 소자이다. 이 값은 CPU 스케줄러가 프로세스를 선택할 때 디스패처가 적재한다.
Memory Allocation
메모리 할당 방법에는 크게 3가지로 나눌 수 있다.
First Fit
할당받아야할 메모리의 크기가 충분한 공간이 발견되면 바로 할당한다.
Best Fit
할당받아야할 메모리의 크기와 실제 할당받을 공간의 차이가 적은 공간에 할당한다.
Worst Fit
가장 큰 메모리 공간을 선택하여 할당한다.
Fragmentation
내부 메모리 단편화
프로세스가 필요한 메모리보다 더 많은 메모리 공간이 할당되는 것
외부 메모리 단편화
전체 메모리 중간중간에 사용하지 않는 메모리 공간이 생겨 총 여유 메모리 공간은 프로세스를 할당하기에 충분하지만 실제로는 할당할 수 없는 현상