The invention discloses a UEFI firmware implementation method based on a server computer. The concrete method is: electric start on the server computer, execution processor driver module, initialization processor and memory, and provide access to the processor and memory interface, so as to establish the basic firmware running environment. Execute the firmware kernel load module, copy the UEFI firmware code into memory, unzip the firmware, and load the firmware core module. Implementation of firmware core module, UEFI firmware based service to establish service system; the initialization of UEFI, complete the UEFI system tables, initialize UEFI service table and UEFI service table, all function modules can call service system in the UEFI firmware. Load UEFI firmware function module, including infrastructure, function module, device protocol module. Load peripheral scan module, scan peripheral, distribute system resource for peripheral, load peripheral driver module, complete peripheral initialization. Load the modules in the firmware application layer and start the operating system.
【技术实现步骤摘要】
一种基于服务器计算机的UEFI固件实现方法
本专利技术属于本专利技术属于计算机固件
,涉及一种基于服务器计算机的UEFI固件的实现方法。。
技术介绍
UEFI(UnifiedExtensibleFirmwareInterface,统一的可扩展固件接口)是一种计算机固件(或称为BIOS)的接口规范,也是关于固件的最主要的工业标准。UEFI规范最初是面向Intel公司的Itanium和X86处理器进行制定的,但是UEFI规范本身是与处理器架构无关的,目前已经应用于X86、Itanium、ARM等处理器平台。符合UEFI规范的计算机固件(以下简称UEFI固件)相对于传统的固件有很多优越性,目前主流的X86商用计算机系统基本上都是采用了UEFI固件。申威是由江南计算所研制的国产通用中央处理器,采用国产自主精简指令集架构。申威处理器已形成一系列产品,分别可应用于台式、服务器计算机以及服务器产品。目前应用于服务器计算机产品的申威处理器主要是申威1610。申威是由江南计算所研制的国产通用中央处理器,采用国产自主精简指令集架构。申威处理器已形成一系列产品,分别可应用于台式、服务器计算机以及服务器产品。目前应用于便携式式计算机产品的申威处理器主要是申威1610。目前,龙芯、申威等国产处理器已有相应的固件方案,但申威仍缺乏完整的固件整体方案。
技术实现思路
有鉴于此,本专利技术提供了一种基于服务器计算机的UEFI固件的实现方法。根据这个方法,可以在申威服务器计算机上实现出符合国际主流UEFI固件规范可扩展性强、功能完善的固件产品,以支持申威服务器计算机的正常启动和运行。为了 ...
【技术保护点】
一种基于服务器计算机的UEFI固件实现方法,其特征在于,所述UEFI固件分为硬件抽象层、固件核心层、设备协议层以及固件应用层;所述硬件抽象层包括处理器驱动模块、芯片组驱动模块和外设驱动模块,所述处理器驱动模块对服务器计算机中处理器和内存进行初始化,并提供访问处理器和内存的接口;所述芯片组驱动模块对服务器计算机硬件平台中南北桥芯片进行初始化,包括桥片本身和各个外设控制器的初始化和资源分配工作,并提供访问南北桥的接口;所述外设驱动模块驱动服务器计算机主板上连接的外设;所述固件核心层包括固件核心加载模块、固件核心模块和基础架构功能模块,固件核心加载模块加载固件核心模块,并为其准备运行环境;固件核心模块建立UEFI规范中的启动服务Boot Service和运行时服务Runtime Service表,加载、运行固件核心层中的其他模块,管理固件核心层中各模块之间的交互,管理服务器计算机中内存,实现和维护时钟中断和事件机制,实现和维护固件应用的特权级机制,实现UEFI规范中定义的Protocol的管理机制,实现UEFI规范要求实现的机制和功能;基础架构功能模块实现UEFI规范中的体系结构协议Arch ...
【技术特征摘要】
1.一种基于服务器计算机的UEFI固件实现方法,其特征在于,所述UEFI固件分为硬件抽象层、固件核心层、设备协议层以及固件应用层;所述硬件抽象层包括处理器驱动模块、芯片组驱动模块和外设驱动模块,所述处理器驱动模块对服务器计算机中处理器和内存进行初始化,并提供访问处理器和内存的接口;所述芯片组驱动模块对服务器计算机硬件平台中南北桥芯片进行初始化,包括桥片本身和各个外设控制器的初始化和资源分配工作,并提供访问南北桥的接口;所述外设驱动模块驱动服务器计算机主板上连接的外设;所述固件核心层包括固件核心加载模块、固件核心模块和基础架构功能模块,固件核心加载模块加载固件核心模块,并为其准备运行环境;固件核心模块建立UEFI规范中的启动服务BootService和运行时服务RuntimeService表,加载、运行固件核心层中的其他模块,管理固件核心层中各模块之间的交互,管理服务器计算机中内存,实现和维护时钟中断和事件机制,实现和维护固件应用的特权级机制,实现UEFI规范中定义的Protocol的管理机制,实现UEFI规范要求实现的机制和功能;基础架构功能模块实现UEFI规范中的体系结构协议ArchitecturalProtocol,基础架构功能模块包括多个功能模块,每个模块实现一个ArchitecturalProtocol;每个ArchitecturalProtocol包含一些基础服务接口,供固件中的其他功能模块调用;所述设备协议层包括总线协议模块和网络协议栈模块,总线协议模块实现各种总线协议,并通过UEFI规范中的Protocol机制发布总线的访问接口;网络协议栈模块实现网络协议栈;所述固件应用层包括设备扫描模块、人机界面显示模块、系统监控模块、系统启动模块、文件系统模块、内核加载模块、运行时模块和Shell模块;设备扫描模块枚举服务器计算机中的所有外设,并为外设分配资源,将外部设备与相应的外设驱动模块进行连接;人机界面显示模块与显卡驱动模块连接,实现所有显示相关的接口;系统监控模块实时检测服务器计算机中处理器温度、系统电压和风扇转速,根据处理器温度来调整风扇的转速,当处理器温度过高时,强制关机;系统启动模块提供一个图形化的用户配置界面,用户通过菜单操作的方式,查看系统信息和对系统进行配置。最后根据用户的选择,从存储设备启动操作系统;文件系统模块实现FAT/FAT32、EXT2/3/4和ISO9660文件系统,支持对文件的读取操作;内核加载模块在系统启动的最后阶段,从服务器计算机的存储介质中将内核文件加载到内存中,并为内核文件准备必要的参数,然后跳转到内核的入口点执行内核文件;运行时模块实现UEFI规范定义的供操作系统在其运行阶段调用的运行时Runtime接口,以及处理器平台的操作系统与固件定义的接口;Shell是UEFI固件提供的一个命令行环境,基于UEFI固件中提供的大量接口服务,开发出Shell下的多种固件应用程序;在上述UEFI固件的基础上,该方法包括如下步骤:步骤一、服务器计算机上电启动,执行所述处理器驱动模块,初始化处理器和内存,并提供访问处理器和内存的接口,从而建立起固件运行的基本环境;步骤二、执行所述固件核心加载模块,将UEFI固件代码复制到内存,并对固件进行解压,加载固件核心模块;步骤三、执行固件核心模块,建立UEFI固件的基础服务;初始化UEFI的系统服务,完成UEFI系统表、U...
【专利技术属性】
技术研发人员:陈小春,张超,朱立森,孙亮,肖志坤,
申请(专利权)人:中电科技北京有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。