แนะนำ, 2024

ตัวเลือกของบรรณาธิการ

ความแตกต่างระหว่างหน่วยความจำเสมือนและแคชในระบบปฏิบัติการ

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

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

แผนภูมิเปรียบเทียบ

พื้นฐานสำหรับการเปรียบเทียบหน่วยความจำเสมือนหน่วยความจำแคช
ขั้นพื้นฐานหน่วยความจำเสมือนขยายความจุของหน่วยความจำหลักสำหรับผู้ใช้หน่วยความจำแคชจะเร่งความเร็วในการเข้าถึงข้อมูลของ CPU
ธรรมชาติหน่วยความจำเสมือนเป็นเทคนิคหน่วยความจำแคชเป็นหน่วยเก็บข้อมูล
ฟังก์ชันหน่วยความจำเสมือนจริงอนุญาตให้เรียกใช้งานโปรแกรมที่มีขนาดใหญ่กว่าหน่วยความจำหลักหน่วยความจำแคชจะเก็บสำเนาของข้อมูลดั้งเดิมที่เพิ่งใช้ไป
การจัดการหน่วยความจำหน่วยความจำเสมือนได้รับการจัดการโดยระบบปฏิบัติการหน่วยความจำแคชได้รับการจัดการโดยฮาร์ดแวร์
ขนาดหน่วยความจำเสมือนใหญ่กว่าหน่วยความจำแคชหน่วยความจำแคชมีขนาด จำกัด
การทำแผนที่หน่วยความจำเสมือนต้องการโครงสร้างการแมปเพื่อแมปที่อยู่เสมือนกับที่อยู่ทางกายภาพไม่จำเป็นต้องใช้โครงสร้างการแม็พในหน่วยความจำแคช

นิยามของหน่วยความจำเสมือน

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

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

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

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

ประโยชน์ของหน่วยความจำเสมือนคือ:

  • โปรแกรมจะไม่ถูก จำกัด โดยข้อ จำกัด ของหน่วยความจำหลัก
  • หน่วยความจำเสมือนเพิ่มระดับของการใช้โปรแกรมหลายโปรแกรม
  • เพิ่มการใช้งาน CPU
  • หน่วย I / O ที่น้อยลงจะต้องโหลดหรือสลับโปรแกรมในหน่วยความจำ

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

คำจำกัดความของหน่วยความจำแคช

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

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

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

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

สรุป:

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

Top