カスタム検索
|
Tweet |
|
|
ブートの仕組みを調べてみた
Modified: 27 Apr 1999
ハードディスクの起動の仕組み
OSを切り替えてブートする方法の考察
(Windows95/98 にまつわる制約)
ハードディスクの構造
ハードディスクは、先頭に、どのパーティションにも属さない "MBR (Master Boot Record) " という部分があり、各パーティションの位置やサイズの情報と、起動のためのプログラムが入っています。
各パーティションの先頭には、OS専用の、OSを起動するための、"PBR (Partition Boot Record)" というプログラムが入った領域があり、残りの部分にファイルが作られます。
MBR
PBR パーティション1
PBR パーティション2
PBR パーティション3
PBR パーティション4
パーティションは、正確には、基本パーティションと拡張パーティションがあり、もう少し複雑です。そのことは別途解説するとして、まずは、単純な構造で説明します。
起動の仕組み
PCが起動すると、PCのBIOSは、MBRを読み込み、MBRのプログラムを実行します。
MBRのプログラムは、どれか一つのパーティションを選択し、そのパーティションのPBRを読み込み、PBRのプログラムを実行します。
PBRのプログラム、たとえば、Windows98のPBRは、そのパーティション内のWindows98を起動します。
1つのパーティションに、1つのOSの場合
MBRを書き換える方法
MBRに専用のプログラムを組み込んで、任意のPBRを実行できるようにすれば、パーティション毎のOSを起動できるようになります。
"LILO" と呼ばれる、Linuxのローダーがこの仕組みである。
1つのパーティションに、複数OSがある場合
WindowsNT、Windows98、Windows3.1、MS-DOSなど、Microsoft社のOSは、一つのパーティションに全部インストールできますので、PBRに切り替えの仕組みが仕込まれています。
Windows系のOSには、いろいろ制約があります。
- Windows95/98 は、基本パーティションにインストールしなければならない。
- Windows95/98 は、Cドライブ以外にもインストールできるが、起動はCドライブから行われるので、50MB以上のサイズのFAT16のCドライブが必要である。
- WindowsNTとWindows98/95 を、インストールする場合、Cドライブは "FAT16" でなければならない。
- 1つのPCに、Windows98/95 を複数インストールできない。