티스토리 뷰
(49) Contiguous Memory Allocation & Fixed Partition Memory Allocation (Main Memory)
geonwoopaeng@gmail.com 2020. 9. 28. 11:59### Contiguous Memory Allocation ###
: 적재되는 process의 순서대로 memory를 순차적으로 나누어서 할당해주는 것
(여러 process가 memory영역을 인접하게 할당 받는 형태로 process 다른 process 영역을 침범 할 수 있다.)
=> limited register는 logical address 범위가 포함된다. (각 logical address는 limited register보다 작아야한다.)
: Main 메모리는 OS 및 multiple user process를 모두 지원해야 한다.
: 가장 효율적인 방법으로 제한된 main 메모리를 할당해야 한다.
: Base register에는 최소 물리적 주소 값이 포함된다.
### Fixed Partition Memory Allocation ###
< Fixed partition >
: physical 메모리를 주어진 수 /(나누기) permanent partitions
=> 각 partitions에서 하나의 process를 load하고 실행 할 수 있도록 한다. (각 partition의 크기는 같거나 다를 수 있다)
: 메모리에 업로드 할 수 있는 프로그램 수는 고정되어 있으며 실행할 수 있는 최대 프로그램 크기는 제한되어 있다.
: External fragmentation and internal fragmentation 문제가 발생한다.
< Fragmentation (단편화) >
- < External fragmentation >
: 총 메모리 공간이 요청을 충족시키기 위해 존재하지만 연속적이지 않다.
: 남는 memory공간이 있는데 memory관리를 잘못해서 해당 공간들이 분산되어 다른 process에게 해당 공간을 할당할 수 없게 되는 경우
=> 공간은 가용가능한데 연속성 문제로 인해 공간을 사용할 수 없는 경우
(1개 partition에 1개 process)
- < Internal fragmentation >
: 할당 된 메모리는 요청된 메모리보다 약간 클 수 있다.
: process가 memory공간을 차지했는데 (memory 공간 > process가 요구한 공간) 인 경우
- < Compaction (압축) >
: 사용 가능한 모든 메모리를 하나의 큰 block에 함께 배치하기 위해 메모리 내용을 섞는다.
: 재배치가 동적이고 execution(실행) 시간에 완료된 경우에만 가능하다.
: 몇가지 시스템 overhead가 발생할 수 있다.
< Fragmentation in fixed partition >
'운영체제 > 이론' 카테고리의 다른 글
(51) Paging (0) | 2020.10.05 |
---|---|
(50) Variable Partition Memory Allocation & Dynamic Storage Allocation (Main Memory) (0) | 2020.09.28 |
(48) Memory Management Unit(MMU) & Dynamic loading & Dynamic linking (Main Memory) (0) | 2020.09.28 |
(47) Address Binding & Space (Main Memory) (0) | 2020.09.28 |
(46) Basic Hardware (Main Memory) (0) | 2020.09.28 |