공부기록

가상 메모리 세그먼트 본문

CS/OS

가상 메모리 세그먼트

코타쿠 2021. 5. 17. 18:49
  • 세그먼테이션
    • 세그먼테이션은 프로그래머가 메모리를 다수의 주소공간들 (혹은 세그먼트 들) 의 조합으로 볼 수 있게 함
    • 세그먼트들은 서로 크기가 다르고, 실제로 그 크기는 동적으로 결정
    • 메모리 참조는 (세그먼트 번호, 오프셋)의 주소 형식
    • 장점
      • 점진적으로 커져가는 자료구조의 처리를 단순화
        • 세그먼트의 크기를 OS가 재정의 할 수 있음
      • 프로그램 전체에 대한 재연결, 재적재 없이, 세그먼트 각각을 독립적으로 변경하거나 다시 컴파일 할 수 있게함
        • 여러 개의 세그먼트를 사용함으로써 가능하다.
      • 프로세스들이 세그먼트를 공유할 수 있도록 함
      • 세그먼트를 보호할 수 있게 함
    • 세그먼트 테이블이 필요
    • 전형적으로 각 프로세스는 자기 고유의 세그먼트 테이블과 연계
    • 세그먼트 중 일부만 주 메모리에 적재되기 때문에, 해당 세그먼트가 주기억장치에 적재되어 있는지 여부를 나타내는 P 비트가 필요
    • 세그먼트가 수정되었는지 나타내는 M 비트가 필요
    • 메모리로부터 한 워드를 읽기 위한 방법
      • 세그먼트 테이블에서 가상주소를 물리주소로 변환함
      • 세그먼트 테이블은 가변길이를 갖기에 메모리에 적재되어야함
        • 참조 가능한 주 기억장치에 적재되어야 한다.

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

가상 페이징을 위한 OS SW  (0) 2021.06.03
교착상태 발견  (0) 2021.06.03
가상 메모리 페이징  (0) 2021.05.17
가상 메모리의 개요  (0) 2021.05.17
메모리 분할 - 세그먼테이션  (0) 2021.05.17