연속 메모리 할당 기법
- 운영체제가 프로세스에 연속적인 메모리 공간을 할당하는 방법
- 하나의 프로세스는 메모리 주소 공간에서 연속적으로 존재하게 됨
- 고정 크기 메모리 할당, 가변 크기 할당 존재
- 고정 크기 메모리 할당 : 물리적인 메모리 공간을 고정된 크기로 나누어 프로세스에 고정된 크기만큼 할당
- 가변 크기 할당 : 프로세스의 크기에 맞춰 동적으로 메모리 할당
외부 단편화와 내부 단편화
외부 단편화
- 프로세스를 할당하기 어려울 만큼 작은 메모리 공간들로 인해 메모리가 낭비되는 현상
- 프로세스가 사용할 메모리 공간이 300MB라 가정할 때, 흩어져 있는 빈 메모리 공간은 300MB가 넘지만, 연속적인 300MB는 존재하지 않아 프로세스에 메모리를 할당하지 못하는 상황
내부 단편화
- 메모리를 할당할 때 프로세스가 필요한 양보다 더 큰 메모리가 할당되는 상황에서 메모리가 낭비되는 현상
- 프로세스가 사용할 메모리 공간이 300MB라 가정할 때 실제 할당된 공간이 500MB면 200MB가 낭비
메모리에 빈 공간이 여러 개인 경우
- 최초 적합(First Fit) : 운영체제가 메모리 내에 최초로 발견된 빈 공간에 프로세스 배치
- 최적 적합(Best Fit) : 운영체제가 메모리 내의 빈 공간을 모두 검색하고, 적재될 수 있는 가장 작은 공간에 프로세스 배치
- 최악 적합(Worst Fit) : 운영체제가 메모리 내의 빈 공간을 모두 검색하고, 적재될 수 있는 가장 큰 공간에 프로세스 배치