티스토리 뷰

### Variable Partition Memory Allocation ###

< Variable partition >

: 메모리의 가변 크기의 partitions에 process를 할당하는 것이다.

(process가 할당 될 때 process의 크기를 보고 partition을 할당하는 것)

=> 각 partition에는 정확히 하나의 process가 포함될 수 있다.

: internal fragmentation 문제는 해결 but external fragmentation문제는 발생 할 수 있다.

: 효율성을 위한 다양한 partition 크기(주어진 process 요구에 따라 크기 조정)

: Hole은 사용 가능한 메모리 block이다.

(다양한 크기의 hole이 메모리 전체에 흩어져 있다)

: process가 도착하면 process를 수용 할 만큼 큰 hole에서 메모리가 할당 된다.

: process 종료는 해당 partition을 해제하고 인접한 free partition을 결합한다.

< Fragmentation in variable partition >

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

 

 

 

### Dynamic Storage Allocation ###

: speed 및 storage allocation측면에서 Worst-fit 보다 First-fit, Best-fit이 더 적합하다.

- < First-fit allocation >

: 할당가능한 첫 번째 hole(available partition)에 할당한다.

: search 시간이 짧다

- < Best-fit allocation >

: 할당 가능한 것 중에 가장 딱 맞는 hole을 할당한다.(전체 목록을 search해야 한다.)

: 가장 작은 leftover hole(남는 부분) => memory 낭비가 적다.

: search 시간이 길다.

- < Worst-fit allocation >

: 가장 큰 hole을 할당한다.(전체 목록을 search해야 한다.)

: 가장 큰 leftover hole(남는 부분)이 생긴다.

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