ผู้สอน: ในบทเรียนนี้
เราจะพูดถึงหน่วยความจำเสมือน
หน่วยความจำเสมือน หรือที่เรียกว่าไฟล์เพจ
คือบล็อกของพื้นที่บนฮาร์ดไดรฟ์หรือไดรฟ์โซลิดสเทตของคุณซึ่งจัดสรรโดยระบบปฏิบัติการของคุณและหลอกว่าเป็นหน่วยความจำหรือ
RAM เมื่อ RAM จริงของคุณสั้นหรือเหลือน้อยสำหรับคุณ
กำลังรันโปรแกรมอยู่
นี่เป็นคุณสมบัติที่ยอดเยี่ยมจากระบบปฏิบัติการสมัยใหม่ส่วนใหญ่ที่ให้คุณเลียนแบบว่าคุณมีหน่วยความจำมากกว่าที่คุณมี
แต่โปรดจำไว้ว่า นี่ไม่ใช่การแก้ไขที่สมบูรณ์แบบสำหรับโซลูชันทั้งหมด
และจริงๆ แล้วเป็นวิธีแก้ปัญหาชั่วคราวสำหรับคุณมากกว่า
และหากคุณใช้งาน RAM เสมือนเป็นจำนวนมาก คุณอาจจำเป็นต้อง
เพิ่ม RAM จริงของคุณในระบบด้วย
ทีนี้ทำไมล่ะ?
จำไว้ว่าเมื่อเราจัดการกับหน่วยความจำและพื้นที่เก็บข้อมูลประเภทต่างๆ
เรามีสามประเภทหลัก
เรามีหน่วยความจำแคชภายในโปรเซสเซอร์ที่เร็วมาก
จากนั้นเราจะมีหน่วยความจำเข้าถึงโดยสุ่มทางกายภาพหรือหน่วยความจำระบบ
และ RAM นั้นช้ากว่าแคช แต่ก็ยังเร็วกว่าการใช้อุปกรณ์จัดเก็บข้อมูล เช่น ฮาร์ดดิสก์ไดรฟ์หรือแม้แต่ไดรฟ์โซลิดสเทตที่เร็วกว่า
เมื่อพูดถึงมัน ไม่มีการแทนที่หน่วยความจำกายภาพจริง
ๆ แต่สามารถใช้ RAM เสมือนได้เพียงเล็กน้อย
ตอนนี้ เมื่อพูดถึง RAM เสมือนหรือหน่วยความจำเสมือนที่เรามักเรียกกันว่า
มีสองประเภทที่คุณจะเห็น
หากคุณกำลังทำงานบนระบบ Windows
คุณจะได้ยินสิ่งนี้เรียกว่าไฟล์เพจ
หากคุณใช้ระบบ Linux, Unix หรือ Mac
โดยทั่วไปจะเรียกว่า swap space
ทั้งสองสิ่งนี้มีความหมายเหมือนกันทุกประการ
โดยพื้นฐานแล้วมันเป็นไฟล์ที่ซ่อนอยู่ในอุปกรณ์เก็บข้อมูลของคุณซึ่งจะเพิ่มขนาดและหลอกว่าเป็นหน่วยความจำระบบสำหรับคุณ
ดังนั้นเมื่อหน่วยความจำระบบฟิสิคัลของคุณหมดลง
ข้อมูลจะถูกถ่ายโอนจากหน่วยความจำฟิสิคัลนั้นไปยังไฟล์เพจนั้นหรือพื้นที่สว็อป และจะแสร้งทำเป็นว่าคุณมีหน่วยความจำมากกว่าที่คุณมี
ตอนนี้ สัญญาณที่ชัดเจนว่าคุณกำลังพึ่งพาหน่วยความจำเสมือนของคุณมากเกินไปคือเมื่อคุณเริ่มได้ยินว่าฮาร์ดไดรฟ์ของคุณหมุนบ่อยในขณะที่คุณกำลังทำงานในโปรแกรมต่างๆ
นี่เป็นเพราะสิ่งต่าง ๆ ถูกสลับเข้าและออกจากไฟล์หน้านั้นหรือสลับพื้นที่และกลับเข้าไปใน
RAM
และทุกครั้งที่เกิดขึ้น
มันต้องอ่านและเขียนข้อมูลนั้นจากฮาร์ดไดรฟ์
ซึ่งทำให้ระบบทั้งหมดของคุณและกระบวนการอื่นๆ
ทั้งหมดช้าลง
เมื่อคุณจัดการกับหน่วยความจำเสมือน
ระบบปฏิบัติการของคุณจะกำหนดตำแหน่งหน่วยความจำเหล่านี้ให้กับกระบวนการต่างๆ เหล่านี้เป็นกลุ่มที่มีขนาดสี่กิโลไบต์
ส่วนเหล่านี้เรียกว่าเพจ
ตอนนี้ ตัวควบคุมหน่วยความจำจะสามารถย้ายสิ่งต่าง
ๆ เข้าหรือออกจากหน่วยความจำกายภาพได้โดยใช้ก้อนหรือหน้าสี่กิโลไบต์นี้
ซึ่งจริง ๆ แล้วทำให้หน่วยความจำกายภาพของคุณว่างมากขึ้น
แต่โปรดจำไว้ว่า CPU ในระบบของคุณไม่สามารถอ่านโดยตรงจากฮาร์ดไดรฟ์ได้เหมือนกับการอ่านจากหน่วยความจำโดยใช้บัส
ดังนั้น สิ่งนั้นจะต้องถูกเพจเข้าและออกจากหน่วยความจำจากไฟล์สลับหรือไฟล์เพจ
เพื่อให้คุณสามารถใช้งานได้
หากคุณเริ่มเห็นว่าระบบของคุณช้าลงมาก โปรดจำไว้ว่ามันอาจจะเป็นปัญหาเกี่ยวกับหน่วยความจำ
ดังนั้นให้ตรวจสอบหน่วยความจำที่มีอยู่และจำนวนหน่วยความจำที่ว่างที่คุณมี
และถ้าคุณยังมีไม่มาก นั่นอาจถึงเวลาที่คุณจะใส่หน่วยความจำกายภาพเพิ่มเติมเข้าไป
แต่ในระหว่างนี้ คุณสามารถเพิ่มขนาดของหน่วยความจำเสมือนหรือไฟล์เพจของคุณ
หรือสลับพื้นที่เพื่อให้สามารถเก็บได้มากขึ้นอีกเล็กน้อย
และหลอกระบบของคุณให้คิดว่ามีหน่วยความจำมากกว่าที่เป็นโซลูชันระดับกลางจริง ๆ จนกว่าจะถึงเวลานั้น สามารถติดตั้งโมดูล RAM จริงได้ในภายหลัง