UEFI with CSM"のブートモードとはどのようなものですか?

この質問]1で、"UEFI with CSM"は基本的にBIOSモードだと言われました。私が長年学んできたことはそれとはかけ離れているので、かなり混乱しました。

私の見立てでは、CSMは以前の正規ではないUEFI OSを起動させるための特別なメカニズムだと思います。

これが私の見解です。

1.UEFI with CSM の正式名称は

UEFI with **Compatibility Support Module** (互換性サポートモジュール**)

であり、その名の通り、UEFIのための"supprit module"です。

2.私のコンピュータのプライマリドライブには3つのパーティションがあります。ドライブはGPTにフォーマットされており、3つのパーティションは1つのESP(EFI System Partition)と2つのPrimary(Windows 10/Windows 7をそれぞれ)です。マザーボードの設定では、"Boot Mode"に、"Legacy"、"UEFI"、"UEFI with CSM"の3つのオプションがあります。

Legacy"に設定されていると、コンピュータは「No operating system found"」と表示します。と表示されますが、その通りです。UEFI with CSM"に設定した場合は、どちらのWindowsも正常に起動します。UEFI with CSM"に設定されている場合は、両方のWindowsが正常に起動しますが、UEFI"に設定されている場合は、Windows 10のみが起動します。セーフブートログを見ると、Windows 7が`classpnp.sys`でスタックしているのがわかります。

両方のボリュームから「\\winload.exe」を削除してみましたが(Windows To Go環境で行いました)、何も問題がなかったので、ファイルを復元しました。

3.3. MBRの別のドライブを接続して、2つのパーティションを入れました。プライマリはFAT32、プライマリはNTFSで、もう一つのWindows 7がインストールされています。しかし、MB設定を"UEFI"または"UEFI with CSM"に設定した場合は起動できないようですが、"Legacy"に設定した場合は完璧に起動します。プライマリディスクのEFIパーティションのBCDを編集して、この実験的なWindows 7のインストールのためのエントリを追加すると、"UEFI with CSM"では起動しますが、"UEFI"ではclasspnp.sysで止まったままになります。

4.4. MSI B85マザーボードを搭載した別のコンピュータには、"CSM"というスイッチがあります。これが有効になっていると、"Boot Mode"で、"UEFI"と"Legacy"の2つの選択肢があります。無効になっている場合、Boot ModeはUEFIに固定されます。この場合、CSMを有効にした"UEFI"モードではWindows 7が起動しますが、CSMを無効にした場合は起動しません。

以上の実験から、私は "UEFI with CSM"はEFIの特別なモードだと思っていたのですが、なぜ未だにBIOSだと言われるのでしょうか?

UEFI with CSM"は通常、ネイティブ(UEFI)とCSMベース(BIOS)の両方のブートが可能な混合モードを意味します。この場合、ブートメニューには、ネイティブのUEFIブートエントリとCSMの"ブータブルディスク"エントリが混在して表示されます。

しかし、CSMを無効にすることの重要な副作用として、ある種のUEFIのみの機能("fast boot"など)を有効にすることができ、同時にある種のBIOSのみの機能(PCIオプションROMのサポートなど)を妨げることになります。

Windows 10のために作られたにもかかわらず、"fast boot"には多少のバグがあり、ブートプロセスが壊れてしまう可能性があります。

解説 (2)

個人的には、UEFI ONLYモードはCSM ONと組み合わせるべきではないと考えています。いずれにしても。

通常のUEFIブートローダには3つのモードがありますが、私の理解では

[1] Legacy ONLY [msdos partitioning table] with CSM mode set to ON
[2] UEFI + Legacy [GPT partitioning table] with CSM mode set to ON
[3] UEFI ONLY [GPT partitioning table] with CSM mode set to OFF

よくよく考え直してみると、次のようなことが頭に浮かんできました。

もしかしたら、UEFIブートローダの中には、2つのモードしかないものもあるかもしれません。

[1] Legacy ONLY [msdos partitioning table] with CSM mode set to ON
[2] NONE
[3] UEFI ONLY [GPT partitioning table] with CSM mode set to OFF

ここで、ケース[2]はCSMモードをONにして[3]のように再生されます。言い換えれば

[1] Legacy ONLY [msdos partitioning table] with CSM mode set to ON
[2] UEFI ONLY [GPT partitioning table] with CSM mode set to ON.
[3] UEFI ONLY [GPT partitioning table] with CSM mode set to OFF

nobody

解説 (0)

お気づきのように、互換性サポートモジュールは、レガシーブートに限らず、UEFIブートでもOSから要求されることがあります。 これは、Windows 7の場合です。 実際、CSMがなくてWindows 7がまったく起動できない有名ブランドのコンピュータもあります。

また、CSMを有効/無効にすることで、起動時に使用するモニター(マルチモニターシステムの場合)や画面解像度を変更するなど、他の効果もあることに気づきました。 また、私の経験では、UEFI ネットワークブートを行うにはオフにする必要があります。 そうしないと、レガシーネットワークブートファームウェアにしかアクセスできず、UEFIモードでOSを起動できません。

解説 (0)