https://www.zhihu.com/question/21672895
人们总是习惯性的对新出现的东西持怀疑和否定的态度,
UEFI在启动时又还是那三个步骤,那么UEFI一定是提供了某种特别的东西,才能让传统的固件工程师改换门庭。它们究竟是什么呢?
答案就隐藏在上面一节“BIOS、UEFI的目的”中。UEFI扫除了传统BIOS割裂的生态,打通了PC固件之间的鸿沟,并提供统一的接口给操作系统,而不关心操作系统是什么;它能够更好的完成PC固件的终极目的:初始化硬件和提供硬件的软件抽象,和启动操作系统。如果说有什么东西帮助UEFI打败了传统BIOS,那这些东西就是:标准接口、开放统一和开源了。 传统BIOS来自于IBM,之后就进入战国时代,激烈的商战让接口统一成为了不可能做到的事,只有在面对微软这个大用户的时候,才勉强提供了“兼容”的基于软中断的接口。它封闭、神秘和充满各种不清不楚的预设和祖传代码,在调试PCI的ROM时要小心各种rom之间互相踩,各种只有老师傅才知道的神奇“诀窍”。要写个驱动,让它在各个BIOS厂商那里都能跑,简直成为了一件不可能完成的任务。 UEFI[1]由Intel推动,在一开始就将标准公开,拉上了微软这个PC界的霸主,强势统一了江湖。在近20年的深耕下,统一了固件启动阶段基础框架Spec:PI Spec与操作系统的接口Spec:UEFI Spec,并将抽象硬件的原语性Spec: ACPI Spec也拉入这个大家庭,都变成UEFI Forum的一份子。
没有评论:
发表评论