找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 16374|回复: 4

求助关于EFI

[复制链接]
发表于 2008-11-12 11:07:15 | 显示全部楼层 |阅读模式
各位大大好:
* r- b! D8 ~! l# [" b7 g在下legacy bios没做两天又EFI了 ' y; v5 y/ T" B! Z8 ]; \. t
我想问一下下面的代码是什么意思,能从c语法分析一下吗??谢谢了!
  B4 Y! K2 U& H$ E6 p6 y7 A( i0 [% C# S
typedef
/ [) N7 `& S- w  U* UEFI_STATUS
+ D5 Q( Q5 V# ~- f1 ~! K(EFIAPI *EFI_PEI_RESET_SYSTEM) (
0 T) F9 E# n5 a/ V' g3 C  IN EFI_PEI_SERVICES   **PeiServices
$ e. Y7 N$ t1 e2 `3 f2 {  );
( y( E7 C9 y$ }) D5 T3 O
7 S. m; s0 ]$ K4 M# Ntypedef struct {
& L, Z3 e# T8 A0 g4 C; k  EFI_PEI_RESET_SYSTEM  ResetSystem;3 k& G, j4 R( O' l
} PEI_RESET_PPI;
发表于 2008-11-12 13:18:14 | 显示全部楼层
  1. typedef0 k' Q: c! y5 N2 E/ a
  2. EFI_STATUS
    ) P' P3 b/ B' {% i
  3. (EFIAPI *EFI_PEI_RESET_SYSTEM) (
    + ?5 a& t5 {# c3 F* Q8 h+ _
  4.   IN EFI_PEI_SERVICES   **PeiServices
    - z. E4 Y/ f& H( j' v9 @" a$ K8 I2 |7 [
  5.   );
复制代码
定义EFI_PEI_RESET_SYSTEM,
2 u' H! C0 g$ ~/ D是一个 指向返回值是EFI_STATUS,有一个参数IN EFI_PEI_SERVICES   **,使用EFIAPI调用方式的函数指针,也就是一个函数的地址
3 {8 @- X" g% d% p1 @1 }$ V1 L
4 z+ F: W4 L6 Z$ e! K$ m4 ~5 q9 E) \, _EFI_PEI_RESET_SYSTEM          PeiResetSystem;定义函数PeiResetSystem,相当于:
' y9 S7 o  i, j- TEFI_STATUS EFIAPI PeiResetSystem (IN  EFI_PEI_SERVICES   **PeiServices );
回复

使用道具 举报

 楼主| 发表于 2008-11-12 14:04:00 | 显示全部楼层
感谢xtdumpling指点,学习了!
回复

使用道具 举报

发表于 2009-8-6 09:45:21 | 显示全部楼层

请问,EFI_STATUS这个有没有具体意思呢?

请问,EFI_STATUS这个有没有具体意思呢?谢谢哈,初学者~~
回复

使用道具 举报

发表于 2009-8-14 20:47:07 | 显示全部楼层
EFI_STATUS就是返回值类型啦,具体你可以到头文件里找。动动手勤思考。" Y3 A+ @! n, E. r8 D) y4 M
第一个typedef是定义的一个函数指针类型,类型名是EFI_PEI_RESET_SYSTEM,EFIAPI是一个简单的宏替换,原型是啥你最好自己去查,其实也很简单,就一个词。# e% ?9 q4 k% d+ Q3 o. e
第二个typedef是定义了一个名为PEI_RESET_PPI的结构类型,它的唯一成员是一个(上一步定义的)函数指针。
6 k/ D, ^, W3 g经过这两次定义,以后如果你将一个变量声明为PEI_RESET_PPI类型,比方说
$ X- b8 S4 T6 a' J9 NPEI_RESET_PPI myVar;
" D! D& [* z5 J& D7 j就意味着,myVar是一个结构型变量,它含有一个成员,这个成员是一个指向函数的指针,该函数接收一个指针数组作为其输入(其中数组中的每一项都指向一个类型为EFI_PEI_SERVICES的实例,请参考char **s作为输入),输出类型为EFI_STATUS。7 \/ y& l9 f& ?
9 |, V/ ~  F# j# v) T2 b% y9 J
解析   EFI_PEI_SERVICES **PeiServices
. i2 t8 |. g2 _5 G& @- i1 S& u可看作 EFI_PEI_SERVICES (*PeiServices)[ ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2026-8-11 17:49 , Processed in 1.183954 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表