![Intel Extensible Firmware Interface Скачать руководство пользователя страница 60](http://html1.mh-extra.com/html/intel/extensible-firmware-interface/extensible-firmware-interface_specification_2073117060.webp)
Extensible Firmware Interface Specification
42
12/12/00
Version 1.02
3.2
Memory Allocation Services
The functions that make up Memory Allocation Services are used during pre-boot to allocate and
free memory, and to obtain the system’s memory map. See Table 3-4.
Table 3-4.
Memory Allocation Functions
Name
Type
Description
AllocatePages
Boot
Allocates pages of a particular type.
FreePages
Boot
Frees allocated pages.
GetMemoryMap
Boot
Returns the current boot services memory map and memory map key.
AllocatePool
Boot
Allocates a pool of a particular type.
FreePool
Boot
Frees allocated pool.
The way in which these functions are used is directly related to an important feature of EFI memory
design. This feature, which stipulates that EFI firmware owns the system’s memory map during
pre-boot, has three major consequences:
1.
During pre-boot, all components (including executing EFI images) must cooperate with the
firmware by allocating and freeing memory from the system with the functions
AllocatePages()
,
AllocatePool()
,
FreePages()
, and
FreePool()
. The
firmware dynamically maintains the memory map as these functions are called.
2.
During pre-boot, an executing EFI Image must only use the memory it has allocated.
3.
Before an executing EFI image exits and returns control to the firmware, it must free all
resources it has explicitly allocated. This includes all memory pages, pool allocations, open file
handles, etc. Memory allocated by the firmware to load an image is freed by the firmware
when the image is unloaded.
When EFI memory is allocated, it is “typed” according to the values in
EFI_MEMORY_TYPE
(see
Section 3.2.1). Some of the types have a different usage
before
ExitBootServices()
is called
than they do
afterwards
. Table 3-5 lists each type and its usage before the call; Table 3-6 lists each
type and its usage after the call.
Содержание Extensible Firmware Interface
Страница 1: ...Extensible Firmware Interface Specification Version 1 02 December 12 2000...
Страница 4: ...Extensible Firmware Interface Specification iv 12 12 00 Version 1 02...
Страница 42: ...Extensible Firmware Interface Specification 24 12 01 00 Version 1 02...
Страница 190: ...Extensible Firmware Interface Specification 172 12 12 00 Version 1 02...
Страница 200: ...Extensible Firmware Interface Specification 182 12 12 00 Version 1 02...
Страница 226: ...Extensible Firmware Interface Specification 208 12 12 00 Version 1 02...
Страница 230: ...Extensible Firmware Interface Specification 212 12 12 00 Version 1 02...
Страница 252: ...Extensible Firmware Interface Specification 234 12 12 00 Version 1 02...
Страница 294: ...Extensible Firmware Interface Specification 276 12 12 00 Version 1 02...
Страница 348: ...Extensible Firmware Interface Specification 330 12 01 00 Version 1 01...
Страница 350: ...Extensible Firmware Interface Specification 332 12 12 00 Version 1 02...
Страница 354: ...Extensible Firmware Interface Specification 336 12 12 00 Version 1 02...
Страница 362: ...Extensible Firmware Interface Specification 344 12 12 00 Version 1 02...
Страница 486: ...Extensible Firmware Interface Specification 468 12 12 00 Version 1 02...
Страница 494: ...Extensible Firmware Interface Specification 476 12 12 00 Version 1 02...