다중프로그램 시스템에 여러 프로세스를 수용하기 위해 주기억 장치를 동적 분할하는 메모리 관리 작업이 필요해서 사용한다.
연속 메모리 기법
주소 공간을 메모리의 한 곳에 연속적으로 적재하는 방식. 물리적 메모리를 다수의 분할로 나누어 하나의 분할에 하나의 프로세스가 적재된다.
고정분할 방식
- 물리적 메모리를 정해진 개수만큼 영구적인 분할로 나누고 각 분할에 하나의 프로세스를 적재하는 방식
- 외부단편화, 내부단편화가 발생할 수 있다.

가변분할 방식
- 메모리에 적재되는 프로그램의 크기에 따라 분할의 크기, 개수가 동적으로 변하는 방식
- 외부단편화가 발생할 수 있다.

- 어느 메모리 공간에 어느 프로세스를 올릴지 결정해야한다.
- 최초적합 : 가장 먼저 나오는 메모리 공간에 프로세스 적재
- 최적적합 : 가장 딱 맞는 메모리 공간에 프로세스 적재
- 최악적합 : 가장 큰 메모리 공간에 프로세스 적재
불연속 메모리 기법
하나의 프로세스가 물리적 메모리의 여러 위치에 분산되어 올라갈 수 있는 메모리 할당 기법
- 페이지 : 고정 사이즈의 작은 프로세스 조각
- 프레임 : 페이지 크기와 같은 주기억장치 메모리 조각
- 세그먼트 : 서로 다른 크기를 가진 논리적 블록이 연속적 공간에 배치되는 것
- 단편화 : 기억장치의 빈 공간 or 자료가 여러 조각으로 나뉘는 현상
단순 페이징

- 각 프로세스는 프레임과 같은 길이를 가진 균등 페이지로 나뉨
- 페이지 테이블에는 각 테이블 번호와 해당 페이지가 할당된 프레임의 시작 물리주소를 저장
가상 메모리 페이징
- 단순 페이징과 다르게, 프로세스 페이지를 모두 적재시킬 필요 없음.
- 복잡한 메모리 관리로 오버헤드 존재
단순 세그먼테이션

- 프로세스와 물리 메모리를 세그먼트로 분할
- 세그먼트 테이블에는 각 세그먼트의 기준(시작 물리주소)과 한계(세그먼트의 최대 길이)를 저장
가상 메모리 세그먼테이션
- 필요하지 않은 세그먼트들은 로드되지 않음
- 복잡한 메모리 관리로 오버헤드 존재
<참조>
'Computer Science > Operating System' 카테고리의 다른 글
| IPC(Inter Process Communication) (0) | 2023.08.26 |
|---|---|
| PCB와 Context Switching (0) | 2023.08.18 |
| 페이지 교체 알고리즘 (0) | 2023.08.06 |
| 인터럽트 (Interrupt) (0) | 2023.07.23 |
| 프로세스 & 스레드 (0) | 2023.07.23 |