typedef struct_EFI_CONFIGURATION_TABLE {
EFI_GUID
VOID
} EFI_CONFIGURATION_TABLE;
The EFI system table contains pointers to the runtime and boot services tables. The definitions for
these tables are shown in the following code fragments. Except for the table header, all elements in
the service tables are prototypes of function pointers to functions as defined in Chapter 3. The
function is shown as an example.
GetTime()
NOTE
The size of the EFI system table, runtime services table, and boot services table may increase over
time. It is very important to always use the
determine the size of these tables.
// Example interface prototype
typedef
EFI_STATUS
(EFIAPI *EFI_GET_TIME) (
OUT EFI_TIME
OUT EFI_TIME_CAPABILITIES
);
//
// EFI Runtime Services Table
//
#define EFI_RUNTIME_SERVICES_SIGNATURE
#define EFI_RUNTIME_SERVICES_REVISION
typedef struct
EFI_TABLE_HEADER
//
// Time Services
//
EFI_GET_TIME
EFI_SET_TIME
EFI_GET_WAKEUP_TIME
EFI_SET_WAKEUP_TIME
//
// Virtual Memory Services
//
EFI_SET_VIRTUAL_ADDRESS_MAP
EFI_CONVERT_POINTER
//
// Variable Services
//
Version 1.02
VendorGuid;
*VendorTable;
HeaderSize
*Time,
*Capabilities OPTIONAL
{
Hdr;
GetTime;
SetTime;
GetWakeupTime;
SetWakeupTime;
SetVirtualAddressMap;
ConvertPointer;
field of the
EFI_TABLE_HEADER
0x56524553544e5552
(1<<16) | (99)
12/12/00
EFI Image
to
113
Need help?
Do you have a question about the Extensible Firmware Interface and is the answer not in the manual?