อะไรคือความแตกต่างใน“ Boot with BIOS” และ“ Boot with UEFI”


118

ตอนนี้ Windows 8 รองรับ bootloader ของ UEFI และฉันได้อ่านแล้วว่ามันแตกต่างจาก BIOS แต่ก็ไม่ชัดเจนสำหรับฉันหลังจากการค้นหาหลายครั้งบน Google

บางจุดในใจอยู่ด้านล่าง: -

  • อย่างที่เราทราบกันดีว่า BIOS เป็นส่วนสำคัญในการเข้าถึงตัวเลือกการบูต ดังนั้น UEFI จะทำเช่นนั้น? อย่างไร?

  • ฉันจะรู้ได้อย่างไรว่าฉันกำลังบูทด้วย UEFI ไม่ใช่กับ BIOS?

  • ดังนั้นอะไรคือความแตกต่างที่แท้จริงใน "การบูตด้วย BIOS" และ "การบูตด้วย UEFI"

คำตอบ:


134
  • ในฐานะที่เราทุกคนรู้ว่า BIOS เป็นส่วนสำคัญในการเข้าถึงตัวเลือกการบูต ดังนั้นตอนนี้ UEFI จะทำเช่นนั้น? อย่างไร?

บูท BIOS โดยการอ่านเซกเตอร์แรกบนฮาร์ดดิสก์และดำเนินการ บูตเซกเตอร์นี้จะค้นหาและเรียกใช้รหัสเพิ่มเติม ระบบ BIOS มีข้อ จำกัด อย่างมากเนื่องจากข้อ จำกัด ด้านพื้นที่และเนื่องจาก BIOS ใช้รหัส 16 บิตในขณะที่คอมพิวเตอร์สมัยใหม่ใช้ CPU แบบ 32 บิตหรือ 64 บิต ในทางตรงกันข้าม EFI (หรือ UEFI ซึ่งเป็นเพียงแค่บูต EFI 2.x) โดยการโหลดไฟล์โปรแกรม EFI (พร้อม.efiนามสกุลไฟล์) จากพาร์ติชันบนฮาร์ดดิสก์ซึ่งรู้จักกันในชื่อ EFI System Partition (ESP) โปรแกรมโหลดเดอร์ EFI เหล่านี้สามารถใช้ประโยชน์จากบริการบูท EFI สำหรับสิ่งต่าง ๆ เช่นการอ่านไฟล์จากฮาร์ดดิสก์

ตามจริงแล้วหากคุณใช้ระบบปฏิบัติการเช่น Linux ที่มีตัวตักการบูตโหมด BIOS ที่ซับซ้อนการบูทโหมด EFI น่าจะคล้ายกับการบูตในโหมดไบออสเนื่องจาก GRUB 2 (บูตเดอร์โหมด BIOS ที่นิยมมากที่สุด สำหรับ Linux) ได้รับการจัดพอร์ตให้ทำงานภายใต้ EFI และลีนุกซ์รุ่นอื่น ๆ ติดตั้ง GRUB 2 ตามค่าเริ่มต้นบนระบบ EFI OTOH คุณสามารถแทนที่หรือเสริม GRUB 2 กับตักบูต EFI อื่น ๆ ที่จริงแล้วเคอร์เนล Linux สามารถเป็นบูตโหลดเดอร์ของ EFI รหัสถูกเพิ่มเข้ามาเพื่อทำสิ่งนี้กับเคอร์เนล 3.3.0 ใช้ด้วยวิธีนี้ EFI เองทำการโหลดและรันเคอร์เนล Linux หรือคุณสามารถใช้ตัวจัดการการบูตของ บริษัท อื่นเช่นrEFIndหรือgummibootเพื่อให้คุณเลือกระบบปฏิบัติการหรือเคอร์เนลที่จะบูต

  • ฉันจะรู้ได้อย่างไรว่าฉันกำลังบูทด้วย UEFI ไม่ใช่กับ BIOS?

