BIOS はブートシーケンスをどこに保存しますか?

BIOS はブートシーケンスをどこに保存しますか?

別の OS をフォーマットして再インストールするたびに、BIOS 設定に新しいブート オプションが表示されます。これはどこに保存されますか? OS 内から読み取ったり変更したりできますか?

答え1

お使いのコンピュータの「BIOS」設定に個別のオペレーティングシステムがリストされている場合、それは従来のBIOSではなく、UEFIファームウェア(ここ10年ほどのほとんどのPCと同様)を実行していることを意味します。(過去の実際のBIOSベースのコンピュータにはそのようなブートオプションはなく、実際のディスクのみを対象としており、「OSを選択」ブートメニューを提供する必要がありました。によるOS 自体。

UEFI の変更点の 1 つは、独自の OS 選択メニューが導入され、OS エントリがディスクではなく「EFI 変数」の形式でマザーボード内 (他のすべてのファームウェア設定が保存されている場所) に保存されるようになったことです。

どの OS でも EFI 変数とブート エントリにアクセスできますが、すべての OS にそのためのツールが付属しているわけではありません。(また、ネイティブ UEFI で実行されている OS のみで、「BIOS エミュレーション」がアクティブな場合はアクセスできません。)

  • Linux 内から、UEFI ブート エントリには efibootmgr を介してアクセスできます。まず でefibootmgr -vすべてのエントリを一覧表示し、次に--deleteID 別に不要なエントリを一覧表示します。

  • Windows 内から、 を通じて UEFI ブート エントリにアクセスできますbcdedit。これには、Windows 独自の BOOTMGR ブート エントリが混在しています。 から始めて、bcdedit /enum firmwareすべての UEFI ブート エントリを一覧表示し、次に/deleteID 別に不要なエントリを一覧表示します。

    (もしあなたがなかったファームウェアのブート メニューについて説明していますが、Windows 独自のブート メニューについても、bcdedit は両方を同じように処理できます。

  • FreeBSD にも efibootmgr がありますが、オプションが若干異なります。NetBSD、OpenBSD には現在そのようなツールはまだ含まれていません。

答え2

あなたの質問に答える前に、あなたの質問に対するTonnyのかなり漠然としたコメントを少し変更します。Basic Input/Output System自体は、どのドライブから起動するかを決定するのではなく、BIOSのブートシーケンス設定で構成したものを決定します。このツールの後継であるUEFIがこれにどう関係するかはわかりませんが、「新しいブートオプションが表示される」という意味であれば、これであれば、はい。実際、Windows オペレーティング システム内でシステムを起動するたびに、このやや煩わしいダイアログを操作できます。この機能を無効にする方法についてのステップバイステップのチュートリアルはこちらです

追加情報: BIOS ソフトウェアは、電気的に消去およびプログラム可能な読み取り専用メモリ (EEPROM) に保存されます。古いバージョンでは UV-EPROM が使用されていました。名前が示すように、メモリは再プログラムされる前に紫外線で消去されます。一方、このポップアップ メニュー (ダイアログ ボックスとは異なります。詳細情報。ここ) は、OS を含むインストール済みのすべてのドライブの中から起動する OS を選択するよう求めるプロンプトで、システムで現在実行されているオペレーティング システムのスタイルでフォーマットされます。したがって、その OS 内に保存されます。(これが最も合理的な理由ではありませんが、十分だと思います。) 私が作ったおかしな点があれば、遠慮なく修正してください。それでは良い一日を!

関連情報