본문 바로가기

Reverse Mapping3

anon_vma chaining (v2.6.34) Previously on rmap rmap (v2.5.27): pte chaining & page frame reclamation Introduction What is Reverse Mapping? 가상 메모리는 페이지 테이블을 사용해서 가상 주소를 물리 주소로 변환한다. 페이지 테이블은 프로세스별로 존재하며, 각각의 프로세스는 독립적인 가상 주소공간 hyeyoo.com Object-based reverse mapping (v2.6.7) Previously on rmap rmap (v2.5.26): pte chaining & page frame reclamation Introduction What is Reverse Mapping? 가상 메모리는 페이지 테이블을 사용해서 가상 주소를 물리 주소로 변환한다.. 2023. 2. 24.
Object-based reverse mapping (v2.6.7) Previously on rmap rmap (v2.5.26): pte chaining & page frame reclamation Introduction What is Reverse Mapping? 가상 메모리는 페이지 테이블을 사용해서 가상 주소를 물리 주소로 변환한다. 페이지 테이블은 프로세스별로 존재하며, 각각의 프로세스는 독립적인 가상 주소공간 hyeyoo.com 이전 글에서는 v2.5.27에 도입된 minimal rmap을 살펴봤다. pte chain 기반 rmap은 메모리 오버헤드와 fork/exit, page mapping/unmapping의 긴 실행 시간 때문에 머지 않아 object 기반 rmap에 의해 대체되었다. [4], [5] Some changes in pte chaining pt.. 2023. 2. 17.
rmap (v2.5.27): pte chaining & page frame reclamation Introduction What is Reverse Mapping? 가상 메모리는 페이지 테이블을 사용해서 가상 주소를 물리 주소로 변환한다. 페이지 테이블은 프로세스별로 존재하며, 각각의 프로세스는 독립적인 가상 주소공간을 갖는다. MMU는 가상 주소를 물리 주소로(forward mapping) 변환하지만, 운영체제는 반대로 어떤 페이지 프레임이 어떤 프로세스의 가상 주소 공간에 매핑되어있는지(reverse mapping)를 알아야 하는 경우가 있다. 구체적으로 어떤 경우에 reverse mapping이 필요한가 하면 swapout/pageout, migration, compaction을 할때 해당 페이지프레임을 사용하고 있는 프로세스의 pte를 빠르게 찾거나 수정하기 위해 필요하다. 예전 (Linux.. 2022. 12. 26.