linuxboot

Legacy和UEFI,MBR和GPT的区别

随声附和 提交于 2021-02-12 09:33:54
Legacy(历史的,遗留的,传统的)和UEFI指的是系统引导方式(Legacy为传统BIOS,UEFI为新式BIOS),MBR和GPT指的是磁盘分区表类型。 一般情况下都是Legacy+MBR, UEFI+GPT这两种组合。但Legacy+GPT,UEFI+MBR也可以实现。 Legacy用的是8086汇编,UEFI 99%以上用C,UEFI的APP和Drives可以用C/C++。 64位的UEFI固件是64位的操作系统(少数二合一平板用32位UEFI固件的可以忽略不计),Legacy是16位的。 Legacy是直接针对底层硬件细节,UEFI通过Firmware-OS Interface、Boot Services、Runtime Services为操作系统和引导器屏蔽了底层硬件的细节。 UEFI可以扩展,大多数硬件加载UEFI的驱动模块就可以完成初始化,驱动模块可以放在固件中,也可以放在设备上,比如显卡的GOP,系统启动就自动加载。UEFI中的每个Table和Protocol都有版本号,可以平滑升级。开发者可以自己根据规范开发UEFI应用程序和驱动程序。 UEFI基于time的异步操作,提高了CPU的效率,减少了等待时间。 UEFI舍弃了中断这种外部设备操作方式,仅保留了时钟中断,操作外部设备采用事件+异步操作,启动的时候按需加载外部设备。 UEFI有个安全启动功能