uefi programming-基本概念

学习笔记:
Protocol:由规范(Uefi Spec)所定义的,以GUID命名的,一组相关联的[函数和成员变量]–被封装在struct中。
//protocol==GUID+Protocol_Interface。
//看一个源码就清楚了:MdePkg\Include\Protocol\LoadFile.h。

Handle:包含一个或多个Protocol的集合。
Handle Database:在(PI)平台初始化中建立的,所有的Handles和Protocols的集合。在ExitBootServices()之后,这个数据库将不可用。

uefi-image:
1,uefi-application,常见的xxx.efi;
2,boot-driver;
3,runtime-driver;
4,其它。。

Uefi_driver:是一个可执行的uefi-image,会安装一堆各式各样的Handles(handles又包含大量的protocols),是用来完成某些工作。一个Handle上的某个Protocol实例不能重复,但在不同的Handle上可能会有相同的protocol实例。

//抽像图和伪代码:
uefi programming-基本概念_第1张图片

你可能感兴趣的:(common)