UEFIBIOS淺說講述人:SWQA_Sec6:Frank_ZhangTell:54585Page2Page3何谓BIOSBIOS(BasicInput/OutputSystem,基本输入输出系统)全称是ROM-BIOS,只读存储器基本输入/输出系统的简写,它实际是一组被固化到电脑中,为电脑提供最低级最直接的硬件控制的程序,它是连通软件程序和硬件设备之间的枢纽。Page4Page5Page6Page7BIOS的功能目前市场上主要的BIOS有AMIBIOS和AwardBIOS以及PhoenixBIOS,其中,Award和Phoenix已经合并,二者的技术也互有融合。从功能上看,BIOS分为三个部分:自检及初始化程序;程序服务请求;硬件中断处理;Page8BIOS的功能1)检测硬件,又叫POST.2)初始化硬件,设置其基本状态,使得整个计算机达到所谓的“可用状态”(ReadyState).3)启动OSLoader加载操作系统.4)在操作系统启动后,一部分继续驻留在内存,向操作系统及其他软件提供基本的系统级服务.如磁盘读写等.5)修复硬件缺陷(比如升級BIOS).Page99EFI是Intel提出的优于传统BIOS的新的解决方案,更因为具有绝对的前瞻性。EFI:(ExtensibleFirmwareInterface)可扩展固件接口,是Intel为全新类型的PC固件的体系结构、接口和服务提出的建议标准。EFI接過接力棒Page10UEFI——EFI的进化UEFI是由EFI1.10为基础发展起来的,2005年,Intel把EFI提交给联盟组织管理,这个组织就是uEFI國際组织,主要贡献者有Intel、Microsoft、AMI等几个大厂,属于开源組織,目前UEFI的最新版本为2.3.1.Page11UEFI就是一个可扩展的,标准化的统一固件接口规范,它采用模块化、动态链接和C语言风格的常数堆栈传递方式来构建系统,摆脱了传统BIOS复杂的16位汇编代码。UEFI诞生的目的是为了取代老旧的BIOS,它和BIOS一样都是硬件和操作系统之间的接口层,這种全新类型的接口标准用于操作系统自动从预启动的操作环境,加载到一种操作系统上,从而使开机程序化繁为简,节省时间。Page1212UEFI的最革命之处:颠覆了BIOS的界面概念,使其操作界面和Windows一样易于上手。在UEFI操作界面中,鼠标成为了替代键盘的输入工具,各功能调节的模块也做的和Windows程序一样,可以说,UEFI就是一个小型化的Windows系统。Page1313Page14Page1515Page1616Page17Page18Page19Page20Page21Page2222UEFIBIOS系統的開機流程Page2323UEFIBIOS系統的開機流程1.SEC階段:SEC(安全性)階段其主要的特色為「cacheasRAM」,即處理器的缓存當成内存。2.PEI階段:傳統BIOS的初始化階段類似,PEI(EFI前初始化)階段是用以喚醒CPU及内存初始化。Page2424UEFIBIOS系統的開機流程3.DXE階段:DXE的主要功能在於溝通EFI驅動程式及硬體。4.BDS階段:BDS(開機設備選擇)這個階段,使用者就可以自開機管理者程式頁面,選擇要從哪個偵測到的開機設備來啟動。Page2525UEFIBIOS系統的開機流程5.TSL階段:進入TSL(短暫系統載入)階段,由作業系統接手開機。除此之外,也可以在BDS階段選擇UEFIShell,讓系統進入簡單的命令列,進行基本診斷和維護。Page2626LegacyBIOS哪裡不好1.過時的16位元模式;2.只有1MB定址空間;3.汇编語言難維護;4.十年不變的程式碼.Page27UEFI優點与LegacyBIOS相比,最大的几个区别在于:1.编码99%都是由C语言完成;2.一改之前的中断、硬件端口操作的方法,而采用了Driver/protocal的新方式;3.将不支持X86模式,而直接采用Flatmode(也就是不能用DOS了,现在有些EFI或UEFI能用是因为做了兼容,但实际上这部分不属于UEFI的定义了);Page28UEFI優點4.输出也不再是单纯的二进制code,改为RemovableBinaryDrivers;5.OS启动不再是调用Int19,而是直接利用protocol/devicePath;6.对于第三方的开发,前者基本上做不到,除非参与BIOS的设计,但是还要受到ROM的大小限制,而后者就便利多了。Page29Page3030UEFI總結•1.易于实现、容错和纠错特性更强•2.驱动开发简单、兼容性好•3.高分辨率的彩色图形环境、支持鼠标操作•4.强大的可扩展性•5.UEFI具有支持鼠标操作的图形界面Page31谢谢!