ดังที่รูทบอกว่ามีเงื่อนงำในส่วนต่อประสานผู้ใช้ของเฟิร์มแวร์ อย่างไรก็ตามคอมพิวเตอร์เหล่านั้นไม่น่าเชื่อถือและแตกต่างจากคอมพิวเตอร์เครื่องหนึ่งไปอีกเครื่องหนึ่ง วิธีเดียวที่จะแน่ใจได้คือการตรวจสอบว่าคอมพิวเตอร์บูตอย่างไร ในลีนุกซ์ตัวอย่างเช่นการมีอยู่ของไดเรคทอรีที่เรียกว่า/sys/firmware/efiเป็นการวินิจฉัย หากมีอยู่แสดงว่าคุณบูตเครื่องในโหมด EFI แล้ว หากไม่มีอยู่แสดงว่าคุณอาจบู๊ตในโหมด BIOS (ไดเรกทอรีนี้อาจหายไปจากการบูทโหมด EFI ในบางสถานการณ์) dmesgเอาต์พุตที่อ้างถึง EFI ยังทำการวินิจฉัยการบู๊ตโหมด EFI ใน Windows ตารางพาร์ติชันของดิสก์สำหรับเริ่มระบบกำลังวินิจฉัย ถ้าเป็น GPT คุณบูตในโหมด EFI และถ้าเป็น GPR คุณจะบูตในโหมด BIOS

  • แล้วอะไรคือความแตกต่างของ "boot with BIOS" และ "boot with UEFI"

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

UEFI รองรับคุณสมบัติที่เรียกว่าSecure Bootที่ตั้งใจไว้ตามชื่อแนะนำเพื่อปรับปรุงความปลอดภัย มันทำเช่นนี้โดยกำหนดให้ "ลายเซ็น" แบบดิจิตอลของบูตโหลดเดอร์ซึ่งจะต้องมีการเซ็นชื่อของเมล็ดและอื่น ๆ ในสายโซ่ สิ่งนี้จะทำให้ผู้เขียนมัลแวร์ใส่รหัสลงในกระบวนการ pre-boot ได้ยากขึ้นซึ่งเป็นการปรับปรุงความปลอดภัย สิ่งนี้ฟังดูดี แต่ก็มีความซับซ้อนในการกำหนดค่าดูอัลบูตเนื่องจากโค้ดเช่น GRUB และเคอร์เนล Linux ต้องลงนาม ผู้จำหน่ายลินุกซ์รายใหญ่กำลังพยายามหาวิธีที่จะทำให้ความต้องการเหล่านี้น้อยลงสำหรับผู้ใช้ลินุกซ์โดยเฉลี่ยและพวกเขาก็มีข้อมูลเบื้องต้นพร้อมอยู่ อย่างไรก็ตามในขณะนี้การปิดใช้งาน Secure Boot เป็นวิธีที่ง่ายที่สุดในการจัดการกับมัน นี่เป็นข้อกังวลในทางปฏิบัติสำหรับคอมพิวเตอร์รุ่นใหม่ที่มาพร้อมกับ Windows 8 เนื่องจาก Microsoft ต้องการให้เปิดใช้งาน Secure Boot เพื่อรับการรับรอง Windows 8 บางคนสร้างความสับสนให้กับ UEFI และ Secure Boot (อันหลังเป็นเพียงฟีเจอร์หนึ่งของอดีต) แต่มันสมควรได้รับการกล่าวถึงว่าเป็นความแตกต่างระหว่าง BIOS และ UEFI เพราะมันทำให้เกิดปัญหากับคอมพิวเตอร์ Windows 8 ใหม่ หากคุณมีระบบเก่าหรือมีความสะดวกสบายเพียงพอกับยูทิลิตี้การตั้งค่าเฟิร์มแวร์เพื่อปิดใช้งาน Secure Boot สิ่งนี้ไม่จำเป็นต้องเป็นปัญหาจริง

Microsoft เชื่อมโยงตารางพาร์ติชันของดิสก์สำหรับบูตกับชนิดเฟิร์มแวร์ (MBR กับ BIOS; GPT ถึง UEFI) เนื่องจาก MBR ใช้งานได้ดีที่สุดที่ 2TiB (สมมติว่ามีขนาดเซกเตอร์มาตรฐาน) นั่นหมายความว่า UEFI เป็นสิ่งจำเป็นในการใช้งานจริงในการบูต Windows บนดิสก์ที่มีขนาดเกิน 2TiB คุณยังสามารถใช้ดิสก์ขนาดใหญ่เช่นดิสก์ข้อมูลใน Windows ได้และคุณสามารถบูตระบบปฏิบัติการที่ไม่ใช่ของ Microsoft (เช่น Linux และ FreeBSD) บนดิสก์ขนาดใหญ่โดยใช้ GPT ภายใต้ BIOS

