프로그래밍/컴퓨터구조 및 운영체제

계층적 페이징

gameObject 2023. 11. 28. 17:33
728x90

* 혼자공부하는 컴퓨터구조 및 운영체제 책을 공부하였습니다.


 

프로세스를 이루는 모든 페이지 테이블 엔트리를 메모리에 두는것은 큰 낭비이다.

프로세스를 이루는 모든 페이지 테이블 엔트리를 항상 메모리에 유지하지 않게 할 방법이 필요하다.

 

계층적 페이징은 페이지 테이블을 페이징하여 여러 단계의 페이지를 두는 방식이다.

-> 페이지 테이블을 여러 페이지로 쪼개고 이 페이지를 가리키는 페이지 테이블(Outer 페이지 테이블)을 만들어 관리하는 방식

-> Outer 페이지 테이블은 CPU와 가장 가까이 위치한 페이지 테이블로 항상 메모리에 유지한다.

 

[바깥 페이지 번호 / 안쪽 페이지 번호 / 변위] 의 구조를 가진다.

1. 바깥 페이지 번호를 통해 페이지 테이블의 페이지를 찾고,

2. 페이지 테이블의 페이지를 통해 프레임 번호를 찾고 변위를 더하여 물리 주소를 얻는다.

2번과정이 반복되어 더 깊은 단계의 페이지 구성도 가능하다. 하지만 페이지 폴트가 많이 질 수 있어서 무조건 좋지는 않다.

 

728x90