UEFI和Legacy的区别是什么,请尽量从原理上说明?

学习过一段时间bios开发 , 也是ec工程师 。回答的或许不全面 , 有问题请补充 。08年左右看到bios code已经主要是c语言实现 。当时 , 很多厂商也在切换ufei 。当时legacy实现 , 主要是个大loop,按照顺序初始化各种设备 , 中断也是写死的 。切换为uefi后 , 实质上是个操作系统 , 使用经典os的分层处理,分阶段启动 。实现以协议和驱动的方式加载各种设备驱动 。模块化设计 , 扩展和移植性更好 。

其他网友观点

UEFI的本意是摆脱Legacy的旧设备支持 , 提升速度和功能性 , 其实只是附带的 。

和传统模式相比 , UEFI去掉了自检模块 , 这对于高性能平台和服务器来说十分重要 , 而且去掉了一些老旧的支持 , 使新的处理器芯片不需要再背负很多旧设备遗留下来的远古代码 。同时配合系统的EFI启动 , 安全性更高 。

其他网友观点

【UEFI和Legacy的区别是什么,请尽量从原理上说明?】原来启动bios程序存在flash芯片里 , 容量有限 , 连鼠标驱动都少有 , 别说复杂的图形界面了 。uefi把启动程序装硬盘了 , bios能读硬盘就可以 , 程序空间大了可以把设备都驱动起来 , 弄个3d设置界面也是可以的 。

    推荐阅读