BIOS到UEFI发展历程
(2013-07-08 09:12:15)一,传统的BIOS介绍及引导机制:
机是否良好,例如内存有无故障等。第二个部分是初始化,包括创建中断向量、设置寄存器、对一些外部设备进行初始化和检测等,其中很重要的一
部分是BIOS设置,主要是对硬件设置的一些参数,当计算机启动时会读取这些参数,并和实际硬件设置进行比较,如果不符合,会影响系统的启动。
示没有引导设备,如果找到引导记录会把计算机的控制权转给引导记录,由引导记录把操作系统装入计算机,在计算机启动成功后,BIOS的这部分任
务就完成了。
例如读磁盘、文件输出到打印机等。为了完成这些操作,BIOS必须直接与计算机的I/O设备打交道,它通过端口发出命令,向各种外部设备传送数据
以及从它们那儿接收数据,使程序能够脱离具体的硬件操作,而硬件中断处理则分别处理PC机硬件的需求,因此这两部分分别为软件和硬件服务,组
合到一起,使计算机系统正常运行。
中断号为05H;磁盘及串行口服务,中断14H等。每一组又根据具体功能细分为不同的服务号。应用程序需要使用哪些外设、进行什么操作只需要在程
序中用相应的指令说明即可,无需直接控制。
二,UEFI引导机制:
决方案。
,可以看出,BIOS对于计算机系统来说,是非常重要的系统软件,没有BIOS的计算机是无法运行的。传统BIOS经过了长达20多年的时间,基本上没有
大的改进,在CPU和操作系统已经完全32位化的今天,BIOS仍然停留在16位实模式时代,只能访问1MB的基础内存,同时BIOS的开发中还大量使用汇编
语言,使得开发入门难度增加,并且业界没有一个统一的规范,各IBVs(Independent BIOS Vender)
各自为政,这种局面使传统BIOS开发成为硬件和操作系统发展的瓶颈。EFI不是一套软件,而是一整套定义的很好的接口,在业界得到推广和认可形
成了UEFI规范。
(1). Pre-EFI初始化模块
EFI初始化模块和驱动执行环境通常被集成在一个只读存储器中。Pre-EFI初始化程序在系统开机的时候最先得到执行,它负责最初的CPU,主桥及存
储器的初始化工作。
(2). EFI驱动执行环境
(3). EFI驱动程序
EFI驱动的虚拟机器指令,必须在EFI驱动运行环境(Driver Execution
Environment,或DXE)下被解释运行。
(4).兼容性支持模块(CSM)
。
(5). EFI高层应用
(6). GUID 磁盘分区
EFI驱动的能力。在基于PCI架构的系统中,各PCI桥及PCI适配器的EFI驱动会被相继加载及初始化;这时,系统进而枚举并加载各桥接器及适配器后
面的各种总线及设备驱动程序,周而复始,直到最后一个设备的驱动程序被成功加载。最后通过EFI定义的接口加载OS引导程序启动进入操作系统。
的定义了);
让UEFI的实施成为非常容易的工作,因此不需要付出太多的资源就可以实现转换。而且,日后的开机速度将得到显著提升,有人预测开机仅需几秒。