티스토리 뷰

### 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에는 최소 물리적 주소 값이 포함된다.

 

출처: Operating System Concepts 10th Ed (John Wiley & Sons, Inc. 2018)

 

 

 

 

### 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 >

출처: Operating System Concepts 10th Ed (John Wiley & Sons, Inc. 2018)

반응형
공지사항
최근에 올라온 글