ในทางปฏิบัติหากคุณกังวลหรือสนใจ UEFI ปัญหาที่ใหญ่ที่สุดก็คือเพียงแค่ว่า UEFI นั้นใหม่พอที่จะรองรับสิ่งนี้ได้อย่างแน่นอนโดยเฉพาะใน OSE ที่เก่ากว่าและแปลกใหม่กว่า UEFI นั้นใหม่มากพอที่การใช้งานส่วนใหญ่จะเป็นบักกี้และสิ่งที่ไม่แตกต่างกันมากพอที่จะอธิบายสิ่งต่าง ๆ โดยทั่วไปได้ยาก ดังนั้นการใช้ UEFI จึงเป็นสิ่งที่ท้าทาย OTOH, UEFI คืออนาคต มีข้อได้เปรียบเล็กน้อยบางอย่างจะกลายเป็นสิ่งสำคัญในเวลา (เช่นขีด จำกัด ดิสก์สำหรับบูต 2TiB ของ Windows) การเปลี่ยนเป็นการบู๊ต UEFI จะเปลี่ยนรายละเอียดเล็กน้อยของกระบวนการบู๊ต แต่ประสบการณ์การใช้คอมพิวเตอร์โดยรวมของคุณจะไม่เปลี่ยนแปลงไปมากนักเมื่อคุณเอาชนะปัญหาการบู๊ตที่คุณอาจพบเจอ


แก้ไข:

คุณสามารถขยายการตั้งค่า OpRom (รอมตัวเลือก) ดูเหมือนว่าจะช่วยให้คุณเลือกระหว่างการบูท UEFI หรือการบูต "แบบดั้งเดิม" และใช้กับการ์ดวิดีโอการ์ดเครือข่ายและอุปกรณ์ PCI อื่น ๆ

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

เช่นเดียวกับ boot loader โค้ดในเฟิร์มแวร์ของอุปกรณ์ plug-in นั้นถูกเขียนไปยังส่วนต่อประสานกับไบออสหรือ EFI (แม้ว่าการ์ด plug-in สามารถรองรับได้ทั้งสองอย่างถ้าฉันไม่เข้าใจผิด) EFIs บางตัวมีตัวเลือกให้เปิดใช้งานหรือปิดใช้งานการสนับสนุนนี้อย่างละเอียดตามที่คุณได้สังเกตเห็น ในบางกรณี EFI สามารถใช้การสนับสนุนโหมด BIOS ของการ์ดเพื่อให้สามารถใช้งานได้ในโหมด EFI โดย "แปล" การโทร (นี่เป็นเรื่องปกติกับการ์ดแสดงผลตัวอย่างเช่นคุณสามารถเสียบการ์ดแสดงผลเก่าโดยไม่ต้องใช้อะไรนอกจากการรองรับ BIOS ในเฟิร์มแวร์และยังใช้เพื่อบู๊ตในโหมด EFI)

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


หากฮาร์ดดิสก์มีทั้งพาร์ติชันสำหรับบู๊ต BIOS และพาร์ติชันระบบ EFI นี่หมายความว่าฮาร์ดดิสก์นี้สามารถบู๊ตได้ในโหมด BIOS และโหมด EFI หรือไม่ ดังนั้นฮาร์ดดิสก์คือ "โหมดบูต" ไม่เชื่อเรื่องพระเจ้า? ฉันเห็นในการสอน gdisk ว่ามันตั้งค่า BIOS Boot Partition และ EFI System Partition นอกจากนี้ในกรณีอื่น ๆ บางคนบอกว่าคุณอาจต้องการ/bootพาร์ติชันอื่น (ส่วนใหญ่เป็นเพราะฉันพยายามใช้ ZFS) หนึ่งจะกระทบยอด RAIDED /bootกับพาร์ติชันสำหรับบูต BIOS และพาร์ติชันระบบ EFI อย่างไร
CMCDragonkai

ดิสก์สามารถมีได้ทั้ง ESP และ BIOS Boot Partition หลังถูกนำมาใช้เท่านั้นโดยด้วงดังนั้นดิสก์สามารถที่สามารถบูตได้ทั้งในและ EFI BIOS ได้โดยไม่ต้องหลังขึ้นอยู่กับสิ่งบูตถูกนำมาใช้ /bootโดยปกติแล้วพาร์ติชันLinux ที่แยกต่างหากนั้นจะมีอยู่นอกอาร์เรย์ RAID ไม่ว่าโหมดบูตจะเป็นอะไรก็ตามบูตโหลดเดอร์จะต้องสามารถอ่านเคอร์เนลได้และตัวโหลดบูตส่วนใหญ่ไม่สามารถจัดการกับซอฟต์แวร์ RAID ได้ (ด้วงสามารถทำได้ แต่คนไม่กี่คนลอง)
Rod Smith

