UEFI 学习笔记(一)
了解BIOS
BIOS概述
BIOS全称为“基本输入/输出系统”,其中包括:
1.加电自检程序,开机对硬件进行检测
2.系统初始化代码,包括硬件设备初始化,创建BIOS中断向量等
3.基本的外围I/O处理的子程序代码
4.CMOS设置程序
BIOS的缺点
1.开发效率低:汇编语言开发,耦合度高,受硬件变化影响大
2.性能差:输入输出服务靠中断,不提供异步工作模式,等待时间长
3.功能扩展性差:静态链接,增加硬件功能时,必须将代码放在0x0C0000-0x0DFFFF之间,且不提供动态加载设备驱动的方案
4.安全性:BIOS运行过程中对可执行代码没有安全性的考虑
5.不支持2TB以上的地址引导:BIOS采用32位地址,最大引导扇区地址为2TB位置
了解UEFI
UEFI概述
UEFI,统一可扩展固件接口,定义了操作系统和平台固件之间的接口,是UEFI Forum(英特尔联合微软,AMD,联想等11公司成立的组织)发布的一种标准,不提供实现。由其他开源组织实现。
UEFI 系统组成
UEFI提供给操作系统的接口包括启动服务(BS)和运行时服务(RT)以及丰富的Protocol。UEFI驱动和服务以Protocol的形式通过BS提供给操作系统
UEFI的优点
1.开发效率:C/C++开发,屏蔽底层硬件,可重用
2.可扩展性:驱动模块化设计,可动态加载;每个Protocol都有版本号,易于升级
3.性能:提供异步操作,仅保留了时钟中断,采用事件+异步操作的方法;启动速度快
4.安全性:执行应用程序和驱动前会检测程序和驱动的证书