ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
ได้พิมพ์โดยBurit Thong-oon ได้เปลี่ยน 9 ปีที่แล้ว
1
Virtual Memory
2
Detailed VM Example ในเรื่องนี้จะมีการนำเสนอในรูปแบบ ของการทำงานที่เป็นไปตามขั้นตอน เมื่อ เกิดการผิดพลาดของข้อมูล ISR จะทำ หน้าที่เป็น หน่วยความจำเสมือน เมื่อมีการย้ายบิตจาก page table ซึ่งควรที่จะเขียนโจทย์เริ่มต้น ไว้ ( ดังแสดงในหน้า 3 และ 4) และพยายาม หาคำตอบ ของปัญหา จากนั้นให้กลับมาดูข้อมูล เริ่มต้นและตรวจสอบดูว่า คำตอบที่ได้ถูกต้องตรงกับโจทย์หรือไม่
3
Process 3 Logical Pages Process 7 Logical Pages Process 3 Page Table Proces s 7 Page Table Pageno Loc 0 1 2 3 4 5 6 7 8 9 10 11 12 012345678910111201234567891011121 0 1 2 3 4 5 6 7 8 9 10 11 12
5
Process 7 Address 2100 - มี logical page เป็น 2100/1024 = 2 ( ได้ผลหารเป็น 2) - index 2 ของ process7 มี page table เป็น -1 ซึ่งยังไม่สามารถทำในนี้ได้ ต้องไปที่ physical RAM page - free RAM page table ไม่มีที่ว่าง ดังนั้นจึง ต้องไปเทียบดูเวลาที่ PID 7 ว่าข้อมูลตัวใดเข้ามาใช้งานนานที่สุดก็เลือก ตัวนั้น ซึ่งตัวที่เข้ามาก่อนตัวอื่น ก็คือ physical RAM page 2 ที่เวลา 10:09 และต้องปรับเวลาล่าสุด จากนั้นกลับไปทำที่ DASD page จาก backing store - Free DASD Page table ที่พื้นที่ว่างอยู่ที่ page 0 ซึ่งสามารถใช้ ตัวนี้ได้โดยใส่เลข 7 ใน Free DASD Page table
6
- จะได้ physical RAM page 2 มีค่า DASD page เป็น 0 - อัพเดท process 7 page table ที่ 1 ที่ มี pageno เป็น 0 และ location เป็น D - ต่อไปก็อัพเดท process 7 page table ที่ 2 ที่มี RAM page เป็น 2 และ location เป็น R - ลำดับสุดท้าย จะอัพเดท index ที่ 2 ของ Free RAM page table ไปจนถึงการอัพเดท timestamp ตั้งแต่ การเข้าทำงานของ page นี้ ซึ่งได้ผลลัพธ์ดังต่อไปนี้ Process 7 Address 2100 ( ต่อ )
7
Process 3 Logical Pages Process 7 Logical Pages 0 1 2 3 4 5 6 7 8 9 10 11 12 Proce ss 3 Page Table Proce ss 7 Page Table PagenoLocPagenoLoc 012345678910111201234567891011121 0 1 2 3 4 5 6 7 8 9 10 11 12
9
Process 3 Address 100 - มี logical page เป็น 100/1024 = ( ได้ ผลหารเป็น 0) - index 0 ของ process 3 page table ที่ location เป็น D จากนั้นไปที่ physical RAM page - free RAM page table ไม่มีที่ว่าง ดังนั้นจึง ต้องไปเทียบดูเวลา ว่าข้อมูลตัวใดเข้ามาใช้งานนานที่สุดก็เลือกตัว นั้น ซึ่งตัวที่เข้ามาก่อน ตัวอื่นก็คือ physical RAM page 5 ที่เวลา 10:12 และต้องปรับเวลาล่าสุด จากนั้นกลับไปทำที่ DASD page จาก backing store - Free DASD Page table ที่พื้นที่ว่างอยู่ที่ page 2 ซึ่งสามารถใช้ตัวนี้ได้ โดยใส่เลข 3 ใน Free DASD Page table ที่ 2
10
- จะได้ physical RAM page 5 มีค่า DASD page เป็น 2 - อัพเดท process 3 page table ที่ 10 ที่มี pageno เป็น 2 และ location เป็น D - ต่อไปก็อัพเดท process 3 page table ที่ 0 ที่มี RAM page เป็น 5 และ location เป็น R - อัพเดท Free DASD page table ที่ 3 ที่มีค่า เป็น -1 ตั้งแต่ page ที่ทำได้ - ลำดับสุดท้าย จะอัพเดท index ที่ 5 ของ Free RAM page table ไปจนถึงการอัพเดท timestamp ตั้งแต่การ เข้าทำงานของ page นี้ Process 3 Address 100 ( ต่อ )
11
Process 3 Logical Pages Process 7 Logical Pages 0 1 2 3 4 5 6 7 8 9 10 11 12 Proce ss 3 Page Table Proce ss 7 Page Table PagenoLocPagenoLoc 012345678910111201234567891011121 0 1 2 3 4 5 6 7 8 9 10 11 12
13
Process 7 Address 4097 - มี logical page เป็น 4097/1024 = 4 ( ได้ผลหารเป็น 4) - index 4 ของ process7 มี page table เป็น -1 ต้องไปที่ physical RAM page - free RAM page table ไม่มีที่ว่าง ดังนั้น จึงต้องไปเทียบดูเวลา ว่าข้อมูลตัวใดเข้ามาใช้งานนานที่สุดก็เลือก ตัวนั้น ซึ่งตัวที่เข้ามา ก่อนตัวอื่น ก็คือ physical RAM page 3 ที่เวลา 10:14 และต้อง ปรับเวลาล่าสุดจากนั้นกลับไปทำที่ DASD page จาก backing store
14
Process 7 Address 4097 ( ต่อ ) - Free DASD Page table ที่มี DASD page 3 ซึ่งสามารถใช้ตัวนี้ได้ โดยใส่เลข 3 ใน Free DASD Page table ที่ 3 - จะได้ physical RAM page 3 มีค่า DASD page เป็น 3 - อัพเดท process 3 page table ที่ 4 ที่มี pageno เป็น 3 และ location เป็น D - ต่อไปก็อัพเดท process 7 page table ที่ 4 ที่มี RAM page เป็น 3 และ location เป็น R - ลำดับสุดท้าย จะอัพเดท index ที่ 3 ของ Free RAM page table ไปจนถึง การอัพเดท timestamp ตั้งแต่การเข้าทำงาน ของ page นี้ และเปลี่ยนค่า ของ PID ที่เป็น 7
15
Process 3 Logical Pages Process 7 Logical Pages 0 1 2 3 4 5 6 7 8 9 10 11 12 Proce ss 3 Page Table Proce ss 7 Page Table PagenoLocPagenoLoc 012345678910111201234567891011121 0 1 2 3 4 5 6 7 8 9 10 11 12
17
Process 3 Address 4100 - มี logical page เป็น 4100/1024 = 4 ( ได้ผลหารเป็น 4) - index 4 ของ process 3 page table แสดง page เป็น DASD ต้องไปที่ physical RAM page - free RAM page table ไม่มีที่ว่าง ดังนั้น จึงต้องไปเทียบดูเวลา ว่าข้อมูลตัวใดเข้ามาใช้งานนานที่สุดก็เลือก ตัวนั้น ซึ่งตัวที่เข้ามา ก่อนตัว อื่นก็คือ physical RAM page 0 ที่เวลา 10:15 และต้อง ปรับเวลา ล่าสุดจากนั้นกลับไปทำที่ DASD page จาก backing store
18
Process 3 Address 4100 ( ต่อ ) - Free DASD Page table ที่มี DASD page 5 ซึ่งสามารถใช้ตัวนี้ได้ โดยใส่เลข 7 ใน Free DASD Page table ที่ 5 - จะได้ physical RAM page 0 มีค่า DASD page เป็น 5 - อัพเดท process 7 page table ที่ 0 ที่มี pageno เป็น 5 และ location เป็น D - ต่อไปก็อัพเดท process 3 page table ที่ 4 ที่มี RAM page เป็น 0 และ location เป็น R - ลำดับสุดท้าย จะอัพเดท index ที่ 0 ของ Free RAM page table ไปจนถึง การอัพเดท timestamp ตั้งแต่การเข้าทำงาน ของ page นี้ และเปลี่ยนค่าของ PID ที่เป็น 3
19
Process 3 Logical Pages Process 7 Logical Pages 0 1 2 3 4 5 6 7 8 9 10 11 12 Proce ss 3 Page Table Proce ss 7 Page Table PagenoLocPagenoLoc 012345678910111201234567891011121 0 1 2 3 4 5 6 7 8 9 10 11 12
21
Process 7 Address 200 - มี logical page เป็น 200/1024 = 0 ( ได้ ผลหารเป็น 0) - index 0 ของ process 7 page table แสดง page เป็น DASD ต้องไปที่ physical RAM page - free RAM page table ไม่มีที่ว่าง ดังนั้นจึง ต้องไปเทียบดูเวลา ว่าข้อมูลตัวใดเข้ามาใช้งานนานที่สุดก็เลือกตัว นั้น ซึ่งตัวที่เข้ามาก่อน ตัวอื่นก็คือ physical RAM page 4 ที่เวลา 10:16 และต้องปรับเวลาล่าสุด จากนั้นกลับไปทำที่ DASD page จาก backing store - Free DASD Page table ที่มี DASD page 3 ซึ่งสามารถใช้ตัวนี้ได้ โดยใส่เลข 7 ใน Free DASD Page table ที่ 3
22
Process 7 Address 200 ( ต่อ ) - จะได้ physical RAM page 4 มีค่า DASD page เป็น 3 - อัพเดท process 7 page table ที่ 9 ที่มี pageno เป็น 3 และ location เป็น D - ต่อไปก็อัพเดท process 7 page table ที่ 0 ที่มี RAM page เป็น 4 และ location เป็น R - อ่านข้อมูลจาก DASD ที่ page 5 จาก physical RAM page 4 - อัพเดท Free RAM ที่ index 5 ที่มีค่าเป็น - 1 - ลำดับสุดท้าย จะอัพเดท index ที่ 4 ของ Free RAM page table ไปจนถึงการอัพเดท timestamp ตั้งแต่การ เข้าทำงานของ page นี้
23
Process 3 Logical Pages Process 7 Logical Pages 0 1 2 3 4 5 6 7 8 9 10 11 12 Proce ss 3 Page Table Proce ss 7 Page Table PagenoLocPagenoLoc 012345678910111201234567891011121 0 1 2 3 4 5 6 7 8 9 10 11 12
25
Process 3 Address 200 - มี logical page เป็น 200/1024 = 0 - index ที่ 0 ของ process 3 มี page table แสดง page เป็น RAM ดังนั้นจึงสามารถนำข้อมูลมาใช้ได้เลย
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.