Q. 외부단편화와 내부 단편화란?
- 외부단편화란 총 메모리 공간은 충분하지만 실제로 할당할 수 없는 경우(메모리 배치에 따라 발생하는 문제)
- 내부단편화란 메모리 할당 시 프로세스가 필요한 양보다 더 큰 메모리가 할당되어 메모리 공간이 낭비는 되는 현상
+ 메모리 단편화란
- RAM에서 메모리 공간이 작은 조각으로 나뉘어져 사용가능한 메모리가 충분히 존재하지만 할당(사용)이 불가능한 상태를 보고 메모리 단편화가 발생했다고 한다.
Q. 페이징과 세그먼테이션의 차이점은?
- 페이징은 고정 크기를 가지고, 세그먼테이션은 가변 크기를 가집니다.
- 페이징은 내부 단편화가 발생할 수 있고, 세그먼테이션은 외부 단편화가 발생할 수 있습니다.
+ 페이징(Paging)이란 (참고)
- 페이지 단위의 논리-물리 주소 관리 기법
- 논리(가상)메모리는 페이지(Page)라 불리는 고정 크기의 블록으로 나누어지고, 물리 메모리는 프레임(Frame)라 불리는 페이지와 같은 크기의 블록들로 나누어진다.
- 가상메모리 사용, 외부 단편화를 해결, 내부 단편화 존재 (페이지가 클수록 내부 단편화도 커진다.)
+ 세그먼테이션(Segmentation)이란
- 사용자/프로그래머 관점의 메모리 관리 기법
- 같은 크기의 페이지를 갖는 페이징 기법과 달리 서로 다른 크기의 논리적 단위인 세그먼트(Segment)로 분할 한다.
- 가상메모리 사용, 내부 단편화는 해결, 외부 단편화는 존재
Q. 페이징과 세그먼테이션을 쓰는 이유
- 다중 프로그래밍 시스템에서 여러 프로세스를 수용하기 위해 주기억장치를 동적분할하는 메모리 관리 작업이 필요하기 때문입니다.
반응형
'cs지식 > Operating System' 카테고리의 다른 글
[OS] 경쟁상태, 교착상태(DeadLock), 세마포어와 뮤텍스 (0) | 2021.01.28 |
---|---|
[OS] CPU스케줄링 (0) | 2021.01.25 |
[OS] IPC(Inter Process Communication) (0) | 2021.01.20 |
[OS] PCB와 Context Switching (0) | 2021.01.20 |
[OS] 시스템 콜(System Call) (0) | 2021.01.20 |