uefi 开发学习(开始)

发布于:2022-12-27 ⋅ 阅读:(721) ⋅ 点赞:(0)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

学习uefi 系统架构,整理optionrom开发需要的资料,记录开发过程及开发过程中遇到的问题; 

一、UEFI是什么?

Unified Extensible Firmware InterFace 统一可扩展固件接口);

1.uefi 架构

UEFI提供系统化的标准方法,加载驱动并管理他们之间的交互;

UEFI 提供了一个标准接口,可以在硬件发生变更时,固件能提供足够信息而保证操作系统不受影响。它包含有芯片组和外设芯片驱动程序,并通过系统表提供引导时服务和运行时服务;

2.uefi 系统框架

分阶段运行,不同阶段完成不同的任务;

UEFI core模块实现一组服务(service),一组基本协议(protocol),供其它模块调用;

core提供的服务以功能表(system table)的方式传递给其它功能模块;

功能模块(PEI Module, DXE driver),完成设备配置,协议实现;

C语言实现(99%C语言实现,SEC模块,部分是asm实现);

二、学习网站

1.uefi 规范文档

https://uefi.org/specifications

2.edk2开发包下载

https://github.com/tianocore/edk2


总结

了解uefi的规范文档,edk2开发包。


网站公告

今日签到

点亮在社区的每一天
去签到