4 efi system table, 1 efi image entry point, Efi_image_entry_point – Intel Extensible Firmware Interface User Manual

Page 79: 4efi system table

Advertising
background image

Version 1.10

12/01/02

4-1

4

EFI System Table

This chapter describes the entry point to an EFI image and the parameters that are passed to that
entry point. There are three types of EFI images that can be loaded and executed by EFI firmware.
These are EFI Applications, EFI OS Loaders, and EFI Drivers. There are no differences in the
entry point for these three image types.

4.1 EFI Image Entry Point

The most significant parameter that is passed to an EFI image is a pointer to the EFI System Table.
This pointer is

EFI_IMAGE_ENTRY_POINT

(see definition immediately below), the main entry

point for an EFI Image. The EFI System Table contains pointers to the active console devices, a
pointer to the EFI Boot Services Table, a pointer to the EFI Runtime Services Table, and a pointer
to the list of system configuration tables such as ACPI, SMBIOS, and the SAL System Table. This
chapter describes the EFI System Table in detail.

EFI_IMAGE_ENTRY_POINT

Summary

This is the main entry point for an EFI Image. This entry point is the same for EFI Applications,
EFI OS Loaders, and EFI Drivers including both device drivers and bus drivers.

Prototype

typedef
EFI_STATUS
(EFIAPI *EFI_IMAGE_ENTRY_POINT) (
IN EFI_HANDLE

ImageHandle,

IN EFI_SYSTEM_TABLE

*SystemTable

);

Parameters

ImageHandle

The firmware allocated handle for the EFI image.

SystemTable

A pointer to the EFI System Table.

Description

This function is the entry point to an EFI image. An EFI image is loaded and relocated in system
memory by the EFI Boot Service

LoadImage()

. An EFI image is invoked through the EFI Boot

Service

StartImage()

.

Advertising