
ブートローダーである BIOS は、どの OS にもインストールされません。
別のブートローダーである GNU GRUB は OS の下にインストールされていますか、それともどの OS の下にもインストールされていませんか?
ありがとう!
答え1
BIOS はブートローダーではありません。ブートデバイスからブートローダーをロードしようとします。これは、デバイスの最初のセクターをロードすることによって行われます。デバイスのセクターには多くのスペースがないため、通常、このセクターの非常に小さなプログラムが、Windows ブート マネージャーや GRUB などのより機能的な「第 2 ステージ ブートローダー」をロードします。
ブートローダがシステムを制御している場合、OS は実行されていません。
OS はブートローダをインストールできます。これは、関係するハード ドライブの最初のセクターを変更して第 1 段階のブートローダ コードを含め、その後、該当するブートローダに応じて、必要な場所または予想される場所に他のファイルを配置することによって行われます。
BIOS の代替である UEFI がブートローダーとして機能できるかどうかは不明ですが、これは通常 Windows システムでは行われません。U-Boot などの他のプラットフォーム用のファームウェアは、いくつかのファイルシステムを理解し、そこからカーネルを直接ロードできます。PC プラットフォームの BIOS とは異なり、これらにはブートローダー機能があります。
答え2
BIOS(マシン上のPC/ATファームウェア)もっているブートローダ。これは、他の多くの機能の 1 つを組み込んでいます。ブートローダは、ディスク デバイス (何らかのもの) の最初のブロックをロードし、その中に埋め込まれているプログラムを実行します。そのプログラムは、ほとんどのオペレーティング システムがインストールする標準の MBR ブートストラップ プログラム、またはディスク デバイスの 2 番目以降のブロックに MBR ウイルス スタイルでインストールされる GRUB などのプログラムの最初のステージのいずれかです。
標準の MBR ブートストラップ プログラムと GRUB はどちらもマシン ファームウェア上で直接実行され、I/O などにファームウェアが提供するサービスを利用します。これらはオペレーティング システム上では実行されません。
インストールプログラムディスク デバイスの最初のセクターと後続のセクターにプログラムを書き込むプログラムは、オペレーティング システム上で実行されます。
EFIファームウェアの世界では、ファームウェアにはブートマネージャーFATファイルシステムフォーマットを理解し、FATボリュームから実行可能ファイルを読み込み、実行することができます。これらの実行可能ファイルは、多くの場合カーネルローダープログラム。特にMicrosoft Windowsの場合、さらに遠くブート マネージャー。これらのプログラムも、オペレーティング システム上ではなく、マシン ファームウェア上で実行され、I/O などに EFI サービスを使用します。
参考文献
- ジョナサン・デ・ボイン・ポラード(2011年)。ブートストラッププログラムのさまざまな種類よくある質問。
- ジョナサン・デ・ボイン・ポラード(2011年)。PC/AT の起動プロセスよくある質問。
- ジョナサン・デ・ボイン・ポラード(2006年)。EFIブートプロセスよくある質問。
- ジョナサン・デ・ボイン・ポラード(2006年)。ARCブートプロセスよくある質問。
- ジョナサン・デ・ボイン・ポラード(2006年)。Windows NT 6 の起動プロセスよくある質問。