Unified Extensible Firmware Interface
EFI(Extensible Firmware Interface)は、インテルが開発した、新しいBIOSの仕様である。
EFIはtrusted computingを前提として設計され、リバースエンジニアリングできないドライバをベンダーが開発できるようにするものである。 EFIはまた、ネットワークとメモリ管理をファームウェアに委任してオペレーティングシステムがサンドボックス内で動作することができるようにする。 ハードウェアへのアクセスはEFIドライバの呼び出しに変換される。 EFI BIOSはブートローダーの役目も果たしオペレーティングシステムを選択して起動する。
EFIはインテルのIA-64で導入されたが、その後デスクトップ市場向けの新しいチップセットでも導入されつつある。 これは、1981年にリリースされてからほとんど変化していないBIOSへのアップデートである。 伝統的なPCのBIOSは、ACPIやシステム管理BIOS(SMBIOS)といった拡張がなされてきたものの、基本的な部分は変化していない。 そのような拡張を捨ててしまうわけではなく、EFIはACPIとSMBIOSの機能を取り込んでいる。というのは、これらはOS互換問題を解決するために開発し続けられるからである。
EFI開発モデルはPCの構造上の最下層にハードウェアドライバを拡張したものと言うことができる。 現在、マザーボード上のデバイスの初期化はBIOSが行っている。 EFIモデルでは、デバイスメーカーがOS用ドライバを作っているように、初期化ソフトをEFI向けにそれぞれ作ることができる。 これにより、EFIはOSに制御を渡す前に全てのハードウェアの初期化を行うことができる。 これを使うと、OSをインストールしていない状態でネットワークに接続してドライバをダウンロードするなどということも出来る。
もうひとつのEFIの機能としてCPUを完全な機能状態にパワーアップすることができる。 伝統的なBIOSでは、下位互換を保つためにCPUは制限された状態である。
EFIは小さなシェル環境を提供する。 完全なOSをブートする代わりに、EFIのユーザはEFIシェルを起動できる。 EFIシェルは、ブートに至るまでのオプション的な中間状態であり、様々なユーティリティを使用できる。 EFIの機能はMS-DOS 3.2に近いが、実装されているメモリ全体にアクセスできる点が異なる。 そういう意味ではOpen Firmware(PowerPCベースのMacintoshにも採用されているハードウェアに依存しないファームウェア)に近い。
伝統的なBIOSとは違って、EFIを拡張するためには仮想的にはどんな不揮発性記憶装置からでも導入することができる。 例えば、EFI本体がマザーボード上のROMに格納されていても、隠しEFIパーティションをディスク上に用意しておいて、EFIに機能を追加することができる。 無制限に機能を拡張できる可能性があるため、EFIは伝統的なOSを不必要にするかもしれない。
EFIは当初インテルで開発されたが、オープンソースの標準をリリースしょうとしていることは明らかである。 これによってEFIがPC市場でデファクトスタンダードとなるきっかけがつかめるかもしれない。 EFIは一般的なFATファイルシステムを必要とする。 EFIを使用すると、ディスクパーティションはMBRの代わりにGPTで管理される。