Unified Extensible Firmware Interface
Unified Extensible Firmware Interface(ユニファイド・エクステンシブル・ファームウェア・インタフェース、UEFI)はオペレーティングシステム(OS)とプラットフォームファームウェアとの間のソフトウェアインタフェースを定義する仕様である。
UEFIを採用したSystem BIOSは「UEFI BIOS」と呼ばれ、単に「UEFI」と略されることが多いが、ユーザーがアクセスし設定などを行うGUIはUEFIであっても「BIOS」と呼ばれる事が多い。UEFI BIOSはIBM PC互換機に採用された古いSystem BIOSのよりセキュアな置き換えを意図している。遠隔診断やOSがロードされていない状態での修復なども可能とする。「BIOS(バイオス)」とは異なり、「UEFI」の読みは特に定められていない。
UEFIの元となる EFI (Extensible Firmware Interface) 仕様は元々インテルとヒューレットパッカードによって開発された。2005年、EFI 1.10に基づいてUEFIへと発展した。UEFI仕様は業界団体Unified EFI Forumの下で開発されている。
UEFI自体は単なる「インタフェースの仕様」であるため、特定のプロセッサに依存しない。これまでのBIOSとは異なり、近代的なソフトウェア開発手法を用いることが推奨されており、C言語で実装したものなどが代表的である。
EFIブートマネージャーはまたOSを選択してロードするのにも使うことができる。これにより専用のブートローダ機構は必要がなくなる(OSのブートローダはEFIアプリケーションになる)。この場合、ブートセクタを使用せずに済むが、最初にロードすべき標準で定められた名前のファイルを、特殊なパーティションテーブルから参照できるようにしておく必要がある(ファイル名の例:\EFI\BOOT\boot[architecture name].efi)。
OSのブートローダーはUEFIアプリケーションの一種となるので、ファームウェアからアクセス可能なファイルシステム上にファイルとして格納しておく。NVRAMに格納されたブート変数で、そのローダーのパスを示す。ブートローダーはファームウェアから自動検出することも可能で、たとえばリムーバブル・デバイスからのブートも可能となっている。
また、特定のハードウェアやオペレーティングシステムに依存しないように、UEFIアプリケーションのバイナリコードの記述には、マイクロソフトが開発した、ハードウェアやOSに依存しないバイナリフォーマットであるPortable Executable(PE)フォーマットを用いることが定められている。
自作パソコンやBTOパソコン市場で大きなシェアを持つマザーボードメーカーのASRock、ASUSTeK、GIGABYTE、MSI 、BIOSTARなどは、2011年1月発売のインテル製6-series(搭載の主力はLGA 1155チップセットのSandy BridgeマイクロアーキテクチャCPU)やAMDの 9 seriesチップセットを使ったマザーボードで、UEFIとレガシーBIOSを(CSM モードも付けた上で)優先順位付けて併用可能な実装をし、UEFIの採用・実装をした商品の発売を開始してWindows 8対応に備え始めた(但しこの頃のマザーボードではTPM(Trusted Platform Module)チップ用のソケット実装はあったものの、あらかじめ実装されていたものは少なく、TPMチップは別売りでバージョンはTPM1.xに対応する製品であった)。
更に、2012年4月発売のインテル製Intel 7 Series(搭載の主力はLGA 1155チップセットのIvy BridgeマイクロアーキテクチャCPU)でもUEFIとレガシーBIOSを(CSM モードも付けた上で)優先順位付けて併用可能な実装を踏襲してWindows 8, Windows 8.
1, Windows 10に以降・対応可能であるマザーボードの供給を進めた(この頃のマザーボードでもTPMチップ用のソケット実装はあったものの、あらかじめ実装されていたものは少なく、TPMチップは別売りでバージョンはTPM2.0に対応する製品であった)。
Windows 10用ドライバはIntel 製のCPUは2011年1月から生産された第2世代CoreプロセッサであるSandy Bridgeマイクロアーキテクチャ以前のハードウェアに対する提供を終了し、ビデオカードメーカーもGPUドライバを提供しなくなった。
更に2016年8月末から生産を開始したIntel 100 Series第7世代Intel CoreプロセッサKaby Lakeマイクロアーキテクチャについて、マイクロソフトは2016年1月15日にWindows 7, 8, 8.1には対応せず、Windows 10のみである旨の声明を出し、同年4月には、2016 年7月28 日以降、Windows 10 では(一部の例外としてTPM 1.2を許容するものの)原則的にはTPM 2.