Operating System
รายละเอียดของ VM เอกสารฉบับนี้นำเสนอตัวอย่างขั้นตอนการทำงานของ page fault ISR ต้องการสนับสนุนหน่วยความจำเสมือน เราลบ bit ที่สกปรกออกจาก page table เพราะมันทำให้คนสับสน คุณควรปริ้น 2 หน้าแรก (หน้า 3 และ 4) และพยายามแก้ปัญหา แล้วกลับมาตรวจสอบว่าคำตอบของคุณตรงกับเอกสารนี้หรือไม่
Process 7 Address 2100 Process 7 address 2100 - นี่จะเป็น logical page 2100/1024=2 - ช่องที่ 2 ของโปรเซส 7 มี page number เป็น -1 ดังนั้นจะไม่มีการโหลด เราจึงต้องการ physical RAM page - เราจะต้องกลับไปดูที่ physical RAM ว่าช่องไหนใช้เวลาน้อยที่สุด ซึ่งก็คือ physical RAM page 2 ที่เวลา 10:09 ดังนั้นเราจึงต้องไล่มันออก และกลับไปที่ DASD - ตาราง Free DASD มีรายการของ DASD เป็น 0 ดังนั้นเราจะต้องใส่ 7 แทนในตาราง Free DASD ช่องที่เป็น 0
Process 7 Address 2100 - ขณะนี้เรานำหน้า physical RAM page 2 ไปยังหน้า DASD 0 - เราปรับปรุงโปรเซส 7 ช่องที่ 1 จะมีหมายเลขเพจเท่ากับ 0 และมี location เป็น D - ขณะนี้เราปรับปรุงโปรเซส 7 ช่องที่ 2 จะมี RAM page เป็น 2 และมี location เป็น R - สุดท้ายเราจะอัพเดตช่องที่ 2 ของที่ว่างบน RAM page เพื่อการเข้าถึงครั้งต่อไป
Process 3 Address 100 Process 3 address 100 - นี่จะเป็น logical page 100/1024=0 - ช่องที่ 0 ของโปรเซส 3 มี location เป็น D ดังนั้นเราจึงต้องการ physical RAM page - เราจะต้องกลับไปดูที่ physical RAM ว่าช่องไหนใช้เวลาน้อยที่สุด ซึ่งก็คือ physical RAM page 5 ที่เวลา 10:12 ดังนั้นเราจึงต้องไล่มันออก และกลับไปที่ DASD - ตาราง Free DASD มีรายการของ DASD เป็น 0 ดังนั้นเราจะต้องใส่ 3 แทนในตาราง Free DASD ช่องที่ 2
Process 3 Address 100 - ขณะนี้เรานำหน้า physical RAM page 5 ไปยังหน้า DASD 2 - เราปรับปรุงโปรเซส 3 ช่องที่ 10 จะมีหมายเลขเพจเท่ากับ 2 และมี location เป็น D - ขณะนี้เราปรับปรุงโปรเซส 3 ช่องที่ 0 จะมี RAM page เป็น 5 และมี location เป็น R - สุดท้ายเราจะอัพเดตช่องที่ 5 ของที่ว่างบน RAM page เพื่อการเข้าถึงครั้งต่อไป
Process 7 Address 4097 Process 7 address 4097 - นี่จะเป็น logical page 4097/1024=4 - ช่องที่ 4 ของโปรเซส 7 มี page number เป็น -1 ดังนั้นเราจึงต้องการ physical RAM page - เราจะต้องกลับไปดูที่ physical RAM ว่าช่องไหนใช้เวลาน้อยที่สุด ซึ่งก็คือ physical RAM page 3 ที่เวลา 10:14 ดังนั้นเราจึงต้องไล่มันออก และกลับไปที่ DASD - ตาราง Free DASD มีรายการของ DASD เป็น 3 ดังนั้นเราจะต้องใส่ 3 แทนในตาราง Free DASD ช่องที่ 3
Process 7 Address 4097 - ขณะนี้เรานำหน้า physical RAM page 3 ไปยังหน้า DASD 3 - เราปรับปรุงโปรเซส 3 ช่องที่ 4 จะมีหมายเลขเพจเท่ากับ 3 และมี location เป็น D - ขณะนี้เราปรับปรุงโปรเซส 7 ช่องที่ 4 จะมี RAM page เป็น 3 และมี location เป็น R - สุดท้ายเราจะอัพเดตช่องที่ 3 ของที่ว่างบน RAM page เพื่อการเข้าถึงครั้งต่อไป และเปลี่ยน PID 7
Process 3 Address 4100 Process 3 address 4100 - นี่จะเป็น logical page 4100/1024=4 - ช่องที่ 4 ของโปรเซส 3 จะแสดงบน DASD ดังนั้นเราจึงต้องการ physical RAM page - เราจะต้องกลับไปดูที่ physical RAM ว่าช่องไหนใช้เวลาน้อยที่สุด ซึ่งก็คือ physical RAM page 0 ที่เวลา 10:15 ดังนั้นเราจึงต้องไล่มันออก และกลับไปที่ DASD - ตาราง Free DASD มีรายการของ DASD เป็น 5 ดังนั้นเราจะต้องใส่ 7 แทนในตาราง Free DASD ช่องที่ 5
Process 3 Address 4100 - ขณะนี้เรานำหน้า physical RAM page 0 ไปยังหน้า DASD 5 - เราปรับปรุงโปรเซส 7 ช่องที่ 0 จะมีหมายเลขเพจเท่ากับ 5 และมี location เป็น D - ขณะนี้เราปรับปรุงโปรเซส 3 ช่องที่ 4 จะมี RAM page เป็น 0 และมี location เป็น R - เราจะอัพเดต Free DASD ช่อง 3 เป็น -1 -เราจะทำการอัพเดตในช่อง 0 ของตาราง Free RAM page และเปลี่ยน PID เป็น 3
Process 7 Address 200 Process 7 address 200 - นี่จะเป็น logical page 200/1024=0 - ช่องที่ 0 ของโปรเซส 7 จะแสดงบน DASD ดังนั้นเราจึงต้องการ physical RAM page - เราจะต้องกลับไปดูที่ physical RAM ว่าช่องไหนใช้เวลาน้อยที่สุด ซึ่งก็คือ physical RAM page 4 ที่เวลา 10:16 ดังนั้นเราจึงต้องไล่มันออก และกลับไปที่ DASD - ตาราง Free DASD มีรายการของ DASD เป็น 3 ดังนั้นเราจะต้องใส่ 7 แทนในตาราง Free DASD ช่องที่ 3
Process 7 Address 200 - ขณะนี้เรานำหน้า physical RAM page 4 ไปยังหน้า DASD 3 - เราปรับปรุงโปรเซส 7 ช่องที่ 9 จะมีหมายเลขเพจเท่ากับ 3 และมี location เป็น D - ขณะนี้เราปรับปรุงโปรเซส 7 ช่องที่ 0 จะมี RAM page เป็น 4 และมี location เป็น R – เราอ่าข้อมูลจาก DASD page 5 ไปให้ physical RAM page 4 - เราจะอัพเดต Free DASD ช่อง 5 เป็น -1 -สุดท้ายเราจะทำการอัพเดตในช่อง 4 ของตาราง Free RAM
Process 3 Address 200 Process 3 Address 200 - นี่จะเป็น logical page 200/1024 = 0 - ช่องที่ 0 โปรเซส 3 แสดงหน้าอยู่ใน RAM แล้ว เราจึงสามารถใช้ได้เลย
นางสาวอารยา นิ่มเจริญ รหัส 50036535 กลุ่ม 1 ผู้จัดทำ นางสาวอารยา นิ่มเจริญ รหัส 50036535 กลุ่ม 1 คณะวิทยาศาสตร์ ภาควิชาวิทยาการคอมพิวเตอร์