Please enable JavaScript.
Coggle requires JavaScript to display documents.
บทที่8 หน่วยความ
จำเสมือน - Coggle Diagram
บทที่8 หน่วยความ
จำเสมือน
แนวคิดหน่วย
ความจำเสมือน
โปรแกรมของผู้ใช้สามารถมีขนาดใหญ่กว่าหน่วยความจำจริงได้เพราะวิธีนี้จะทำการแยกส่วนของหน่วยความจำเชิงตรรกะของผู้ใช้ออกจากหน่วยความจำเชิงกายภาพ (Physical memory) มีเพียงส่วนของโปรแกรมที่ต้องการอยู่ในหน่วยความจำเพื่อดำเนินการ
ในระบบคอมพิวเตอร์แบบ 32 บิต และ 64 บิตต าแหน่งที่อ้างอิงได้ที่เป็นตำแหน่งของ Virtualaddress หรือประมาณ 4 กิกะไบต์
ประโยชน์
- ระบบ Libraries สามารถใช้พื้นที่ร่วมกัน โดยรวมหลาย ๆ โพรเซสเข้าด้วยกันโดยการแชร์วัตถุไป
ยังพื้นที่หน่วยความจำเสมือน
- หน่วยวามจ ำเสมือนอย่างง่าย ต้องทำให้โพรเซสสามารถแชร์หน่วยวามจำเสมือน โดยในหนึ่งโพรเซสสามารถสร้างพื้นที่ของหน่วยความจำ
- หน่วยความจำเสมือนสามารถยอมให้พื้นที่ที่ต้องการแชร์ระหว่างที่โพรเซสถูกสร้างจากฟังก์ชั่นthe fork() และเรียกผ่าน System call ดังนั้นโพรเซสจะสามารถถูกสร้างได้เร็ว
พื้นที่หน่วยความจำเสมือน (Virtual address space) ของโพรเซสที่จะกล่าวถึงหน่วยความจำในมุมมองนี้โพรเซสจะเริ่มต้นที่แหน่งที่อยู่ที่แน่นอน คือ ตำแหน่งที่ 0 และอยู่ในหน่วยความจำที่ติดกัน
การจัดสรรหน้า
ตามคำร้องขอ
ความหมาย
เมื่อต้องการใช้โพรเซสระบบจะย้ายเฉพาะหน้าที่ๆ ต้องการเข้ามาในหน่วยความจำหลัก โดยใช้ตัวสับเปลี่ยน (Pager) แต่แทนที่จะย้ายเข้ามาทั้งตัว เราจะใช้ Lazy Swapper ซึ่งจะย้ายเฉพาะเมื่อมีการร้องขอและย้ายเข้ามาเฉพาะหน้าที่ร้องขอเท่านั้น
มีข้อดีคือ
- ลดการใช้หน่วยความจ า (Less memory needed)
- โต้ตอบได้รวดเร็วกว่า (Faster response)
- ลดการใช้ (Less I/O needed)
- รองรับผู้ใช้ได้มากกว่า (More users)
-
-
-
-
-