为什么GPT分区需要biosboot分区,而MBR不需要

  • BIOS boot partition是一个分区,gnu grub1用它来引导基于legacy bios但启动设备上却包含GPT格式分区表时的操作系统。这种结构有时候被称为BIOS/GPT启动2

下图非原文内容,是本人提供,用于直观地感受bios boot分区。
加粗样式在这里插入图片描述

  • Bios boot分区是必要的,因为GPT使用紧跟在MBR后面的扇区来保存实际的分区表,但在传统的MBR分区架构中,这些扇区并没有特殊的作用,这样的结果是没有足够的可用空闲空间来存储stage2这段boot loader。MBR中也存储了boot loader,但MBR无法存储超过512字节的内容,所以MBR中的这段boot loader被当作stage1使用,它的主要作用是加载功能更多更复杂的stage2这段boot loader,stage2可以从文件系统读取和载入操作系统内核。

  • 当使用了BIOS boot分区,该分区将包含stage2的boot loader程序,例如grub2文件,而stage1的boot loader代码仍保留在MBR中。使用bios boot分区不是解决基于传统bios但使用了gpt格式磁盘问题的唯一方法,但是复杂的boot loader如grub2无法将无法完全符合MBR中的398-446字节的区域,因此它们需要一个辅助的存储空间。在MBR磁盘上,一般使用紧跟在MBR后的扇区空间来存储这些复杂的boot loader,这些扇区空间就是大众所熟知的 “MBR gap”而在GPT磁盘上,由于没有与MBR gap等效的未使用空间,所以单独使用一个bios boot分区来分配这样的空间,以存储复杂的boot loader

  • BIOS boot分区的GUID可以是"21686148-6449-6E6F-744E-656564454649"。在基于BIOS的平台下的GPT中,BIOS boot分区有点类似于EFI平台下的EFI系统分区,EFI系统分区使用UEFI保存文件系统和文件,而用于BIOS平台的BIOS boot分区则不使用文件系统来保存代码(见上面的图,在bios boot分区上是没有创建文件系统的)。

  • bios boot分区的大小非常小,可以小到只有31kB(由于第一个扇区是mbr,所以bios boot的内容从第2扇区到第63扇区),但是由于未来boot loader可能会扩展,所以建议bios boot分区设置为1M大小,而且很多磁盘分区工具都使用1MB分区对齐策略,这样MBR到第一个分区之间会保留一些空闲空间。
    在这里插入图片描述

  • 在Example 2中,grub 2在bios boot分区中存储它的core.img。
    请添加图片描述


  1. gnu grub:现在使用的grub都是gnu山寨出来的grub,原始的grub早已消失在历史中。 ↩︎

  2. 也就是bios MBR和gpt混用的模式 ↩︎

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Compaq Computer Corporation Phoenix Technologies Ltd. Intel Corporation BIOS Boot Specification 1.0 INTRODUCTION 5 1.1 REVISION HISTORY 5 1.2 RELATED DOCUMENTS 5 1.3 PURPOSE 5 1.4 TERMS 6 2.0 OVERVIEW 9 2.1 DESCRIPTION 9 3.0 IPL DEVICES 10 3.1 REQUIREMENTS FOR IPL DEVICES 10 3.1.1 IPL TABLE 10 3.1.2 PRODUCT NAME STRING 10 3.2 BAIDS 11 3.3 DEVICES WITH PNP EXPANSION HEADERS 11 3.4 LEGACY IPL DEVICES 12 3.5 IDENTIFYING IPL DEVICES 13 3.5.1 BAIDS 13 3.5.2 PNP EXPANSION HEADER 13 3.5.3 PCI DEVICES 13 3.5.4 IDENTICAL IPL DEVICES 14 4.0 IPL PRIORITY 15 4.1 MAINTAINING THE IPL PRIORITY 15 4.2 IPL PRIORITY PSEUDOCODE 17 5.0 BCV PRIORITY 18 5.1 INTRODUCTION 18 5.2 INT 13H DEVICE CONTROLLERS 18 5.2.1 ATA DRIVE SUPPORT IN THE BIOS 18 5.2.2 PNP CARDS WITH BCVS 19 5.2.3 LEGACY CARDS WITH OPTION ROMS 19 5.2.4 HARD DRIVE BAID 19 5.2.5 CONTROLLER INSTALLATION GUIDELINES 19 5.2.6 NOTES ON INT 13H DEVICES 20 5.3 INSTALLATION ORDERING 20 5.4 POST PSEUDOCODE 22 6.0 POST SEQUENCE 23 6.1 POWER-ON INITIALIZATION 23 6.1.1 INITIALIZING BAIDS 23 6.1.2 PNP BOOT DEVICES 23 6.2 PNP OPTION ROM INITIALIZATION 23 6.3 CHECK IPL PRIORITY AND BCV PRIORITY 24 6.4 INT 13H DEVICE CONTROLLER INSTALLATION 24 6.4.1 BOOT CONNECTION VECTORS 25 6.4.2 DISCONNECT VECTOR 25 6.4.3 LEGACY ROM SCAN 26 6.4.4 ON-BOARD ATA SUPPORT 26 6.5 INT 19H PROCESSING 26 6.5.1 BOOTING FROM BAIDS 27 6.5.2 BOOTING FROM BEVS 27 6.6 INT 19H PSEUDOCODE 28 6.7 INT 18H PSEUDOCODE 28 6.8 NOTES ON THE POST PROCESS 29 APPENDIX A: DATA STRUCTURES 30 A.1 IPL TABLE AND BCV TABLE ENTRY DATA STRUCTURE 30 A.2 PNP OPTION ROM HEADER 31 A.3 PNP EXPANSION HEADER 31 A.4 PCI DATA STRUCTURE 31 APPENDIX B: RUN-TIME FUNCTIONS (OPTIONAL) 32 FUNCTION 60H - GET VERSION AND INSTALLATION CHECK 32 FUNCTION 61H - GET DEVICE COUNT 33 FUNCTION 62H - GET PRIORITY AND TABLE 34 FUNCTION 63H - SET PRIORITY 35 FUNCTION 64H - GET IPL DEVICE FROM LAST BOOT 36 APPENDIX C: BOOT MENU (OPTIONAL) 37 C.1 BOOT MENU POP-UP 37 C.2 BOOT MENU INT 19H PSEUDOCODE 37 C.3 BOOT FIRST RUN-TIME FUNCTIONS 38 FUNCTION 65H - GET BOOT FIRST 38 FUNCTION 66H - SET BOOT FIRST 38 APPENDIX D: RECOMMENDED BOOT SECTOR CHANGES (OPTIONAL) 39 D.1 USE DL FOR DRIVE NUMBER 39 D.2 INT 18H ON BOOT FAILURE 39 APPENDIX E: PCI WITH MULTIPLE PNP HEADERS (OPTIONAL) 40 E.1 DESCRIPTION 40 E.2 REQUIREMENTS 40 E.3 OPTION ROM INITIALIZATION 40 E.3.1 BEFORE OPTION ROM PLACEMENT 40 E.3.2 PLACING THE PCI OPTION ROM 40 E.3.3 CALLING THE PCI OPTION ROM 41 E.3.4 NO DEVICES PRESENT 41 E.3.5 DEVICES ARE PRESENT 41 E.4 ENUMERATING PNP EXPANSION HEADERS 42 E.5 CALLING THE BCVS 42

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值