ฉันจำเป็นต้องใช้ RAID อ่อน/bootเพราะ ZFS ไม่สามารถมี/bootกับมัน ฉันถาม ZFS บนรายชื่อผู้รับจดหมาย Linux
CMCDragonkai

1
BIOS ไม่มีอะไรเทียบเท่ากับ Secure Boot จากระยะไกล
ร็อดสมิ ธ

1
การสนับสนุน UEFI นั้นค่อนข้างดีในระบบปฏิบัติการกระแสหลักที่ได้รับความนิยมมากที่สุดโดยเฉพาะใน Windows 7 และใหม่กว่าและการกระจาย Linux ในปัจจุบันส่วนใหญ่ หากคุณย้ายออกนอกขอบเขตดังกล่าวคุณควรศึกษาการสนับสนุน UEFI ของระบบปฏิบัติการของคุณ ตัวอย่างล่าสุดที่ฉันตรวจสอบเช่น ReactOS, Haiku และ FreeDOS ล้วนขาดการสนับสนุน UEFI อย่างไรก็ตามฉันได้ตรวจสอบสิ่งเหล่านี้มาระยะหนึ่งแล้วดังนั้นจึงมีความเป็นไปได้ที่พวกเขาจะได้รับการสนับสนุนจาก UEFI
Rod Smith

21
  • ในฐานะที่เราทุกคนรู้ว่า BIOS เป็นส่วนสำคัญในการเข้าถึงตัวเลือกการบูต ดังนั้นตอนนี้ UEFI จะทำเช่นนั้น? อย่างไร?

UEFI เป็นอินเทอร์เฟซของเฟิร์มแวร์ข้ามแพลตฟอร์มที่แทนที่มาตรฐาน x86 เฉพาะเฟิร์มแวร์ชื่อ BIOS การใช้งาน UEFI จำนวนมากยังรวมถึงความเข้ากันได้ของ BIOS / โหมด "ดั้งเดิม" เพื่อเปิดใช้งานการบูตจาก MBR และนำเสนออินเตอร์เฟสที่คล้ายกับ BIOS ไปยังระบบปฏิบัติการ อย่างไรก็ตามมาตรฐานนี้ไม่จำเป็นต้องใช้

  • ฉันจะรู้ได้อย่างไรว่าฉันกำลังบูทด้วย UEFI ไม่ใช่กับ BIOS?

หากคุณมีเมนบอร์ด UEFI ได้ที่มีการบูตเข้ากันได้ / มรดก BIOS แล้วเมนูเฟิร์มของมันจะให้ทางเลือกเช่นการตั้งค่าโหมดการบูตเริ่มต้นหรือแม้กระทั่งการบูตอุปกรณ์เดียวทั้งใน UEFI หรือโหมด BIOS: มิฉะนั้นมีอาจจะไม่ง่าย วิธีบอกโดยไม่ต้องตรวจสอบเฟิร์มแวร์โดยใช้ระบบปฏิบัติการ

  • แล้วอะไรคือความแตกต่างของ "boot with BIOS" และ "boot with UEFI"

มีความแตกต่างมากมาย:

  • UEFI กำหนดอินเทอร์เฟซของเฟิร์มแวร์ OS ที่คล้ายกันเช่น BIOS แต่ไม่เฉพาะเจาะจงกับสถาปัตยกรรมโปรเซสเซอร์ใด ๆ ไบออสนั้นมีลักษณะเฉพาะกับสถาปัตยกรรมโปรเซสเซอร์ Intel x86 เนื่องจากอาศัยอินเตอร์เฟส "โหมดจริง" 16 บิตที่รองรับโดยโปรเซสเซอร์ x86
  • UEFI สามารถกำหนดค่าให้เร่งส่วนต่างๆของขั้นตอนการบูตตัวอย่างเช่นUEFI ใน Gigabyte GA-EP45-DS3 เริ่มต้นใน 11 วินาทีเมื่อเทียบกับ BIOS ใน 19 วินาที
  • โหมด UEFI อาจมีคุณสมบัติของเฟิร์มแวร์ / ฮาร์ดแวร์ที่แตกต่างกันไปยังระบบปฏิบัติการเดียวกันที่ติดตั้งมากกว่าโหมด BIOS

