2013-01-20 2 views
1

액세스 및 더티 비트로 알 수 있습니다. 현재 x86 PTE에이 비트가 있습니다. TLB에 이러한 비트가 포함되어 있다고 가정 해 보겠습니다. TLB 히트의 경우, 이들 비트는 그들이 참조하는 페이지 프레임이 액세스되거나 수정되면 하드웨어에 의해 설정 될 것이다. 제 질문은이 비트가 하드웨어에 의해 PTE로 다시 복사되는 시점이며, 정확히 어떻게 수행됩니까 (특히 소프트웨어로 관리되는 TLB의 경우)?TLB 및 PTE의 참조 및 수정 된 비트

추신 - 내가 페이지 교체 알고리즘을 설계하고 테스트하려고하기 때문에이 사실을 알고 싶습니다.

답변

1

x86 CPU에는 소프트웨어 관리 TLB가 없습니다. 그러한 것을 시뮬레이션하고 싶다면 물리 페이지를 가상 주소 공간에 매핑 및 매핑 해제하는 것과 마찬가지로 일반 TLB 위에 구현해야합니다. 페이지 폴트 핸들러에서 페이지 액세스를 차단하고 PDE/다중 프로세서 시스템의 경우에는 필요에 따라 TLB 항목을 무효화하고 특별한주의를 기울이십시오.

CPU가 액세스하고 더티 비트를 1로 설정하는 것은 소프트웨어에 투명하게 수행되므로 페이지에 액세스하면 즉시 변경 사항을 확인해야합니다.

자세한 내용은 "인텔 ® 64 및 IA-32 아키텍처 소프트웨어 개발자 설명서"를 참조하십시오. 1 ~ 3 권을 통합 한 pdf를 다운로드하여 한 곳에서 필요한 모든 정보를 얻을 수 있습니다.