운영체제 상주 영역과 사용자 프로세스 영역
운영체제 - 낮은 주소 영역 사용
사용자 프로세스 - 높은 주고 영역 사용
프로세스를 메모리에 올리는 방식
1. 연속할당(contiguos allocation)
물리적 메모리를 다수의 분할로 나누어 하나의 분할에 하나의 프로세스를 적재하도록 하는 방식
- 고정분할(fixed partition allocation) 방식 : 메모리를 고정된 크기로 미리 나누어 놓은 방식
- 융통성 떨어짐 : 프로그램의 크기보다 작을 수도 클수도 있으므로
- 외부조각(external fragmentation) : 프로그램의 크기가 미리 나누어둔 분할 보다 커서 적재를 못하여 발생하는 메모리 고간
- 내부조각(internal fragmentation) : 반대 상황, 프로그램 크기가 작아서 발생하는 남는 메모리 공간
- 융통성 떨어짐 : 프로그램의 크기보다 작을 수도 클수도 있으므로
- 가변분할 (variable partition allocation) 방식 : 프로그램의 크기에 따라 동적으로 변하는 방식
- 한번 할당한 메모리공간에 다른 프로그램이 적재 될시 해당 프로그램이 그 공간보다 크면 외부조각 발생
- 해결방안 (새로운 프로그램의 크기가 n)
- 최초적합(first-fit) 방법 :크기가 n 이상인 가용공간들 중 가장 먼저 찾는 곳에 적재
- 최적합(best-fit) 방법 : 크기가 n 이상인 가용공간들 중 가장 작은 공간에 적재
- 최악적합(worst-fit) 방법: 크기가 가장 큰 곳에 적재
- 그래도 외부조각이 발생시 해결방법
- 컴팩션(compaction) : 실행시간 바인딩 방식이 지원되는 환경에서만 가능
- 사용 중인 공간을 다 앞으로 모으로 안쓰는 공간을 다 모아서 하나의 공간으로 만드는 방법
- 컴팩션(compaction) : 실행시간 바인딩 방식이 지원되는 환경에서만 가능
2. 불연속할당 (noncontiguos allocation)
하나의 프로세스가 물리적 메모리의 여러 위치에 분산하여 적재하는 방식
- 페이징 기법 : 동일한 크기로 나누어 메모리에 올리는 기법
- 세그멘테이션 기법 : 크기는 일정하지 않지만 의미있는 단위(코드 ,데이터, 스택등)로 나누어서 메모리에 올리는 기법
- 페이지드 세그멘테이션 : 세그먼트 하나를 다수의 페이지로 구성하는 기법
'책 > 운영체제와 정보기술의 원리' 카테고리의 다른 글
7장 6. 페이지드 세그먼테이션 (1) | 2023.12.21 |
---|---|
7장 4. 페이징 기법 (0) | 2023.12.21 |
7장 2. 메모리관리와 관련된 용어 (0) | 2023.12.20 |
7 장 메모리관리 - 1. 주소 바인딩 (0) | 2023.12.19 |
6 장 CPU 스케줄링 (0) | 2023.12.18 |