728x90
728x90
Internal Fragmentation(내부 단편화)
Partitioning 상황에서 발생한다.
Partition의 크기가 프로세스의 크기보다 커서 메모리가 남지만, 다른 프로세스가 사용할 수 없는 상태를 말한다.
- 100MB의 공간(Partition)에 Process C를 할당했다.
- 20MB의 여유 메모리가 존재하지만 Process C 에게 할당되어 사용할 수 없다.
- 이를 내부단편화라고 한다.
External Fragmentation(외부 단편화)
남아있는 메모리의 크기가 실행하고자 하는 프로세스보다 크지만, 연속적이지 않은 공간에 존재하여 실행하지 못하는 현상을 의미한다.
- 50MB의 두 여유 메모리가 존재하고 총 100MB의 여유 메모리가 존재한다.
- 그러나, 연속적이지 않은 공간에 존재하여 80MB인 Process C를 실행할 수 없다.
- 이를 외부단편화라고 한다.
- Compaction을 사용하여 외부단편화를 줄일 수 있다.
- Compaction : 흩어져 있던 공간을 하나의 연속적인 공간으로합치는 기법
- 구현이 복잡하다.
참고
[운영체제] 내부 단편화, 외부 단편화란? | 외부단편화 해결 방법
내부 단편화 (Internal Fragmentation) 내부 단편화란 주기억장치 내 사용자 영역이 실행 프로그램보다 커서 프로그램의 사용 공간을 할당 후 사용되지 않고 남게 되는 현상을 말한다. 예를 들어 아래
code-lab1.tistory.com
728x90
728x90
'Computer Science > Operating System' 카테고리의 다른 글
Segmentation(세그멘테이션) (0) | 2023.04.03 |
---|---|
가상 메모리(Virtual Memory), 페이징(Paging) (1) | 2023.04.02 |
Thread Pool(스레드 풀) / Monitor(모니터) / Fork-Join(포크-조인) (1) | 2023.03.08 |
Thread Safe(스레드 안전) (0) | 2023.03.08 |
IPC(Interprocess Communication) 프로세스 간 통신 (0) | 2023.03.08 |