2009年8月3日 星期一

英文練習

EFI Images(EFI映像檔)

All EFI images contain a PE/COFF header that defines the format of the executable code as required by the Microsoft Portable Executable and Common Object File Format Specification (Microsoft 1997).

所有的映像檔(EFI images)都包含PE/COFF表頭,它定義了微軟可攜式執行檔(Microsoft Portable Executable)與物件檔案格式(Object File Format)所要求的可執行程式碼的規格。

The target for this code can be an IA-32 processor, an ItaniumR processor, or a processor agnostic, generic EFI Byte Code.

目的是為了讓這個程式碼可以在IA-32處理器、ItaniumR處理器或是與處理器無關的通用EBC(EFI Byte Code)上執行。

The header defines the processor type and the image type.

此表頭定義了處理器的類型與映像檔的類型。

Presently there are three processor types and the following three image types defined:

目前有這三種的處理器與下列所定義的三種映像檔類型:

EFI applications(應用程式) - images that have their memory and state reclaimed upon exit.

這種映像檔有它自己的記憶體空間與狀態,會在程式結束時被回收。

EFI Boot Service drivers(開機時期提供系統服務的驅動程式) - images that have their memory and state preserved throughout the pre-operating system flow.

這種映像檔有它自己的記憶體空間與狀態,會一直保持到OS啟動之前。

Their memory is reclaimed upon invocation of ExitBootServices() by the OS loader.

它的記憶體會在作業系統載入器(OS loader)調用ExitBootServices()函式的時候被回收。

EFI Runtime drivers(作業系統運行時期的驅動程式) images whose memory and state persist throughout the evolution of the machine.

映像檔的記憶體與狀態,會隨著機器的發展而持續。

These images coexist with and can be invoked by an EFI-aware operating system.

此映像檔與可以被EFI識別的OS共存。

The value of the EFI Image format is that various parties can create binary executables that interoperate.

FFI映像檔(EFI Image)格式的值是可創建二進制可執行檔的各種部份所組成的。

For example, the operating system loader for Microsoft Windows and Linux for an EFI-aware OS build is simple an EFI application.

例如:EFI所知的OS建造的Microsoft WindowsLinux的作業系統載入器,就是一個簡單的應用程式。

In addition, third parties can create EFI drivers to abstract their particular hardware, such as a networking interface host bus adapter (HBA) or other device.

此外,第三方廠商可以建立驅動程式(EFI drivers)以抽象化特定的硬體,例如:網路介面主機匯流排轉換卡(networking interface host bus adapter)或是其他的裝置。

EFI images are loaded and relocated into memory with the Boot Service gBS->LoadImage().

EFI映像檔(EFI images)是用開機時期的系統服務,gBS->LoadImage() 將其載入與重置到記憶體中。

Several supported storage locations for EFI images are available, including the following:

幾個可用的支援EFI映像檔的儲存場所,包含如下:

Expansion ROMs on a PCI card

PCI卡上的擴充ROM

System ROM or system flash

系統ROM或是系統flash

A media device such as a hard disk, floppy, CD-ROM, or DVD

媒體裝置,例如:硬碟機、軟碟機、CD-ROM或是DVD

A LAN boot server

網路開機伺服器

In general, EFI images are not compiled and linked at a specific address.

一般而言,EFI映像檔(EFI images)不會編譯與連結特定的記憶體位址。

Instead, the EFI image contains relocation fix-ups so the EFI image can be placed anywhere in system memory.

相反地,EFI映像檔(EFI images)含有再定位修正,如此EFI映像檔(EFI images)就可以被放置在系統記憶體中的任何位址上。

The Boot Service gBS->LoadImage() does the following:

開機時期系統服務gBS->LoadImage()的工作如下:

Allocates memory for the image being loaded

分配記憶體給正在被載入的映像檔。

Automatically applies the relocation fix-ups to the image

自動運用再定位修正給映像檔

Creates a new image handle in the handle database, which installs an instance of the EFI_LOADED_IMAGE_PROTOCOL

handle database建立新的映像檔handle,這需要安裝EFI_LOADED_IMAGE_PROTOCOL的實體。

This instance of the EFI_LOADED_IMAGE_PROTOCOL contains information about the EFI image that was loaded.

EFI_LOADED_IMAGE_PROTOCOL的實體包含已被載入的EFI映像檔(EFI image)相關的資訊。

Because this information is published in the handle database, it is available to all EFI components.

因為這些資訊是被發布在handle database中,它可提拱給所有的EFI組件。

After an EFI image is loaded with gBS->LoadImage(), it can be started with a call to gBS->StartImage.

EFI映像檔(EFI image)gBS->LoadImage()載入後,就可以藉由gBS->StartImage()來起始它。

The header for an EFI image contains the address of the entry point that is called by gBS->StartImage().

EFI映像檔(EFI image)的標頭包含進入點函式(entry point)的記憶體位址,進入點函式(entry point)是由gBS->StartImage()做呼叫。

The entry point always receives the following two parameters:

進入點函式(entry point)通常會收到以下兩種參數:

The image handle of the EFI image being started

正在被啟動的EFI映像檔(EFI image)的映像檔資源表(image handle)

A pointer to the EFI System Table

指向EFI系統表格(EFI System Table)的指標

These two items allow the EFI image to do the following:

這兩個參數允許EFI映像檔(EFI image)作到下列事項:

Access all of the EFI services that are available in the platform.

存取所有在平台上有效的EFI系統服務(EFI services)

Retrieve information about where the EFI image was loaded from and where in memory the image was placed.

??

The operations that the EFI image performs in its entry point vary depending on the type of EFI image.

EFI映像檔(EFI image)執行它的進入點函式(entry point)的這個操作是相當取決於EFI映像檔(EFI image)的類型。

Figure 2.4 shows the various EFI image types and the relationships between the different levels of images.

2.4所顯示,不同EFI映像檔(EFI image)類型與不同層級之間的關聯性。





沒有留言: