วิธีการเลือกอินเตอร์เฟซ parav virtualization ใน VirtualBox?


89

ด้วยระบบโฮสต์ windows 8 (Intel Core i5) และโฮสต์ Linux Fedora ฉันต้องการพิจารณาการตั้งค่าที่เหมาะสมที่สุดสำหรับส่วนต่อประสาน paravirtual

ตัวเลือกคือ

  • ไม่มี
  • ค่าเริ่มต้น
  • มรดก
  • ต่ำสุด
  • Hyper-V
  • KVM

หน้านี้แนะนำการเลือกขึ้นอยู่กับระบบของแขก:

การเปลี่ยนแปลงที่ใหญ่ที่สุดใน VirtualBox 5.0 คือการแนะนำการสนับสนุน paravirtualization ซึ่งให้ประสิทธิภาพที่สูงขึ้นและความแม่นยำในการรักษาเวลาให้กับระบบปฏิบัติการของแขกที่รองรับ (Hyper-V บน Windows และ KVM บน Linux)

ถูกต้องหรือไม่

คำตอบ:


98

คู่มือ VirtualBoxในส่วนชื่อผู้ให้บริการ paravirtualizationอธิบายได้อย่างชัดเจนมากเมื่อแต่ละคนควรนำมาใช้ (เน้นเพิ่ม):

  • ขั้นต่ำ:ประกาศการมีอยู่ของสภาพแวดล้อมเสมือนจริง นอกจากนี้รายงานความถี่ TSC และ APIC ไปยังระบบปฏิบัติการของแขก ผู้ให้บริการนี้จำเป็นสำหรับการเรียกใช้แขกของ Mac OS X

  • KVM:แสดงอินเทอร์เฟซ Linux KVM hypervisor ซึ่งเป็นที่รู้จักโดยเคอร์เนล Linux ที่เริ่มต้นด้วยรุ่น 2.6.25 ขณะนี้การใช้งานของ VirtualBox รองรับนาฬิกาที่แบ่งเป็นส่วน ๆ และ SPL Spinlocks ผู้ให้บริการนี้แนะนำสำหรับผู้ใช้ Linux

  • Hyper-V:นำเสนออินเทอร์เฟซไฮเปอร์ไวเซอร์ Microsoft Hyper-V ซึ่ง Windows 7 รู้จักและระบบปฏิบัติการรุ่นใหม่กว่า การใช้งาน VirtualBox ในปัจจุบันรองรับนาฬิกา paravirtualized, การรายงานความถี่ของ APIC, การดีบักของผู้เยี่ยมชม, การรายงานข้อผิดพลาดของผู้เข้าพักและการตรวจสอบตัวจับเวลาที่ผ่อนคลาย ขอแนะนำผู้ให้บริการนี้สำหรับผู้เข้าพัก Windows

ตัวเลือกอื่น ๆ ในเมนูแบบเลื่อนลงทำดังต่อไปนี้ตามที่อธิบายไว้ในvboxmanageเอกสาร :

  • ไม่มี : การระบุnoneปิดอย่างชัดเจนเปิดเผยใด ๆ ส่วนต่อประสาน paravirtualization

  • ค่าเริ่มต้น : ตัวเลือกdefaultจะเลือกอินเทอร์เฟซที่เหมาะสมขึ้นอยู่กับประเภทระบบปฏิบัติการเกสต์ในขณะที่เริ่ม VM นี่เป็นตัวเลือกเริ่มต้นที่เลือกขณะสร้าง VM ใหม่

  • Legacy : legacyตัวเลือกถูกเลือกสำหรับ VM ซึ่งถูกสร้างขึ้นด้วย VirtualBox เวอร์ชันเก่ากว่าและจะเลือกอินเตอร์เฟสแบบ


6
การทดสอบโหมด KVM บนแขก Ubuntu ของฉัน (ใช้ OSX เป็นโฮสต์) มีปัญหาหลายครั้งที่เกี่ยวข้องรวมถึงนาฬิกาทำงานประมาณสองครั้งช้า (ฉันจะตั้งเวลาโดยใช้ ntp และใน 10 นาทีนาฬิกาจะล่าช้าประมาณ 5 นาที) ระบบกำลังทำงานทุกอย่างช้าลงเช่นการเรียก "sleep 5" จะใช้เวลานานกว่า 5 วินาที ขณะนี้ฉันกลับมาที่โหมด "Legacy"
JBernardo

