web-dev-qa-db-ja.com

デュアルブートシステムでは、BIOSは実行するブートローダーをどのように選択しますか?

WindowsとUbuntuのデュアルブートがあります。マシンの電源を入れると、BIOSはPOSTを実行し、その後ブートローダーが起動します。

BIOSがどのブートローダーを実行するかを選択する方法を理解したいと思います。 BIOSとデュアルブートコンピューターのブートローダーの間で行われているプロセスを知りたい。

21
Prashant Singh

BIOSファームウェアは実際にはブートローダーを選択しません。ドライブのセクター0からコードを読み込み、実行します。そこに何があっても、それは実行されます。うまくいけば、それはブートローダー(またはブートローダーをロードするもの)ですが、そうである必要はありません。初期のPC時代には、OSなしで単純に起動して実行するゲームがフロッピーディスクにありました。これらは現在、「ブーター」と呼ばれています。

UEFIファームウェアは実際にパーティションとファイルシステムを理解し、ドライブをスキャンしてUEFIシステムパーティションタイプを探します。これはファイルシステムであるため、複数のブートローダーをここに配置できます。 UEFIファームウェアは、使用するブートローダーを選択するメニューまたはその他の方法を提供することになっています。

多くのUEFIシステムは、「レガシーモード」-UEFIが「互換性サービスモジュール」-BIOSのように見えるものをロードする-で起動しており、実際にBIOSのように動作します。

GRUBは一般的なオープンソースのブートローダーであり、Linuxをブートするか、Windowsブートローダー(通常はWindowsパーティションのブートフォルダーにあるwinload.exe)を「チェーンロード」する(制御を与える)ことができます。 GRUBは、決定を下す能力をあなたに与えているものです。 GRUBは、構成ファイルを読み取り、それらからデフォルトの選択を取得できます。

this を読んでください。

37
LawrenceC

この図は、制御がファームウェア(BIOSまたはUEFI)からブートローダーに、およびブートローダーからUbuntuのオペレーティングシステムにどのように渡されるかを示しています。

enter image description here
BIOSとUEFI

OSが異なるモード(BIOSとUEFI)でインストールされている場合、WindowsとUbuntuのデュアルブートは機能しません。


buntuをUEFIモードに変換

  1. ブート修復を開始し、詳細オプション->GRUB locationタブを選択します。
  2. Separate/boot/efi partitionオプションが表示されない場合、これはPCにUEFIパーティションがないことを意味します。
  3. Separate/boot/efi partitionオプションが表示されている場合は、左側のチェックボックスにチェックマークを付けてから、Apply右下隅のボタン。

    Converting Ubuntu into UEFI mode

  4. UEFIモードでハードドライブを起動するようにBIOSを設定します。この設定を調整する方法は、コンピューターの特定のモデルによって異なりますが、通常、この設定はBIOS/UEFIセットアップユーティリティのBootタブの下のブート優先順位設定にあります。

11
karel

レガシーモード(UEFIではなくBIOSブート)では、BIOSがドライブの順序を制御します。昔々、これはケーブルで制御されていました。 BIOS設定を変更すると、ボックスを開いてケーブルを変更するよりも速くなります。

BIOSは、最初のディスク(またはBIOSによって制御されるドライブ順序)の最初のセクター(MBRまたはマスターブートレコードと呼ばれる512バイトのディスク)を(メモリに)ロードし、この「ブートローダー」に(CPU)制御を渡します。 BIOSがジョブを完了し、最初のセクターのコードが実行されます。

7
guiverc