ブートフラグ: boot flag)とは、PC/AT互換機、並びにBIOSベースのWindows機のマスターブートレコードにおけるパーティションテーブルに含まれる1バイトの値である。ブートフラグは定義されたパーティションエントリの1バイト目に0x80 という値としてみられる。0x00の値が設定されている場合、それはそのパーティションにブートフラグが設定されていないことを示す[1][2]。 0x80および0x00以外の値は無効値である。

ブートフラグの主たる機能は MS-DOSまたはMicrosoft Windowsの標準ブートローダーに対しどのパーティションを起動すべきか提示することである。またWindows 2000Microsoft Windows XPでは、ある場合においてブートフラグはアクティブなCドライブを指定するために用いられている[3]アクティブパーティションとはブートフラグが設定されているパーティションを指す。MS-DOSまたはWindowsでは、ブートフラグによって指定される起動パーティションはただ1つに制限されている[4]

マスターブートレコードにインストール可能なGRUBXOSLといったサードパーティーのブートローダーでは起動するシステムの選択にこのフラグを用いない。

Windowsの「ディスクの管理」機能やfdiskコマンドなど、ブートフラグを編集できるディスクマネージメントソフトが多数存在する[5]

近代的なBIOSのうちいくつかは、デバイスのパーティションにブートフラグが存在しない場合にそのデバイスを起動デバイスとしては無視する。前述のようなブートフラグを必要としないローダを用いて起動する場合は起動するデバイスの何れかのパーティションに便宜上のブートフラグを設定する必要がある。

Windows機であってもUEFIを用いる場合はパーティションテーブルにGUIDパーティションテーブルを用いるためこれらの値はダミーとなっており無効である。但し、Compatibility Support Module等によってBIOS互換の動作をする場合はその限りではない。

関連項目 編集

脚注 編集

出典 編集

  1. ^ The MBR (master boot record) and the Partition Tables.”. DIY DataRecovery. 2014年12月14日閲覧。
  2. ^ Master Boot Record”. Microsoft TechNet. 2015年4月20日閲覧。 “0x01BE [...] Boot Indicator. Indicates whether the volume is the active partition. Legal values include: 00. Do not use for booting. 80. Active partition.”
  3. ^ Fixing Windows 2000/XP Drive Letters”. Understanding MultiBooting and Booting Windows from an Extended Partition. 2014年12月14日閲覧。
  4. ^ Parted User's Manual - 4. Boot Loaders”. GNUプロジェクト. 2014年12月14日閲覧。
  5. ^ Mark a partition as active”. マイクロソフト. 2014年12月14日閲覧。