@JBernardo คุณได้ทดสอบโหมดเริ่มต้นแล้วหรือยัง
LéoLéopold Hertz 준영

@ LéoLéopoldHertz준영 โหมดDefaultจะไม่เหมือนกับKVMที่เคยลองมาแล้วเหรอ?
endolith

@JBernardo ปกติไม่ควรใช้ ntp ภายใน VM เพราะมันถูกซิงโครไนซ์กับโฮสต์โดยยูทิลิตี้ของแขก มันอาจรบกวน
Bachsau

9

ให้แม่นยำยิ่งขึ้นเพราะฉันมี VM ที่โยกย้าย 4.3 และนั่นคือ "มรดก" ฉันยังสนใจที่จะใช้การตั้งค่าถ้าฉันคัดลอก VM จาก Linux ไปยัง Windows หรือในทางกลับกัน:

--paravirtprovider none | default | legacy | minimal | hyperv | kvm: การตั้งค่านี้ระบุว่าอินเตอร์เฟส paravirtualization ใดที่จะจัดเตรียมให้กับระบบปฏิบัติการ guest

  • การระบุว่าไม่มีการปิดใด ๆอย่างชัดเจนจะเปิดเผยส่วนต่อประสาน paravirtualization ใด ๆ
  • ตัวเลือกเริ่มต้นจะเลือกอินเทอร์เฟซที่เหมาะสมขึ้นอยู่กับประเภทระบบปฏิบัติการเกสต์ในขณะที่เริ่มต้น VM นี่เป็นตัวเลือกเริ่มต้นที่เลือกขณะสร้าง VM ใหม่
  • มรดกตัวเลือกที่ถูกเลือกสำหรับ VMs ที่ถูกสร้างขึ้นด้วย VirtualBox เก่ารุ่นและจะรับอินเตอร์เฟซ paravirtualization ในขณะที่เริ่มต้นกับ VM VirtualBox 5.0 และใหม่กว่า
  • น้อยที่สุดผู้ให้บริการคือบังคับสำหรับผู้เข้าพัก Mac OS X ,
  • kvm - แนะนำสำหรับผู้เยี่ยมชม Linux
  • และhyperv - แนะนำสำหรับผู้เยี่ยมชม Windows

ตัวเลือกเหล่านี้มีการอธิบายอย่างละเอียดภายใต้หัวข้อ 10.4“ ผู้ให้บริการ Paravirtualization

จากบทที่ 8ด้วยตนเอง

ดังนั้นหากคุณได้อัพเกรด VirtualBox เป็นเวอร์ชัน 5 ใน Linux เพียงเลือกkvmหรือdefaultให้เริ่ม VM และตรวจสอบว่ามันทำงานอย่างถูกต้องหรือไม่ ถ้าใช่เพียงออกจากการตั้งค่าใหม่

หากคุณย้าย / ย้าย VM จาก Linux ไปยัง Windows ฉันขอแนะนำให้ใช้ตัวเลือกเริ่มต้นซึ่งจะทำการเลือกอินเทอร์เฟซการจำลองเสมือนที่ดีที่สุดโดยอัตโนมัติ


0

เพียงแค่ mu ถึงเซนต์ตามการทดสอบของฉันเอง

ฉันได้ทดสอบกับแขกของ Windows 10 ทำงานบนโฮสต์ Windows 10 และบนโฮสต์ Linux (หรืออย่างน้อยฉันก็ลอง)

ไม่พูดถึงดิสก์เสมือนทั้งหมดที่ฉันใช้นั้นไม่สามารถแก้ไขได้ (เพื่อให้แน่ใจว่ามีการทดสอบเหมือนกัน)

บนโฮสต์ windows 10 แขกจะทำงานตามปกติ (อาจจะช้าไปบ้าง) แต่บูทและเดสก์ท็อปจะปรากฏขึ้น ... paravirtualization คือ "default"

