上一章把UEFI的编译开发和模拟器环境都搭建好了,这里开始写第一个应用。写之前先简单介绍下UEFI-edk2的源码目录结构,源码目录下主要有以下这些子目录:
目录名 | 说明 |
---|---|
BaseTools | 包含代码编译所需的二进制编译工具集和编译环境配置文件。 |
MdePkg | 包含各个平台通用的基本的底层库函数、协议和工业标准。 |
MdeModulePkg | 包含一系列各平台通用的模块,其中包括MdePkg中公共库的应用模块示例。 |
Conf | 保存编译环境信息、编译目标路径以及编译器参数,工具将在该路径下产生3个配置文件。 |
EdkShellPkg、ShellPkg | 提供一个平台通用的UEFIShell应用程序开发环境。 |
EdkFatBinPkg | 包含针对不同CPU架构的原始FAT驱动。 |
EmulatorPkg | 一个在Windows操作系统下可加载32/64位模拟器,提供UEFI运行环境的平台。 |
ArmPkg、ArmPlatformPkg | 针对ARM平台的实现,与具体平台硬件相关。 |
NetWorkPkg、UefiCpuPkg | 网络、CPU驱动参考实现。 |
DuetPkg | 提供基于传统BIOS运行环境的支持库。 |
OptionRomPkg | 提供针对不同CPU架构编译PCI兼容映像的示例。 |
每个以Pkg结尾的目录都是一个工程包,编译时可以通过"build -p *Pkg*Pkg