UEFI技术
文章平均质量分 54
oddxyz
暂无
展开
-
[笔记]PEI只有全局常量,没有全局变量
PEI只有全局常量,没有全局变量因为 PEI 阶段BIOS在ROM上执行, 数据段在ROM上,无法改变,所以只能是全局常量,如果声明一个全局变量,在程序中是无法给这个变量赋值的。静态变量同样。局部变量因为存储在堆栈中,而堆栈是在Memory/CAR上,所以没有这种问题原创 2011-08-25 16:09:01 · 2361 阅读 · 1 评论 -
[小技巧]快速地知道BIOS跑了哪些DXE Module和顺序(AMI EFI)
做EFI案子的朋友都碰到过这样的情况,有时候因为某些原因想知道BIOS各个Module执行的顺序或者到底有没有执行到,最笨的办法是用80 port一个点一个点的丢出来,不过我相信应该没有这么笨的人用这么笨的办法了吧;通常的方法是用串口或者USB debug cable,这个也可以原创 2011-08-24 17:29:03 · 6844 阅读 · 3 评论 -
SMI Dispatcher流程
SMI occured -> SmmEntry -> CommonEntry -> SmmBspEntryfor (Link = gDispatcherPrivate->HandlerListHead; Link; Link = Link->Link) Status原创 2011-08-31 10:44:50 · 2464 阅读 · 0 评论 -
int( (LONG)(LONG_PTR)&(((type *)0)->field))的最好解释
http://blog.csdn.net/yzslhawk/article/details/5441036 在CSDN上查到的。ANSI C标准允许值为0的常量被强制转换成任何一种类型的指针,并且转换结果是一个NULL指针,因此((type *)0)的结果就是一个类型为type *的NULL指针。如果利用这个NULL指针来访问type的成员当然是非法的,但&( ((ty转载 2011-11-02 13:25:05 · 1449 阅读 · 0 评论 -
SMM ChildDispatch2 VS ChildDispatch
UEFI 从 PI 1.1开始新增了SMM ChildDispatch2,和原本的ChildDispatch有诸多不同,现粗略列举以下四点。 1. Protocol Install方式不同,ChildDispatch的protocol都是用BS->InstallProtocolInterface或BS->InstallMultiProtocolInterface安装,而ChildDisp原创 2011-12-28 12:47:58 · 2839 阅读 · 0 评论