□ 주기억장치관리 방법


 ■ 반입기법(Fetch)

    보조기억장치의 데이터를 주기억장치로 옮기는 시점을 결정하는 방법입니다.

    - 요구 반입 정책

      수행 중인 프로세스에 의하여 호출된 페이지나 세그먼트를 주기억장치로 옮기는 기법이며 페이지를

      선택하는데 있어 오버헤드는 적지만 페이지를 할당받기 위해서는 대기시간이 길게 소요됩니다.

    - 예상 반입 정책

      프로세스에 의해 요청될 페이지나 세그먼트를 미리 예측하여 프로세스가 이를 요구하기 전에 주기억

      장치로 적재시키는 기법을 말하며, 예측 결정이 맞았다면 프로세스의 실행 시간은 매우 감소하나 어

      느 페이지를 주기억 장치로 옮길 것인지를 결정하는데 있어서는 오버헤드가 크다는 단점이 있습니다.


 ■ 배치기법(Placement)

    페이지나 세그먼트를 주기억장치의 어느 곳에 적재할 것인가를 결정하는 정책입니다.

    - 최초적합(First Fit)

      할당 가능 영역의 최초 영역을 찾아서 첫 번째 배치시키는 방법입니다.

    - 최적적합(Best Fit)

      단편화를 가장 적게 남기는 영역을 찾아서 배치시키는 방법입니다.

    - 최악적합(Worst Fit)

      단편화를 가장 많이 남기는 방법으로 가장 빠른 속도를 가지지만 메모리 활용 효율이 가장 나쁩니다.


 ■ 교체기법(Replacement)

    주기억장치의 모든 영역이 사용 중일 경우 어떤 영역의 데이터를 주기억장치에서 제거하여 교체할 것인

    가를 결정하는 정책입니다.

   - 최적화 기법

     가장 오래 사용되지 않을 것으로 예상되는 Page를 교체하는 기법으로 이론적으로 가장 최적의 방식이

     나 현실적으로는 구현이 불가능합니다.

   - FIFO(First In First Out)

     주기억장치의 적재순서에 제일 처음 적재되었던 Page를 교체하는 기법입니다.

   - LRU(Least Recently Used)

     가장 오래 사용하지 않은 Page를 교체하는 기법입니다.

   - LFU(Least Frequently Used)

     사용 횟수가 가장 적은 Page를 교체하는 기법입니다.

   - NUR(Not Used Recently)

     최근에 전혀 사용되지 않은 Page를 교체하는 기법입니다.



□ 기억장치의 단편화(Fragmentation)

 프로세스들이 적재되도록 기억공간을 분할하는 과정에서 작업프로세스의 크기가 분할 공간에 비해 크거나

 작아서, 대기 중인 어떤 작업프로세스도 적재될 수 없는 상태의 분할된 기억공간을 '단편화공간'이라 한다.


 ■ 내부단편화(Internal Fragmentation)

    페이징기법을 사용하여 기억공간을 일정하게 고정된 크기로 나누어 프로세스를 적재할 경우, 하나의 프

    로세스를 적재하고 나서 페이지 내부에 남아 있게 되는 공간을 말합니다.


 ■ 외부단편화(External Fragmentation)

    다수의 프로세스들은 독립적으로 적재 및 실행하기 위한 기억공간들을 지속적으로 할당 및 제거하는 과

    정에서 여기저기에 남게 되는 기억공간으로서 현재 대기 중인 작업프로세스를 적재하기에는 크기가 작

    은 분할된 공간들을 의미합니다.


 ■ 단편화의 발생 원인

    - 사용자 작업의 크기가 정확하게 분할에 맞지 않을 때

    - 분할이 너무 작아서 어떤 작업도 적재될 수 없을 때

    - 배치 기법의 특성에 따라서 단편화를 최소화할 수 있지만 처리속도 등의 오버헤드가 발생합니다.


 ■ 단편화 해결 방법

    페이징(Paging)방식으로 분할되는 페이지(Page)의 크기를 줄이면, 어느 정도 해결되지만, 페이지 테이블

    (Page Table)의 엔트리 크기가 증가하여 부하가 발생하게 됩니다.

   - 압축(Compaction)

     주기억장치 내에 분산되어 있는 단편화된 빈 공간을 결합하여 하나의 큰 가용 공간을 만드는 작업, 쓰레

     기 수집(Garbage Collection)

   - 통합(Coalescing)

     주기억장치 내에 인접해 있는 단편화된 공간을 하나의 공간으로 통합합니다.


     페이징은 내부단편화를 발생하지만, 외부단편화를 발생하지 않고 세그먼테이션은 내부단편화를 발생

     하지만, 외부단편화를 발생합니다.

'ComputerTerm' 카테고리의 다른 글

유닉스와 리눅스 파일시스템의 종류  (0) 2017.12.07
윈도우 파일시스템의 종류 및 기능 FAT, NTFS  (0) 2017.12.06
기억장치의 종류  (0) 2017.12.04
프로세스 스케줄링  (0) 2017.12.03
프로세스에 대하여  (0) 2017.12.02

+ Recent posts