ブートフラグ(英: boot flag)とは、PC/AT互換機、並びにBIOSベースのWindows機のマスターブートレコードにおけるパーティションテーブルに含まれる1バイトの値である。ブートフラグは定義されたパーティションエントリの1バイト目に0x80 という値としてみられる。0x00の値が設定されている場合、それはそのパーティションにブートフラグが設定されていないことを示す。 0x80および0x00以外の値は無効値である。
ブートフラグの主たる機能は MS-DOSまたはMicrosoft Windowsの標準ブートローダーに対しどのパーティションを起動すべきか提示することである。またWindows 2000、Microsoft Windows XPでは、ある場合においてブートフラグはアクティブなCドライブを指定するために用いられている。アクティブパーティションとはブートフラグが設定されているパーティションを指す。MS-DOSまたはWindowsでは、ブートフラグによって指定される起動パーティションはただ1つに制限されている。
マスターブートレコードにインストール可能なGRUBやXOSLといったサードパーティーのブートローダーでは起動するシステムの選択にこのフラグを用いない。
Windowsの「ディスクの管理」機能やfdiskコマンドなど、ブートフラグを編集できるディスクマネージメントソフトが多数存在する。
近代的なBIOSのうちいくつかは、デバイスのパーティションにブートフラグが存在しない場合にそのデバイスを起動デバイスとしては無視する。前述のようなブートフラグを必要としないローダを用いて起動する場合は起動するデバイスの何れかのパーティションに便宜上のブートフラグを設定する必要がある。
Windows機であってもUEFIを用いる場合はパーティションテーブルにGUIDパーティションテーブルを用いるためこれらの値はダミーとなっており無効である。但し、Compatibility Support Module等によってBIOS互換の動作をする場合はその限りではない。
関連項目
- マスターブートレコード
- パーティション
- ブート
脚注
出典




