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

求助关于EFI

[复制链接]
发表于 2008-11-12 11:07:15 | 显示全部楼层 |阅读模式
各位大大好:
1 f+ T# @4 n1 b5 B' E在下legacy bios没做两天又EFI了
, {& C# i7 G. O- C7 [6 ^$ n. }我想问一下下面的代码是什么意思,能从c语法分析一下吗??谢谢了!) d: Q8 z7 @3 G. ^1 N3 [' K0 t' M
$ J+ O; O) j1 M# f# ~5 e, t1 Q
typedef/ B) q& @  |( [) m
EFI_STATUS- S: i$ c/ y( c
(EFIAPI *EFI_PEI_RESET_SYSTEM) (
9 l; i# h/ \. q0 Y" i: U* M' s$ g  IN EFI_PEI_SERVICES   **PeiServices! p' D; S5 g* A: i
  );- T( J# Y1 Z7 i3 L$ x% c# k
. G  c5 \, \- i- A% ?( k( ~
typedef struct {
" }/ ^" @: o8 j- t  EFI_PEI_RESET_SYSTEM  ResetSystem;
4 F% L; `; c! |' T3 @* ^' |) ^} PEI_RESET_PPI;
发表于 2008-11-12 13:18:14 | 显示全部楼层
  1. typedef
    ; c2 {" {" V6 Z. ^6 X2 `
  2. EFI_STATUS
    5 l1 T3 b' p* }6 l% l' S; P
  3. (EFIAPI *EFI_PEI_RESET_SYSTEM) (
    / U- H8 W2 Q& h5 N
  4.   IN EFI_PEI_SERVICES   **PeiServices4 B. O8 b' B. P! A1 [& T
  5.   );
复制代码
定义EFI_PEI_RESET_SYSTEM,
* d' H; U6 B1 w是一个 指向返回值是EFI_STATUS,有一个参数IN EFI_PEI_SERVICES   **,使用EFIAPI调用方式的函数指针,也就是一个函数的地址
( h9 w# T+ O+ h3 g
3 y7 X# I  F6 i& UEFI_PEI_RESET_SYSTEM          PeiResetSystem;定义函数PeiResetSystem,相当于:
; O! w& Z0 [' t  Y$ LEFI_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就是返回值类型啦,具体你可以到头文件里找。动动手勤思考。
2 Y1 ]. a: e+ N- A0 V7 B  Y第一个typedef是定义的一个函数指针类型,类型名是EFI_PEI_RESET_SYSTEM,EFIAPI是一个简单的宏替换,原型是啥你最好自己去查,其实也很简单,就一个词。
& @8 U' n8 @9 {$ h- y第二个typedef是定义了一个名为PEI_RESET_PPI的结构类型,它的唯一成员是一个(上一步定义的)函数指针。' D0 b" x+ H' ]
经过这两次定义,以后如果你将一个变量声明为PEI_RESET_PPI类型,比方说
: U& U8 w6 I: |- v6 sPEI_RESET_PPI myVar;
6 G9 o0 m% N; h6 H( U就意味着,myVar是一个结构型变量,它含有一个成员,这个成员是一个指向函数的指针,该函数接收一个指针数组作为其输入(其中数组中的每一项都指向一个类型为EFI_PEI_SERVICES的实例,请参考char **s作为输入),输出类型为EFI_STATUS。
+ w3 e- E0 x' O6 q
7 B; a2 Q) h9 y# P! a: |7 q: [& x解析   EFI_PEI_SERVICES **PeiServices: c" @, {& L9 D' m( u1 B* P4 p
可看作 EFI_PEI_SERVICES (*PeiServices)[ ]
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-11-3 23:09 , Processed in 0.561400 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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