Windows ブート マネージャーと Windows オペレーティング システムの関係は何ですか?

Windows ブート マネージャーと Windows オペレーティング システムの関係は何ですか?

Windows ベースのマシンを起動するときに、何か問題が発生した場合、複数のブート オプションがあります。Windows ブート マネージャーというタイトルの UI がポップアップ表示されます。Windows 7/8/10 はそのリストのオプションです。ただし、このソフトウェアが Windows OS のカーネルが起動する前に実行されることを証明するだけで十分です。そうすると、Windows ブート マネージャーは Windows プログラムではないと推測できます。

私の推論は正しいでしょうか?

Windows OS がなくても存在できますか? (たとえば、UNIX マシン上の GRUB を置き換えます。)

答え1

はい、ブートローダーとブートマネージャーはファームウェアによって直接起動されます。

(一部のファームウェアは非常に複雑なので、できた実質的には、UEFI を「OS」、そのブートローダを「UEFI プログラム」と呼びます...)

  • Windows ブート マネージャーは Windows なしで存在できるでしょうか? はい。
  • GRUB を置き換えることができるでしょうか? できるかもしれませんし、できないかもしれません。(ただし、「UNIX」がどの OS を意味するかによって異なります!) BIOS よりも UEFI の方が簡単です。
  • GRUB は Windows ブート マネージャーを置き換えることができるでしょうか? おそらくそうでしょうし、そうでないかもしれません。(Windows のバージョンによって異なります。)

問題は、OSカーネルの起動方法がそれぞれ異なっており、ブートローダが特定の初期パラメータ(どのディスクから起動するか、どの「カーネルコマンドライン」を使用するか、Linux initramfsがどこにあるかなど)を提供することを前提としていることです。たとえば、Linux ブートプロトコル、そしてここにマルチブート仕様一部の BSD で使用されます。

したがって、Windows BOOTMGR に直接起動するように指示することはできずvmlinuz、GRUB にntoskrnl.exe直接起動するように指示することもできません。

しかし、その作業はブートマネージャ自体ではなく、小さな「スタブ」ブートローダによって行われることもあります。できる標準的な方法で起動できます。そして、そのスタブブートローダーできた通常とは異なるブート マネージャーによって起動されます。

  • たとえば、Windows BOOTMGRは最初に起動しwinload.efiそれは開始するためのすべての準備ntoskrnlが完了する場所です。

    つまり、winload.efiBOOTMGR を経由せずに、 を起動することで GRUB で Windows を起動できるようになります。

  • 同様に、Linuxカーネルには組み込みの「EFIスタブ」が付属していることが多く、カーネルは自体スタンドアロンの UEFI プログラムとして実行できます。

    したがって、Linux カーネルで独自の「EFISTUB」オプションが有効になっているか、systemd-boot スタブがアタッチされている場合は、GRUB などを使用せずに Windows BOOTMGR で直接起動することができます。

答え2

実際、両者はお互いを補完し合っています。

ブートストラップの文字通りの意味はブーツのひもであり、日常生活の文脈ではブーツのひもを結んで出かける準備ができたことを意味します。コンピューティングに関連して言えば、仕事の準備ができたことを意味します。

ブートストラップ プログラム、または一般にブートとして知られているものは、ブート ローダー (ブート マネージャーとも呼ばれる) であり、BIOS を実行します。接続されているすべての周辺機器を初期化し、それらが機能しているかどうかをテストします。次に、オペレーティング システムをロードするというより大きなタスクを実行します。

簡単に言えば、オペレーティング システムは、コンピューターをあらゆる手段で操作可能にします。

したがって、OS を起動しないとコンピューターも無力であると言えます。

関連情報