• 28. 세그먼테이션 페이징 혼용 기법

    2021. 9. 23.

    by. ahntree

    728x90

    1. 메모리 접근 권한

    메모리의 특정 번지에 접근할 수 있는 권한이다. 읽기, 쓰기, 실행, 추가 4가지 권한이 존재한다. 다만, 추가는 쓰기가 반드시 동반되어야 하기 때문에 동일한 것으로 취급한다. 그래서 이를 조합하면 총 8가지 정도의 메모리 제어 방식이 나온다.

     

    프로세스는 영역별로 접근 권한이 다르다. 다음은 각 영역별 권한에 대한 내용이다.

     

     

    코드 영역

    자기 자신을 수정하는 프로그램은 존재하지 않는다. 따라서 읽기 및 실행 권한을 가진다.

     

     

    데이터 영역

    데이터는 읽기, 쓰기가 모두 가능한 데이터와 읽기만 가능한 데이터로 나눌 수 있다. 일반적으로 모두 가능하고 상수로 선언한 변수는 읽기만 가능하다.

     

    메모리 접근 권한 검사는 가상 주소 → 물리 주소 변환이 일어날 때마다 시행된다. 권한이 없는 접근을 하려고 하면 메모리 오류인 트랩이 발생한다. 세그먼테이션이든 페이징이든 각 매핑 테이블에 이러한 메모리 접근 권한에 대한 정보를 가지고 있기 때문에 검사가 가능한 것이다.

     

     

     

    2. 세그먼테이션-페이징 혼용 기법의 도입

    앞서 얘기했듯 페이지 테이블에 메모리 접근 권한에 대한 정보를 추가해야 하는데 각 페이지마다 이 정보를 가진다면 정보도 중복될 뿐더러 용량도 많이 차지한다. 그래서 중복되는 정보는 세그먼테이션 테이블로 빼고 이를 페이지와 이어주는 형태로 이루어진다.

     

    서로 관련 있는 페이지를 하나의 세그먼테이션으로 묶고 각 세그먼트를 구성하는 페이지는 해당 테이지 테이블로 관리한다. 세그먼테이션 테이블에는 각 페이지 테이블의 시작 주소가 나와 있다.

     

     

     

    3. 세그먼테이션 페이징 혼용 기법의 주소 변환

    VA=<S,P,D> 기반이다. S는 세그먼트 번호, P는 페이지 번호, D는 해당 주소까지의 거리이다.

     

    1. 세그먼트 번호에 연결된 특정 페이지 테이블로 이동한다.
    2. 페이지 테이블에서 페이지 번호로 프레임을 찾는다.
    3. 프레임이 있다면 물리 메모리로, 없다면 스왑 영역으로 가서 D만큼 떨어진 주소를 찾는다.

     

    728x90

    '운영체제' 카테고리의 다른 글

    30. 요구 페이징  (0) 2021.09.23
    29. 캐시 매핑 기법  (0) 2021.09.23
    27. 세그먼테이션 기법  (0) 2021.09.23
    26. 페이징 기법  (0) 2021.09.22
    25. 가상 메모리의 개요  (0) 2021.09.22

    댓글