ความแตกต่างระหว่างหน่วยความจำเสมือนและแคช ความแตกต่างระหว่าง

Anonim

ในโลกของคอมพิวเตอร์หน่วยความจำกำหนดขีด จำกัด ที่เราใช้ถ้าเราสามารถเรียกใช้โปรแกรมนั้นได้ หรือไม่. ถ้าคุณโชคร้ายพอที่จะมีประสบการณ์ DOS แล้วคุณจะรู้ว่าสารพิษของขีด จำกัด หน่วยความจำ 640k ความทรงจำในปัจจุบันดูเหมือนจะเกือบไม่มีที่สิ้นสุดและไม่มีใครได้รับข้อความจากหน่วยความจำไม่เพียงพอของปีที่ผ่านมา พวกเขาประสบความสำเร็จได้อย่างไร?

คำตอบคือขั้นตอนการจัดการหน่วยความจำอัจฉริยะที่ฉลาดมาก โดยการวางชิ้นส่วนที่ควรอยู่ในหน่วยความจำภายในฮาร์ดดิสก์ของคุณพวกเขาสามารถขยายความจุของหน่วยความจำของเครื่องคอมพิวเตอร์กว่าสิ่งที่มีการติดตั้ง; นี้เรียกว่าหน่วยความจำเสมือน สมมติว่าคอมพิวเตอร์ของคุณมีหน่วยความจำเพียง 1GB และคุณเปิดโปรแกรมที่มีการใช้หน่วยความจำทั้งหมดประมาณ 1GB ถึง 5GB หากไม่มีหน่วยความจำเสมือนคุณจะไม่ได้รับอนุญาตให้ทำเช่นนั้น แต่ด้วยหน่วยความจำเสมือนระบบปฏิบัติการจะกำหนดส่วนของฮาร์ดดิสก์ให้เป็นส่วนหนึ่งของหน่วยความจำและเก็บข้อมูลไว้ที่นั่น ดังนั้นในตัวอย่างข้างต้นสมมุติว่าหน่วยความจำเสมือนเป็น 1GB หน่วยความจำจริง 1GB + หน่วยความจำเสมือน 1GB = หน่วยความจำระบบ 2GB ด้วยวิธีนี้แม้ว่าหน่วยความจำของคุณจะถูก จำกัด คุณยังคงสามารถใช้หน่วยความจำที่ครอบคลุมการใช้งาน

มีข้อเสียเปรียบต่อหน่วยความจำเสมือน การอ่านข้อมูลจากฮาร์ดดิสก์จะช้ากว่าการอ่านข้อมูลจากหน่วยความจำอย่างมาก ดังนั้นข้อมูลเพิ่มเติมที่เก็บไว้ในฮาร์ดดิสก์ของคุณทำให้ระบบของคุณช้าลงจะทำให้ดูเหมือนซบเซา

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

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

เรียนรู้เพิ่มเติมเกี่ยวกับแคชและหน่วยความจำเสมือน