UEFI BIOSからLinuxを起動する

UEFI BIOSからLinuxを起動する

UEFI BIOSを移植しています。 UEFIシェルからTFTP経由でLinuxイメージ(bzImage)をシステムメモリにダウンロードし、OSを直接起動したいと思います。これを行うには通常、他のブートローダが必要であることがわかります。しかし、UEFI BIOSからLinuxを起動できますか?どのように?

答え1

UEFIファームウェア(BIOS以外のもの)は、EFIファームウェアアーキテクチャに対応するUEFIアプリケーションのみをロードできます。したがって、Linuxカーネルを直接ロードすることはできませんが、ロードできる必要があります。UEFIブートローダその後、Linuxカーネルをメモリにロードし、そのカーネルにジャンプします。

カーネルバージョン3.3から開始

EFISTUBオプションを使用すると、Linuxカーネルをコンパイルできます。これにより、ブートローダを使用せずにカーネルをEFIイメージとして直接実行/ロードできます。

答え2

デフォルトでは機能しますが、まずターゲットシステムがFTPサーバーをpingしてカーネルイメージを取得できるように、ネットワークカードを有効にする必要があります。

チェックEDKブートローダ(EBL)ウィキソースフォージリンク。

関連情報