最終更新:2016-07-15 (金) 03:01:43 (1482d)  

MBR
Top / MBR

Master Boot Record

ハードディスクドライブの先頭セクタ。

構造

  • PC/AT互換機の場合ここの長さは512バイト
    開始アドレス名称サイズ説明
    0x0000マスタ・ブートストラップ・ローダ446バイトパーティションのPBR(Partition Boot Record)を読み込むプログラム
    0x01BEパーティション・テーブル116バイトパーティション1(区画、領域)に関する情報
    0x01CFパーティション・テーブル216バイトパーティション2(区画、領域)に関する情報
    0x01DEパーティション・テーブル316バイトパーティション3(区画、領域)に関する情報
    0x01EEパーティション・テーブル416バイトパーティション4(区画、領域)に関する情報
    0x01FEブート・シグネチャ2バイト固定値(0xAA55)

メモ

  • 一つの物理ディスクには、一つのマスタ・ブート・レコードがあります。
  • 一つの物理ディスクには、4つの基本パーティションを作成出来ます。

バックアップ

$ sudo dd if=/dev/sda bs=512 count=1 of=mbr.backup
$ sudo cat mbr.backup > /dev/sda

パーティションテーブルを含めない場合、bs=466とします

PBR

  • パーティションのない記憶媒体の第一セクタか、または個々のパーティションの第一セクタ
  • その媒体(またはパーティション)にインストールされたオペレーティングシステム(またはその他のスタンドアロンのプログラム)をロードして起動するコードが格納されている
  • ブートセクタ
    • The code stored in the boot sector searches, loads, and runs the NTLDR found in the root directory of the boot partition.

GRUB

boot.img

  • MBRにインストールされる
  • カーネルをロードするcore.imgをロード

メモ

  • MS-DOSPC DOS?、そして Windows® オペレーティング・システムが使用する標準的なハード・ディスクの MBR は、パーティションテーブルを調べて、アクティブとしてマークが付けられたブート・ドライブのプライマリー・パーティションを見つけます。
  • そしてそのパーティションから最初のセクターをロードし、ロードしたコードの先頭に制御を渡します。この新しいコードは、「パーティション・ブート・レコード」(PBR)としても知られています。パーティション・ブート・レコードは、実際にはもう 1 つのステージ 1 ブート・ローダーですが、これにはパーティションからブロック一式をロードするだけのインテリジェンスしかありません。

Windows

Windows XP

Windows Vista/Windows 7

ツール

DOS

Windows上でいじれるツール

リカバリ環境

Linux

ソースコード

  • grub-core/boot/i386/pc/boot.S

関連

参考