- 연속 메모리 관리: 프로그램 전체가 메모리에 연속적으로 할당
- 고정 분할: 주기억장치가 고정된 파티션으로 분할(내부 단편화 발생)
- 동적 분할: 파티션들이 동적 생성되며 자신의 크기와 같은 파티션에 할당(외부 단편화 발생)
- -> 단편화 발생
- 불연속 메모리 관리
- 용어
- 페이지: 프로세스를 고정적 크기로 나눈 단위
- 세그먼트: 프로세스를 가변적 크기로 나눈 논리적 단위
- 프레임: 실제 메모리를 고정적 크기로 나눈 단위
- 페이징: 프로세스를 동일한 크기의 페이지로 분리, 메모리는 해당 페이지와 동일한 크기의 프레임으로 분리해서 메인 메모리에 불연속적으로 적재
- 외부 단편화X
- 내부 단편화O -> 프로세스 크기가 페이지 크기의 배수가 아닐 결우
- 세그멘테이션: 프로세스를 가변적인 크기의 세그먼트로 분리하고 메모리에 적재
- 외부 단편화O
- 내부 단편화X
- 용어
- 단편화 (Fragmentation)
- 내부 단편화: 파티션의 크기가 프로세스보다 크면 파티션의 남는 메모리가 낭비되는 상황
- 외부 단편화: 남아있는 메모리의 크기가 실행할 프로세스보다 크지만 연속적이지 않아 실행 불가능한 상황
- 가상 메모리 (Virtual Mememory)
- 물리적 메모리보다 큰 메모리 공간을 프로세스에 제공하는 기술
- 메인 메모리와 보조 메모리 묶어 하나의 메모리처럼 사용
- 가상의 주소를 사용해 논리적인 연속성 제공
- 메모리 관리로 인한 오버헤드 발생
'운영체제' 카테고리의 다른 글
메모리 (0) | 2024.03.27 |
---|---|
페이지 교체 알고리즘 (0) | 2024.03.27 |
Race Condition (경쟁 상태) (0) | 2024.03.21 |
데드락(Deadlock, 교착 상태) (0) | 2024.03.21 |
CPU 스케줄링(CPU Scheduling) (0) | 2024.03.20 |