UEFIプログラミングモデル
UEFIシェルには、プログラミングAPIが用意されています。これを使用して、シェルのプログラムAPIまたはプロトコルを呼び出すための独自のUEFIアプリケーションを記述することができます。詳しくは、UEFI Shell SpecificationおよびEDK2を参照してください。UEFIシェルには、以下の表に示すプログラミングAPIが用意されています。EFI_SHELL_PROTOCOLは、UEFIアプリケーションにシェルサービスを提供します。これは、ファイル、パイプ、環境変数、現在の作業ディレクトリ、マッピング、ヘルプテキスト、エイリアス、起動シェルアプリケーションおよびスクリプトなど、低レベルのシェル関数へのUEFIシェルアプリケーションアクセスを提供します。
関数タイプ |
関数名 |
説明 |
---|---|---|
|
Execute |
シェルがコマンドラインを解析して実行します。 |
|
GetEnv |
環境変数を取得します。 |
|
SetEnv |
特定の環境変数を変更します。 |
|
GetAlias |
特定のシェルコマンドのエイリアスを取得します。 |
|
SetAlias |
特定のシェルコマンドのエイリアスを追加または削除します。 |
|
GetHelpText |
特定のコマンドに関するヘルプ情報を返します。 |
|
GetDevicePathFromMap |
マッピングに対応するデバイスパスを返します。 |
|
GetMapFromDevicePath |
特定のデバイスパスに対応するマッピングを返します。 |
|
GetDevicePathFromFilePath |
ファイルパスをデバイスパスに変換します。すべてのマッピングが、対応するデバイスパスに置き換えられます。 |
|
GetFilePathFromDevicePath |
デバイスパスをファイルパスに変換します。デバイスパスのうちいずれかのマッピングに対応する部分が、そのマッピングに置き換えられます。 |
|
SetMap |
デバイスとデバイスパス間のマッピングを作成、更新、または削除します。 |
|
GetCurDir |
デバイスの現在のディレクトリを返します。 |
|
SetCurDir |
デバイスの現在のディレクトリを変更します。 |
|
OpenFileList |
指定したパスパターンに一致するファイルを開きます。 |
|
FreeFileList |
OpenFileList()で作成したファイルリストを解放します。 |
|
RemoveDupInFileList |
指定されたファイルリスト内の重複ファイルを削除します。 |
|
BatchIsActive |
処理されているスクリプトファイルがあるかどうかを表示します。 |
|
IsRootShell |
アクティブなシェルがルートシェルであるかどうかを確認します。 |
|
EnablePageBreak |
改ページ出力モードを有効にします。 |
|
DisablePageBreak |
改ページ出力モードを無効にします。 |
|
GetPageBreak |
改ページ出力モードの有効化ステータスを取得します。 |
|
GetDeviceName |
デバイスハンドルで指定されたデバイスの名前を取得します。 |
|
GetFileInfo |
特定のファイルハンドルに関する情報を表示します。 |
|
SetFileInfo |
特定のファイルハンドルに関する情報を変更します。 |
|
OpenFileByName |
名前に基づいてファイルを開き、ファイルハンドルを返します。 |
|
CloseFile |
開いているファイルを閉じます。 |
|
CreateFile |
新しいファイルを作成します。 |
|
ReadFile |
データをファイルから読み取ります。 |
|
WriteFile |
データをファイルに書き込みます。 |
|
DeleteFile |
ファイルを削除します。 |
|
DeleteFileByName |
ファイルを名前に基づいて削除します。 |
|
GetFilePosition |
ファイル内の現在の読み取り/書き込み位置を表示します。 |
|
SetFilePosition |
ファイル内の現在の読み取り/書き込み位置を変更します。 |
|
FlushFile |
すべてのバッファーデータをファイルに書き込みます。 |
|
FindFiles |
ファイルリスト内のパターンに一致するすべてのファイルを表示します。 |
|
FindFilesInDir |
ファイルリストで指定されたディレクトリ内のすべてのファイルを表示します。 |
|
GetFileSize |
ファイルのサイズを表示します。 |
|
OpenRoot |
ファイルシステムのルートディレクトリを表示します。 |
|
OpenRootByHandle |
特定のハンドル上のファイルシステムのルートディレクトリを表示します。 |
|
ExecutionBreak |
ユーザーがCTRL+Cキーを押して現在のUEFIシェルコマンドの実行を中断するよう指示したときに、UEFIシェルから通知されるイベント。 |
|
MajorVersion |
シェル環境のメジャーバージョン。 |
|
MinorVersion |
シェル環境のマイナーバージョン。 |