[면접] 메모리 단편화 ( Memory Fragment )

2021. 11. 23. 17:19CS지식/면접 준비

메모리 단편화란?

메모리 단편화란 메모리의 공간이 작게 나뉘어져 사용 가능한 메모리가 충분하지만 할당이 불가능한 상태를 메모리 단편화라고 지칭한다.

메모리 단편화에는 크게 '내부 단편화'와 '외부 단편화' 가 있다.

내부 단편화

내부 단편화란 메모리를 할당할 때 프로세스가 필요한 양보다 더 큰 메모리를 할당해서 프로세스에서 사용하는 메모리 공간이 낭비되는 상황이다.

외부 단편화

외부 단편화란 메모리가 할당되고 해제되는 작업이 반복될 때 작은 메모리가 중간중간 존재하게 된다. 이 때 중간중간에 생긴 사용하지 않는 메모리가 많이 존재해서 총 메모리 공간은 충분하지만 실제로 할당할 수 없는 상황

해결방법

  1. 페이징 기법 ( 외부 단편화 해결 / 내부 단편화 존재 )

    보조기억장치를 이용한 가상메모리를 같은 크기의 블록으로 나눈 것을 페이지라고 하고 RAM

    페이지와 같은 크기로 나눈 것을 프레임이라고 할 때, 페이징 기법이란 사용하지 않는 프레임을

    페이지에 옮기고, 필요한 메모리를 페이지 단위로 프레임에 옮기는 기법.

  2. 세그멘테이션 기법 ( 내부 단편화 해결 / 외부 단편화 존재 )

    메모리에 적재될 때 빈 공간을 찾아 할당하는 기법이다.

  3. 메모리 풀

    필요한 메모리 공간을 필요한 크기, 개수 만큼 사용자가 직접 지정하여 미리 할당받아 놓고 필요할 때마다 사용하고 반납하는 기법

'CS지식 > 면접 준비' 카테고리의 다른 글

[면접] Dining philosophers  (0) 2021.12.01
[면접] 교착 상태 ( Dead Lock )  (0) 2021.11.23