ดูข้อมูลเพิ่มเติมเกี่ยวกับ UEFI


1
ไม่สามารถบอกได้ว่าโหมดการบู๊ตจริงนั้นใช้การตั้งค่าเฟิร์มแวร์เพียงใดเพราะ EFIs ส่วนใหญ่ใช้ปัจจัยจากดิสก์รวมถึงการตั้งค่าเฟิร์มแวร์เพื่อกำหนดโหมดการบู๊ต ปัจจัยจากดิสก์ดังกล่าวรวมถึงประเภทตารางพาร์ติชันการตั้งค่าสถานะ "boot / active" ใน MBR การมี / ไม่มีพาร์ติชันระบบ EFI หรือไฟล์ภายในและอื่น ๆ วิธีเดียวที่จะบอกได้อย่างแน่นอนคือการตรวจสอบสัญญาณของโหมด EFI หรือการบู๊ตโหมด BIOS ในระบบปฏิบัติการที่คุณบู๊ตและสัญญาณเหล่านั้นเป็นระบบปฏิบัติการเฉพาะ
Rod Smith

1
ไม่ UEFI ไม่เคย "ถูกใช้งานบน BIOS แบบดั้งเดิม" UEFI เป็นเฟิร์มแวร์ชนิดหนึ่งที่ใช้แทนที่ BIOS รุ่นเก่ากว่า อาจรวมถึงโหมดความเข้ากันได้ / แบบดั้งเดิมที่ช่วยให้สามารถบูตจาก MBR สไตล์ BIOS และนำเสนออินเทอร์เฟซที่เทียบเท่ากับ BIOS ไปยัง OS ที่ต้องการ แต่ไม่ได้หมายความว่ามันมี BIOS อยู่ด้านล่าง
underscore_d

1
P0 / P1 / P2 หมายถึงอะไรในภาพของคุณ?
CMCDragonkai

ลิงก์รูปภาพเสียหาย
Dan Dascalescu

1
@underscore_d มีอยู่ implementions EFI ที่ทำงานอยู่ด้านบนของ BIOS แบบดั้งเดิม ฉันเขียนหนึ่งGigabyte "ไฮบริดสลี EFI" ที่นี่ ประสบการณ์ของฉันกับมันค่อนข้างเชิงลบ นอกจากนี้ยังมีCloverและDUETซึ่งทำงานเหมือนกับบูตโหลดเดอร์บนคอมพิวเตอร์ที่ใช้ BIOS มาตรฐานเพื่อให้สามารถเรียกใช้บูตโหลดเดอร์โหมด EFI และระบบปฏิบัติการ แต่โคลเวอร์และ DUET ไม่ใช่เทคนิคเฟิร์มแวร์ดังนั้นฉันไม่แน่ใจว่าพวกเขาจะนับจริงๆ
Rod Smith

8

ถาม: อย่างที่เราทราบกันดีว่า BIOS เป็นส่วนสำคัญในการเข้าถึงตัวเลือกการบูต ดังนั้นตอนนี้ UEFI จะทำเช่นนั้น? อย่างไร?

ตอบ: นี่เป็นความสับสนเกี่ยวกับข้อกำหนด เช่น "ป้อน BIOS เพื่อเปลี่ยน blabla" คำศัพท์ที่ถูกต้องทางการเมืองคือ "ยูทิลิตี้การตั้งค่าเฟิร์มแวร์" สำหรับสิ่งที่คุณป้อน หากคุณพูดถึง“ BIOS” ที่ตัดกันกับ“ UEFI” มันหมายถึงอย่างอื่นนั่นคือสภาพแวดล้อมในการประมวลผลการบูต

ดังนั้นถ้าคุณหมายถึงยูทิลิตี้การตั้งค่านั้นก) อย่าเรียกมันว่า UEFI และ b) โดยพื้นฐานแล้วมันก็เหมือนกับในสมัยก่อน

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

ถาม: อะไรคือความแตกต่างของ "boot with BIOS" และ "boot with UEFI" ที่แตกต่างกัน?

ตอบ: สภาพแวดล้อมที่บูตโหลดเดอร์พบว่าตัวเองแตกต่างกัน และด้วย UEFI สภาพแวดล้อมนั้นได้ระบุไว้อย่างชัดเจนยิ่งทันสมัยและมีคุณลักษณะมากขึ้น

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