메모리 단편화
메모리 단편화
- 메모리 단편화란 분할된 주기억장치에 프로세스를 할당, 반납 과정에서 사용되지 못하고 낭비되는 기억장치가 발생하는 현상이다.
- 유형으로는 내부 단편화와 외부 단편화가 있다.
내부 단편화
내부 단편화 개념
- 내부 단편화는 분할된 공간에 프로세스를 적재한 후 남은 공간이다.
- 내부 단편화는 고정 분할 할당 방식 또는 페이징 기법 사용 시 발생하는 메모리 단편화다.
| 해결 방안 | 설명 |
| 슬랩 할당자 (Slab Allocator) | 페이지 프레임을 할당받아 공간을 작은 크기로 분할하고(캐시 집합) 메모리 요청시 작은 크기로 메모리를 할당/해제하는 동적 메모리 관리 기법 |
| 통합(Coalescing) | 인접한 단편화 영역을 찾아 하나로 통합하는 기법 |
| 압축(Compaction | 메모리의 모든 단편화 영역을 하나로 압축하는 기법 |
외부 단편화
외부 단편화 개념
- 외부 단편화는 할당된 크기가 프로세스 크기보다 작아서 사용하지 못하는 공간이다.
- 외부 단편화는 가변 분할 할당 방식 또는 세그먼테이션 기법 사용 시 발생하는 메모리 단편화이다.
| 해결 방안 | 설명 |
| 버디 메모리 할당 (Buddy Memorty Allocation) | 요청한 프로세스 크기에 가장 알맞은 크기를 할당하기 위해 메모리의 2n의 크기로 분할하여 메모리를 할당하는 기법 |
| 통합 (Coalescing) | 인접한 단편화 영역을 찾아 하나로 통합하는 기법 |
| 압축 (Compaction) | 메모리의 모든 단편화 영역을 하나로 압축하는 기법 |



