Windows 8.1をUEFIモードでインストールすることにより、高速な起動やブートコードなどを保護するセキュアブート機能が利用できる。
「Windows 8.1クロスロード」は、2013年10月から出荷されているWindows 8.1の注目機能について解説するコーナーです。
今回は、高速な起動を可能にするWindows 8.1のUEFIサポートと、ブートコードなどを保護するセキュアブートについて解説する。
Windows 8/8.1では「高速スタートアップ」という機能が導入され、従来のWindows 7と比較するとシステムの起動が非常に高速になっている。高速スタートアップの具体的な内容については以下の記事を参照していただきたい。
高速スタートアップの内容を簡単にまとめておくと、次のようになる。
Windows 7やそれ以前のWindows OSでは、システムの起動時にOSカーネルのロードとデバイスの検出、デバイスドライバーのロードなどの作業を行っていたが、これらは非常に時間がかかっていた。Windows 8の高速スタートアップではその部分を省略することにより、大幅に起動/終了の高速化を果たしている。
ところで前掲のWindows 8の高速スタートアップの記事では、UEFIについては触れていなかった。UEFIを使わなくても十分高速になっているが、UEFIの機能を利用すると、さらに高速な起動や終了が実現できる。今回はWindows 8/8.1のUEFIサポートと、それによって利用できるようになるセキュアブートについて解説する。
「UEFI(Unified Extensible Firmware Interface)」とは(単に「EFI」と呼ぶこともある)は、従来のBIOSシステム(以下「レガシーBIOSシステム」と呼ぶ)に代わる、PCシステムのための新しいシステムインターフェイス(ファームウェアアーキテクチャ)である。
従来のPCには「BIOS」と呼ばれるブートプログラムが載っており、電源投入後のシステムチェックや接続されているデバイスのチェック、ディスクの検出、OSのブートコードのロードと起動などを行っていた。BIOSはx86アーキテクチャのCPUと16bitのリアルモード(アドレス空間はたった1Mbytesしかない)のコードに大きく依存していたため、BIOSプログラムのサイズや実現できる機能には大きな制約があった。最も大きな制約は、2Tbytes以上のディスクからブートできない、という制限だろう。
UEFIはBIOSに代わる新しいシステムであり、CPUの32bit/64bitネイティブコードを使った高機能な処理や、新しいディスク管理形式(従来のMBR形式ではなく、より拡張されたGPT形式)の採用による、2Tbytes以上のディスクサポートなどを実現している。最近ではBIOSに加えて、このUEFIをサポートしたPCシステムも増えてきている。Windows 8.1のシステム要件では、「セキュアブート」機能を利用するためにはこのUEFIのサポートが必要だし、Windows 8.1のロゴプログラムの認定を受けるためにはUEFIのサポートが必須となっている。
システムがUEFIをサポートしていると次のようなメリットがある。
項目 | 内容 |
---|---|
セキュアブート | ブートコードなどが改ざんされていないことが保証される機能が利用できる。ブートコードを変更する操作(ウイルスなど)は禁止されるため、システムの安全性が増す |
2.2Tbytes以上のディスクからのブート | 2.2Tbytes以上のディスクをWindows OSのシステムディスクとして利用可能。レガシーBIOSシステムでは、2.2Tbytes以上のディスクはデータ用ディスクとしてのみ利用可能であり、Windows OSのインストール先としては利用できなかった(2.2Tbytes以上の領域にはアクセスできなかった) |
高速なシステム起動/シャットダウン | レガシーデバイスサポート(レガシーデバイスのスキャン)などを省略し、高速なシステムの起動が可能(Windows 8/8.1の「高速スタートアップ」とは別) |
高機能な設定操作画面 | GUI画面などを駆使した、高機能で分かりやすいBIOS設定画面を備える。またUEFIのコードでは、システムの起動前に全メモリにアクセス可能なので、高度な機能が実現できる |
UEFIを使用したシステムの利点 |
UEFIがサポートされているかどうかは、システム次第である。現在Windows 8.1対応として出荷されているPCはもとより、ここ2〜3年以内のPCシステムやマザーボードならまずサポートされているだろう。ただし、その中でも古めのシステムでは単にUEFIブートにのみに対応していて、ユーザーインターフェイスなどはCUIのまま、セキュアブートにも未対応というものもある。
Windows OSをUEFIモードで利用するには、Windows Vista SP1以降およびWindows Server 2008 R2以降の64bit版Windows OSが必要である。Windows 8やWindows 8.1からは、32bit版でもUEFI環境で利用できるようになっているが(タブレットPCなどは、UEFIモードで動作する32bit版Windows OSがインストールされている)、一般に入手できるパッケージ版やDSP版のWindows 8/8.1のインストールメディアの場合、32bit版はUEFIモードではインストールできない(レガシーBIOSモードでのみインストール可能)。そのためUEFIモードを利用したければ、64bit版のWindows 8/8.1を利用する。
Windows 8.1をUEFIモードでインストールするには、Windows OSのインストール用メディアを使ってシステムをUEFIモードでブートさせ、インストーラーを実行させる。UEFIモードで起動させる方法はシステムに依存するが、たいていの場合はまず(BIOSセットアップやUEFIファームウェア設定と呼ばれる)システム設定画面でUEFIブート機能を有効にしておき、Windows OSのインストールメディアを使ってシステムを起動する。最初にレガシーモードでインストールしてしまうと、後でUEFIモードに変更することはできない。
UEFIモードにするための設定はシステムごとに異なるが、たいていの場合はブートの設定項目の中にUEFIモードが用意されているだろう。UEFIでない従来のモードは「CSM(Compatibility Supported Module)」などと表記されていることが多い。以下に設定しておきたい主な項目を挙げておく。
設定項目 | 設定内容 |
---|---|
UEFI/レガシーBIOSモード | ・レガシーBIOS(CSM)モードではなく、UEFIブートを優先するモードを選択 |
SATAモード | ・SATAインターフェイスの動作モードは、IDEではなく、AHCIかRAIDにする ・SSDを利用するなら、SATA 3(6Gbps)ポートに接続しないと速度が3Gbpsで頭打ちになり、その高速性を生かせない |
仮想化機能 | ・Hyper-Vを利用するなら、Intel VT(Virtualization Technology)かAMD-Vをオンにする |
UEFIセキュアブート | ・Windows 8/8.1しかインストールするつもりがなければオンにする ・それ以前のWindows OSや、UEFIに対応していないOSをマルチブートで使う予定があるならオフにする |
セキュリティデバイス(TPM) | ・セキュリティデバイス(TPM:Trusted Platform Module)を持つシステムの場合、可能なら有効にしておく。BitLockerやセキュアブートなどで利用される(これらはTPMがなくても利用できるが、いくらか機能が制限されることがある) |
UEFIモードでインストールする場合にチェックしておきたい主なBIOS項目 |
以下に、UEFIをサポートしているシステムの画面例を示す。このシステムの場合は、「起動」グループの中にUEFIを使うかどうかを設定する項目が用意されている。
システムの準備ができたら、Windows 8.1のインストールメディア(DVD-ROM)を使ってシステムを起動する。DVDドライブを持っていないシステムの場合は、インストールメディアの内容をUSBメモリにコピーしたものを使ってシステムを起動する。インストール用のUSBメモリを作る方法は、以下の記事などを参照していただきたい。
ところでUEFIでしか利用しないなら(レガシーBIOSモードでインストールする予定がないなら)、これらのTIPS記事のような手順ではなく、容量4Gbytes以上のUSBメモリを用意してFAT32形式でフォーマットし、DVD-ROMの内容をエクスプローラーなどで全部コピーするだけでよい。レガシーBIOSモードでは、USBメモリの先頭セクターにブートコードを書き込んでおく必要があったが、UEFIモードではファイルシステムから見えない場所に格納されているブートコードなどは参照されず、単にファイルとしてアクセスできればよいからだ(UEFIのブートプログラムは\efiフォルダの下にファイルとして格納されている)。ただしUEFIのシステムによってはNTFSファイルシステムを読むことができないものも少なくないので(主にノートPCなど)、FAT32でフォーマットしておくとまず間違いなくどのシステムでも利用できる。
システムにインストールメディアやUSBメモリをセットしたら、UEFIモードでブートするようにデバイスを選択する。ブートデバイスの選択方法もシステムによるが、上記のシステムの場合は、「起動」グループの中にシステム接続されているデバイスやメディアなどの一覧が表示されているので、先頭が「UEFI 〜〜」となっているデバイスを選んで起動させる。
UEFIモードで起動できたら、後はレガシーBIOSモードでもUEFIモードでも、Windows 8.1のインストール方法はほとんど同じである。2Tbytes以上のディスクであっても、その全容量が正しく認識され、Windows OSのシステムディスクとして利用できる。もちろん2Tbyte以下のディスクであってもUEFIモードでインストールされる。
システムがUEFIモードでインストールされているかどうかは、インストール完了後に「msinfo32」コマンドを実行すれば分かる。
UEFIモードでインストールするだけで、すでに起動やシャットダウンはレガシーBIOSモードよりも高速になっているはずだが、さらに高速にできないかどうか確認しておこう。
UEFIモードでは、従来のレガシーBIOSモードと違って、システム起動時の自己診断(POST:Power On Self-Test)やデバイスの検出、初期化処理などが大幅に省略されており、そのおかげで起動が高速になっているが、互換性のためにいくらか時間のかかる処理が残っている。例えばファームウェア設定画面に入るための[F2]や[Del]キーの入力待ち、ディスクのスピンアップ待ち、ファームウェア設定画面を操作するためのキーボードやマウスの初期化などだ。システムにトラブルがなく、ファームウェア設定画面に入る必要がなければ、これらの機能も無効化すればさらなる高速化が期待できる。
実際にどのような項目が高速化のために利用できるかはシステムに依存するが、「高速ブート(Fast Boot)」などという設定項目として用意されていることが多い。例えば次のような項目があるだろう。各自のシステムに合わせて設定していただきたい。
設定項目 | 設定内容 |
---|---|
ロゴ表示の無効化 | 起動時にシステムの構成情報やマザーボード、システムのロゴなどを表示する機能を無効にする |
ファームウェア設定画面の呼び出し機能の無効化 | システムによっては、起動時に[F2]や[Del]キーを押すとファームウェア設定画面に入るようになっているものがあるが、この機能を無効にする |
ディスクのスピンアップ待ち時間の省略 | ハードディスクは起動に時間がかかるし起動時は消費電力も大きいため、ディスク1台ごとに例えば3秒とか5秒程度待つように設定されていることがある。電力的に問題がなければ0秒に設定する。SSDならディスク待ちは不要である |
キーボードやマウス以外のUSBデバイスの不検出 | USBに接続されたデバイス(および拡張カードなど)は起動時のスキャンに時間がかかるため、これを抑止する。ただし全てのUSBデバイスを不検出にするとファームウェア設定画面でキーボードやマウスも使えなくなるので、必要ならキーボードやマウスだけは有効にしておいてもよい。なおシステムによっては「電源断後(強制的な電源切断後)は通常ブート」という選択肢があるので、それを選択しておくとよいだろう |
レガシーBIOSの完全無効化 | 互換性のために(非UEFI対応OSのインストールなど)、レガシーBIOSも一部有効にしていることがあるが、他のOSをインストールするつもりがなければ、レガシーBIOSを完全に無効化し、UEFIのみを有効にする |
非ブートデバイスの不検出 | システムに登録されているブートデバイス以外のディスクのスキャンを止めると、無駄なスキャンを抑止できる |
ネットワークブート機能の無効化 | ネットワークからブートコードをダウンロードして実行するPXEブートなどの機能を無効にすることにより、ネットワークスタックの処理を省略する |
これらの設定を行うことにより、実際にどのくらい起動時間が短縮されるかを次に示しておく。SSDシステムであることを差し引いても、かなり起動が高速化できることが分かる。
システムを完全にUEFI専用にして起動時に何のメッセージも出さないようにすると、一番高速な起動が期待できるが、トラブル時にファームウェア設定画面に入ることができなくなる恐れがある。システムによっては、特定のキー操作で常に設定画面に入れるようになっていたりするし(例えばマイクロソフトのタブレットPC「Surface」では、ボリュームアップボタンを押しながら、電源ボタンを押すとUEFIの設定画面になる)、システム付属のユーティリティ(例:ASUSのマザーボードに付属の「DirectBIOS」ツールなど)を使えば、自動的に再起動してBIOS画面になるものもある。だがこれらの機能は全てのシステムで使えるわけではない。
UEFIモードでインストールしたWindows 8.1では、シャットダウンメニューなどからUEFIの設定画面を呼び出す機能が用意されている。以下のいずれかの方法で呼び出せばよい。これらは、第7回「PCのリフレッシュとPCのリセット、およびカスタムイメージの作成」で解説した、トラブルシュート画面の呼び出し方法と同じである。
以上の操作を行うとシステムが再起動し、[オプションの選択]画面が表示される。そこで[トラブルシューティング]→[詳細オプション]→[UEFI ファームウェアの設定]と順にクリックしていくと、システムが再起動して、ファームウェア設定画面に切り替わる。
Copyright© Digital Advantage Corp. All Rights Reserved.