ฉันเริ่มทำงานกับ Docker และหลังจากไม่กี่ชั่วโมงของการพยายามทำให้มันทำงานได้ฉันพบว่า BIOS ของฉันบล็อกอยู่และฉันจำเป็นต้องปรับการตั้งค่า BIOS ฉันบอกว่า BIOS นั้นเกี่ยวข้องกับเมนบอร์ด
BIOS จะบล็อกกระบวนการประเภทนี้ได้อย่างไรโดยแทนที่ระบบปฏิบัติการ
ฉันเริ่มทำงานกับ Docker และหลังจากไม่กี่ชั่วโมงของการพยายามทำให้มันทำงานได้ฉันพบว่า BIOS ของฉันบล็อกอยู่และฉันจำเป็นต้องปรับการตั้งค่า BIOS ฉันบอกว่า BIOS นั้นเกี่ยวข้องกับเมนบอร์ด
BIOS จะบล็อกกระบวนการประเภทนี้ได้อย่างไรโดยแทนที่ระบบปฏิบัติการ
คำตอบ:
ไม่ใช่ว่า CPU กำลังบล็อกโปรแกรมอยู่ มันไม่มีแนวคิดของแอพที่ระดับต่ำ ปัญหาคือนักเทียบท่าบนระบบปฏิบัติการที่ไม่ใช่ Linuxอาจต้องการฮาร์ดแวร์เสมือนจริง คุณยังไม่ได้ระบุระบบปฏิบัติการของคุณ แต่ฉันทำการสอดแนมเล็กน้อยและพบว่าคุณอาจใช้ Windows
การจำลองเสมือนสำหรับฮาร์ดแวร์เป็นคุณลักษณะของ CPU ที่ตามที่คุณอาจคาดเดาได้จากชื่อให้ใช้ CPU ช่วยในการจำลองเสมือน ในหลาย ๆ เครื่องคุณต้องเปิดใช้งานใน BIOS นี่คือในส่วนที่จะป้องกันไม่ให้เกิดปัญหาด้านความปลอดภัย โดยพื้นฐานแล้วคุณไม่สามารถเริ่มโปรแกรมได้เนื่องจากพยายามใช้คุณลักษณะที่หายไปอย่างมีประสิทธิภาพเมื่อเทียบกับการบล็อกอย่างแข็งขัน
a tiny bit of snooping
Ha..ha
คำตอบของเบ็นเอ็นเป็นคำตอบที่มีประโยชน์และชัดเจน
สำหรับผู้ที่ยังสงสัย แต่ที่นี่เป็นเรื่องเต็ม
การจำลองเสมือนทำได้ด้วยการช่วยเหลือของฮาร์ดแวร์จาก CPU เนื่องจากระบบปฏิบัติการเสมือนจริงจะรบกวนการทำงานของโฮสต์ในขณะที่แข่งขันกันเพื่อใช้ทรัพยากรเดียวกันจึงจำเป็นต้องมีกลไกในการหยุดแขกจากการเข้าถึงฮาร์ดแวร์ที่ไม่สามารถควบคุมได้ สิ่งนี้อาจลงกับซอฟต์แวร์ช้าเทคนิคหรือด้วยความช่วยเหลือจาก CPU
virtualization ฮาร์ดแวร์ช่วยถูกนำมาใช้กับเฉพาะตัวเลือกคำแนะนำคุณสามารถอ่านเกี่ยวกับเรื่องนี้ในบทที่ 23, 24, 25, 26, 27 และ 28 ของอินเทลคู่มือ 3B ส่วนที่ 3 ซอฟต์แวร์จะต้องตรวจสอบคำแนะนำนี้ก่อนที่จะได้รับการสนับสนุนก่อนที่จะพยายามใช้
เพื่อเหตุผลด้านความปลอดภัย CPU มีการลงทะเบียนพิเศษมันเป็นMSR ที่เรียกว่า IA32_FEATURE_CONTROLที่เก็บบิตบอกด้วยคุณสมบัติในการเปิดหรือปิด
quoting
บิต 0 คือบิตล็อค หากบิตนี้ชัดเจน VMXON จะทำให้เกิดข้อยกเว้นการป้องกันทั่วไป หากล็อคบิตตั้งไว้ WRMSR เป็น MSR นี้จะทำให้เกิดข้อยกเว้นการป้องกันทั่วไป ปฏิกรณ์ไม่สามารถแก้ไขได้จนกว่าจะมีอำนาจขึ้นสภาพรีเซ็ต BIOS ระบบสามารถใช้บิตนี้เพื่อจัดเตรียมตัวเลือกการตั้งค่าสำหรับ BIOS เพื่อปิดใช้งานการสนับสนุน VMX ในการเปิดใช้งานการรองรับ VMX ในแพลตฟอร์ม BIOS ต้องตั้งค่าบิต 1, บิต 2 หรือทั้งสองอย่าง (ดูด้านล่าง) รวมถึงล็อคบิต
จุดพื้นฐานคือว่าครั้งหนึ่งเคยลงทะเบียนถูกล็อคจะไม่สามารถปลดล็อคจนกว่าจะมีอำนาจขึ้น
เนื่องจาก BIOS / UEFI มาก่อนจึงมีอำนาจในการปิดใช้งานการจำลองเสมือนโดยการล้างบิตที่เหมาะสมและล็อคการลงทะเบียนก่อนที่ระบบปฏิบัติการใด ๆ จะสามารถป้องกันได้ เมื่อปิดใช้งานคุณลักษณะการจำลองเสมือนด้วยวิธีนี้ CPU รายงานว่าส่วนขยายการเรียนการสอนทางเลือกขาดหายไป (และจริง ๆ แล้วมีข้อผิดพลาดหากใช้) และซอฟต์แวร์ไม่สามารถใช้การจำลองเสมือนสำหรับฮาร์ดแวร์ได้