ถ้าฉันลองใช้เครื่องเสมือนเดียวกันบนโฮสต์ Linux ที่มี paravirtualization "default" แขกของ Windows 10 จะไม่บู๊ตมันจะบู๊ตจนกว่าจุดจะเคลื่อนที่เป็นวงกลมหลังจากนั้นครู่หนึ่งก็ค้าง ... ไม่มีทางเข้าถึงเดสก์ท็อป .. โปรดจำไว้ว่าดิสก์ทั้งหมดไม่สามารถเปลี่ยนแปลงได้

แต่ทันทีที่ฉันตั้ง paravirtualization เป็น "Heredada" (มันเป็นภาษาสเปน) มันบูทและเข้าถึงเดสก์ท็อป แต่บางครั้ง (จำได้ว่าดิสก์ทั้งหมดไม่สามารถเปลี่ยนแปลงได้) มันจะรีบูตในขณะที่บางครั้งฉันสามารถใช้มันได้ (ช้ามาก) .. ดังนั้นจะต้องมีการแข่งขันการแข่งขันที่ไหนสักแห่ง sinve กับดิสก์ที่ไม่เปลี่ยนแปลงไม่ได้ทำเช่นเดียวกัน

อ่าอย่างไรก็ตามแขกของ Windows ไม่มีการเชื่อมต่ออินเทอร์เน็ตเพื่อให้แน่ใจว่าไม่มีการเชื่อมต่ออินเทอร์เน็ตที่สามารถทำให้สิ่งต่าง ๆ แตกต่างจากรองเท้าเย็น

โปรดจำไว้ว่า:

  • ดิสก์ทั้งหมดไม่สามารถเปลี่ยนแปลงได้
  • ทั้งหมดจะถูกคืนกลับในการบู๊ตแต่ละครั้ง
  • แขกของ Windows ไม่ได้ทำงานให้หมด
  • ด้วย paravirtualization ใน "default" มันไม่ได้บู๊ตบนโฮสต์ Linux แต่สามารถบู๊ตได้ดีบน Windows Host
  • ด้วย paravirtualization ใน "Heredada" มันจะทำการบูตบนโฮสต์ Linux (แต่มันไม่ได้เสถียรเสมอที่จะให้คุณใช้งานได้)

ฉันได้ลองเปิด / ปิดการใช้งาน 2D & 3D (เช่น PAE / NX) เพราะฉันต้องการแขกคนเดียวกัน (HDD เสมือนที่คัดลอกจากโฮสต์หนึ่งไปยังอีกโฮสต์หนึ่ง) จะเสถียรในโฮสต์ที่แตกต่างกันสองแห่ง ฉันยังต้องการที่จะสามารถคัดลอก HDDs เสมือนจากโฮสต์หนึ่งไปยังโฮสต์อื่นหลังจากที่ฉันทำการปรับปรุงใด ๆ (ก่อนที่จะทำการเริ่มระบบแบบเย็นทำการผสานดิสก์ที่ไม่มีตัวตนกับผู้ปกครองเพื่อทำการเปลี่ยนแปลงอย่างถาวรและไม่หลงทาง ฉันไม่ได้ใช้สแน็ปช็อตเฉพาะดิสก์ที่ไม่สามารถแก้ไขได้

นั่นคือสิ่งที่ฉันได้เห็นฉันต้องทำการทดสอบเพิ่มเติมกับค่า paravirtualization อื่น ๆ ในกรณีที่ผู้ใดทำงานได้ดีบนโฮสต์ Linux ฉันไม่ได้ใช้ MAC หรือ OS / 2 เฉพาะโฮสต์ Windows และโฮสต์ Linux Linux (โฮสต์ทั้งสองอยู่บนฮาร์ดแวร์ทางกายภาพที่แตกต่างกัน)

รุ่น: ผู้เยี่ยมชม Windows 10 คือบ้าน 64 บิตและรุ่นคือ 1809.17763.379

หวังว่าสิ่งนี้จะช่วยผู้อื่นทดสอบ & ทดสอบ & ทดสอบซ้ำ (ดีกว่ากับดิสก์ที่ไม่มีค่า) ชุดค่าใด ๆ จนกระทั่งพบชุดค่าผสมหนึ่งที่ใช้งานได้ดูเหมือนว่าเป็นวิธีเดียวที่จะทำให้แขกรับเชิญทำงานกับโฮสต์ประเภทต่างๆ (Windows / Linux)! !!

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