본문 바로가기
Computer Science/운영체제

외부단편화와 내부단편화

by sy.cho__ 2017. 10. 7.

외부단편화 (External fragmentation)


프로그램을 할당하고 난 다음 아주 작은 크기로 남은 조각들이 생겨 사용할 수 없는 작은 공간들이 많이 생길 수 있습니다.


이 공간들을 합치면 요구되는 공간을 할달할 수 있음에도 불구하고 연속적인 공간이 아니라서 할당하지 못하는 상황을 외부 단편화라고 합니다.


아래 그림을 통해 살펴보겠습니다.


프로세스 A,B,C사이의 총 8K의 공간이 남아있습니다.


프로세스  D는 7K의 공간을 필요로 하므로, 남은 공간은 충분합니다.


그러나 분할하여 할당할 수 없으므로 프로세스D를 할당할 수 없는 문제가 발생합니다.



내부단편화 (Internal fragmentation)


메모리를 할당하는 최소 블록 크기를 10K라고 가정합시다.


만약 7K만큼의 공간을 사용하더라도 10K를 할당해야되고 나머지 3K를 낭비하게 됩니다.


이러한 문제를 내부단편화라고 합니다. 



이러한 단편화 문제들을 해결하기 위한 여러 방법이 존재합니다.


해결방법에 대해서는 다음 글에서 다루도록 하겠습니다.


반응형