อะไรคือความแตกต่างระหว่าง 'หน้า' ของหน่วยความจำและ 'กรอบ' ของหน่วยความจำ?


25

WPมีการอภิปรายที่เพียงพอเกี่ยวกับการเพจซึ่งฉันคิดว่าฉันเข้าใจ .. อย่างไรก็ตามฉันสับสนโดยการใช้คำว่าPage Frameซ้ำ ๆ

ฉันคิดว่าเฟรมและหน้าเป็นสิ่งที่แตกต่าง มีคนช่วยอธิบายความแตกต่างได้ไหม

คำตอบ:


39

รุ่นสั้น: "หน้า" หมายถึง "หน้าเสมือน" (เช่นอันของพื้นที่ที่อยู่เสมือน) และ "กรอบหน้า" หมายถึง "หน้าจริง" (เช่นอันของหน่วยความจำกายภาพ)

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


5
นอกจากนี้หน้าที่อยู่เสมือนหลายหน้าอาจถูกแมปเข้ากับเฟรมหน้าทางกายภาพเดียวกัน (มักใช้กับการคัดลอกเมื่อเขียน) และในระบบ NUMA หน้าที่อยู่เสมือนเดียวอาจแมปกับเฟรมทางกายภาพหลายหน้า (เพื่อใช้ประโยชน์จากท้องถิ่น)
Paul A. Clayton

ฉันคิดว่าฉันครอบคลุมประเด็นแรกที่คุณทำ แต่ประเด็นที่สองก็ทำออกมาได้ดีเช่นกัน สถาปัตยกรรมหน่วยความจำแบบกระจายซับซ้อนหลายอย่าง
นามแฝง

ใช่การอ่านล้มเหลว! :-(
Paul A. Clayton

คุณสามารถตอบคำถามต่อไปนี้ได้หรือไม่? "ได้รับการสนับสนุน" หมายถึงอะไร สิ่งที่ควรเข้าใจ
itsnotmyrealname

3

หน่วยความจำกายภาพถูกจัดระเบียบเป็นเฟรมและหน่วยความจำเสมือนลงในหน้า คำว่า "page frame" นั้นค่อนข้างสับสนและในความคิดของฉันวิกิพีเดียไม่ควรใช้ สิ่งที่พวกเขาหมายถึงโดย "กรอบหน้า" คือบล็อก / กลุ่ม / ส่วนของหน่วยความจำกายภาพซึ่งเทียบเท่ากับเฟรม ดังนั้นพวกเขาควรใช้คำว่า "frame" แทนไม่ใช่ "frame frame"

ในระยะสั้นจำได้ว่า:

  • page = block ของหน่วยความจำเสมือนที่ต่อเนื่องกัน
  • frame = block ของหน่วยความจำกายภาพต่อเนื่อง

นั่นคือวิธีที่ฉันใช้


-1

กรอบหน้าเป็นหน่วยเก็บข้อมูลภายในหน่วยความจำหลักในขณะที่หน้าเป็นเนื้อหาในกรอบ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.