ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Fragmentation, Paging, Segmentation
    Legacy/OS 2014. 12. 15. 01:15
    728x90

    1. Fragmentation(단편화)  - 주기억장치 상에서 사용되지 않고 낭비되는 부분적인 기억공간

    기억장치 관리 기법은 단일분할기법,다중연속고정분할기법,다중연속가변분할기법이 있는데,다중연속고정분할기법은 기억장치를 서로 다른 고정 크기로 분할하여 다수의 프로그램이 처리되도록 이용하는 방법이다. 그래서 단편화가 발생하며, 단편화는 내부 단편화와 외부 단편화가 있다. 만약 크기가 25K인 공간에 크기가 20K인 작업을 할당하면 5K가 남는데, 이 때 남겨진 5K를 내부 단편화라고 한다. 또한 25K인 공간에 크기가 29K인 작업을 할당을 하게 되면 4K가 모자라게 되는데, 외부 단편화는 내부단편화와는 다르게 작업의 크기(29K)를 외부 단편화라고 한다. 그래서 외부 단편화는 어떤 프로그램을 할당할 수 있을 만큼의 연속된 기억공간이 남아 있지 않는 경우이다.
    그리고 다중연속가변분할기법은 다중연속고정분할의 단점을 보완하여 미리 고정된 경계를 없애고 각 프로그램에서 필요로 하는 만큼의 기억장치를 프로그램 실행시 할당을 받아서 내부 단편화는 발생하지 않는다. 하지만 외부 단편화가 발생하여 이를 해결 하기 위해서 통합(인접한 공백들을 더 큰 하나의 공백으로 만드는 과정)과 압축(서로 떨어져 있는 여러 개의 낭비 공간을 모아서 하나의 큰 기억 공간을 만드는 작업이며, 모든 사용되고 있는 기억장소를 주기억장치의 한쪽 끝으로 옮김)을 사용하고 있다.



    2. Paging

    가상메모리에 고정 크기 조각 단위로 나누어 할당되어 진 것을 페이지라고 하며, 메인메모리 공간의 적재단위는 프레임이라고 한다. 이때에 페이지와 프레임의 크기는 동일하며, 가상 주소공간내의 페이지들이 주기억장치의 어느 페이지 프레임에 맵핑(가상메모리에서 메인메모리로 페이지를 옮겨 넣을 때 주소를 조정해 주는 것)되었는지 알기 위해 페이지 테이블(맵핑테이블)을 이용한다. 예를 들면 가상메모리의 주소가 1, 2, 3, 4, 5가 있다고 할때 각 페이지의 크기가 2K라고 한다. 그러면 메인 메모리의 주소가 100, 200, 300, 400, 500이 있다고 하면, 메인 메모리의 프레임의 크기도 2K로 페이지의 크기와 동일 해야한다. 그리고 그 중간에 페이지 테이블(맵핑테이블)이 있어서 페이지1-프레임100, 페이지2-프레임200과 같이 가상메모리의 가상주소를 메인메모리의 실제주소로 조정해 준다.



    3. Segmentation


    페이지 상호간의 결속도를 높이기 위해서 사용자 주소공간을 논리적인 단위로 나눈 세그먼트를 이용하는 방식으로 사용자의 메모리보는 관점을 지원한다. 세그먼터는 크기가 서로 다르고 직접적인 맵핑만을 사용하고, 기억장치 보호를 위해 기억장치 보호키를 사용한다. 또한 기억장치 할당 기법(프로그램과 데이터를 어느 곳에 적재할지 결정하는 배치기법)중에서 first-fit, best-fit을 사용하여 어떤 세그 먼터를 할당하기 위한 탐색시간이 길어질 수 있다. 예를 들어서 세그먼트영역이 1번 9K, 2번 15K, 3번 10K, 4번 30K가 있다면 10K 크기의 프로그램이 각각 first-fit, best-fit, worst-fit의 방법으로 할당하게 된다면 할당되는 곳은 전부 다르게 된다. first-fit의 경우에는 10K보다는 큰 조건하에 제일 처음에 있는 2번 세그먼트(15K)에 할당이 된다. 1번 세그먼트는 9K로 10K가 할당될 수가 없다. 그리고 best-fit의 경우에는 프로그램 10K의 크기와 가장 가깝거나 딱 맞는 세그먼트에 할당한다. 물론 세그먼트의 크기가 프로그램 크기보다 작을 경우에는 할당되지 못한다. 그래서 1번 세그먼트에는 할당될수가 없다. 여기서는 3번 세그먼트와 프로그램크기가 10K로 동일한 크기이기 때문에 3번 세그먼트에 할당되고, 마지막으로 worst-fit 경우에는 프로그램크기인 10K와 가장 많이 차이가 나면서 큰 세그먼트인 4번 세그먼트에 할당이 된다.






    [펌] : http://bluedays1029.tistory.com/5 

    'Legacy > OS' 카테고리의 다른 글

    Segmentations  (0) 2014.12.15
Designed by Tistory.