next up previous contents index
Next: การเชื่อมโยงระหว่างฮาร์ดแวร์และซอฟ์ทแวร์ Up: หน่วยความจำเสมือน Previous: หน่วยความจำเสมือน   Contents   Index

การแทนที่และการค้นหาเพจ

ในระบบหน่วยความจำเสมือนนั้น เพื่อลดความถี่ในการเกิดเพจฟอล์ท ดังนั้นจึงต้องมีการแทนที่เพจที่เหมาะสม เมื่อสามารถใช้ระบบการจัดการที่ฉลาดและยืดหยุ่นได้ก็จะสามารถลดอักตราการเกิดเพจฟอล์ท และทำให้การแทนที่เพจอย่างสมบูรณ์นั้นง่ายขึ้น การค้นหาตำแหน่งของเพจสามารถทำได้โดยใช้ตารางเพจ (Page Table) ซึ่งอยู่ในหน่วยความจำ เป็นดัชนีชี้ไปยังหน่วยความจำ โดยใช้หมายเลขเพจจากตำแหน่งอ้างอิงเสมือน ในการสำรวจหาหมายเลขเพจแท้จริงที่สอดคล้องกัน ในแต่ละโปรแกรมจะมีตารางเพจซึ่งประกอบด้วยตัวแปลงตำแหน่งอ้างอิงเสมือนให้เป็นตำแหน่งอ้างอิงแท้จริง ในกรณีที่มีเพจอยู่ในหน่วยความจำ แต่ละข้อมูลในตารางจะประกอบไปด้วยหมายเลขเพจแท้จริงของเพจเสมือนนั้น เพื่อระบุตำแหน่งของตารางเพจในหน่วยความจำ จึงต้องมีรีจีสเตอร์ ซึ่งจะชี้ไปยังจุดเริ่มต้นของตารางเพจ ที่เรียกว่าตัวบันทึกตารางเพจ (Page Table Register)

จากรูปที่ 7.15 การใช้ตัวบันทึกตารางเพจ ตำแหน่งอ้างอิงเสมือน และตารางเพจเพื่อแสดงให้เห็นการทำงานของฮาร์ดแวร์ในการสร้างตำแหน่งอ้างอิงแท้จริง แวลิดบิท (valid bit) จะถูกใช้เพื่อบ่งชี้ว่ามีเพจอยู่ในหน่วยความจำหลักหรือไม่ ซึ่งถ้าบิทนั้นเป็นศูนย์ หมายถึงเกิดเพจฟอล์ทขึ้น และถ้าบิทนั้นเป็นหนึ่ง หมายถึงเพจนั้นอยู่ในหน่วยความจำ และมีหมายเลขเพจแท้จริงอยู่ในช่องข้อมูล

Figure 7.15: ตารางเพจที่ถูกบ่งชี้ด้วยหมายเลขเพจเสมือนเพื่อให้ได้มาซึ่งส่วนของตำแหน่งอ้างอิงที่สอดคล้องกัน
\includegraphics[width=6in]{fig/Chapter_7/f0723.eps}



Subsections

Vara Varavithya 2006-11-06