ฉันใช้ VirtualBox บนเครื่อง Windows XP ที่มี 2GB RAM ฉันสร้างเครื่อง Ubuntu เสมือนและจัดสรรหน่วยความจำพื้นฐานเป็น 750MB
เพียงเพื่อทดสอบฉันวิ่ง 20 สิ่งพร้อมกันบนเครื่องเสมือน ตามที่ "top" ในอูบุนตูมีการใช้หน่วยความจำ 750 เมกะไบต์รวมถึงพื้นที่สว็อปจำนวนมาก
อย่างไรก็ตามใน Windows Task Manager VitrualBox ใช้หน่วยความจำเพียง 45,000K เท่านั้น เมื่อฉันขอให้เครื่องเสมือนทำมากขึ้นการใช้งาน CPU ของกระบวนการ VirtualBox ก็เพิ่มขึ้น (ใน Windows) แต่การใช้หน่วยความจำยังคงเหมือนเดิม
เครื่องเสมือนที่ใช้หน่วยความจำ 750 MB สามารถใช้หน่วยความจำ 45 MB บนเครื่องจริงได้อย่างไร
ฉันคิดว่าคำตอบคือเครื่องเสมือนไม่ได้ใช้หน่วยความจำจริง แต่เป็นหน่วยความจำแบบจำลอง (เช่นพื้นที่สว็อป) แต่แน่นอนว่ารู้สึกเหมือนกำลังวิ่งอยู่ใน RAM
UPDATE: ฉันเล่นกับ perfmon ตามที่แนะนำ แม้แต่การสรุปทุกอย่างที่ฉันคิดได้มันก็ดูเหมือนว่าจะใช้เวลาน้อยกว่า 300 megs ... ดังนั้นมันจึงยังคงเป็นปริศนา
Process VirtualBox VirtualBox#1 Total
PoolNonpagedBytes 5,840 42,552 48,392
PoolPagedBytes 119,796 166,892 286,688
PrivateBytes 8,884,224 52,719,616 61,603,840
VirtualBytes 75,939,840 161,202,176 237,142,016
Sum 84,949,700 214,131,236 299,080,936