高等学校工業/ソフトウェア技術/パーティション

出典: フリー教科書『ウィキブックス(Wikibooks)』

参考: マルチブート[編集]

(※ 範囲外。 間違ってるかもしれないので、自己責任で)

さて、あるコンピューターに、生産業者のちがう2種類以上のOSがインストールされているとして(たとえば windows と linux が1体のパソコンにインストールされてるとしよう)、起動時には、これから利用者(あなた)の使用するOSを選択できるようになってるとしよう。(たとえば、windowsを使用したいか、それともlinuxを使用したいか、起動時に選択できるとしよう。) このように、複数のOSを起動選択できる仕組みのことを「マルチブート」という。(※ マルチブートについては検定教科書の範囲外。しかし本wikibooksでは、説明の都合上、マルチブートに言及する。)

さて、もし、このような起動時のOS選択画面で、windowsをこれから使用すると選択ボタンを押したら、windows起動用のブートローダが作動するわけである。いっぽう起動時のOS選択画面でlinuxをこれから使用すると選択ボタンを押したら、linux起動用のブートローダが作動するわけである。

では、そもそも、この、おおもとの、OS選択画面を起動するプログラムは、なんなのだろうか?

実は、これはブートローダのプログラムの一部である。たとえば1体のパソコンに linux と windows の入ってるパソコンを起動すると、まずMBRの起動と読み込みが行われ、それからMBRの指示にしたがって、まず linux か windows のどちらかのブートローダが起動されるようになっている。(MBRでは、OS選択できない。MBRの領域が小さすぎて、OS選択するだけの機能が実現困難。)

マルチブートの場合でも、パソコン1体にOSを1つしかインストールしない場合と同様に、マスターブートレコードはハードディスクの記憶領域の先端に1個だけである。

そして、まずlinux由来のOS選択画面が起動するという設定の場合、windowsを使いたい場合は、linux由来のOS選択画面から、windowsのブートローダを起動するためのプログラムを実行できるようになっており、windowsにPC管理を引き渡した後、linuxが終了し、利用者はwindowsを使用できる、・・・というような仕組みになっている。(なお、linux由来のOS選択画面が起動するという設定の場合で、そのままlinuxを使いたい場合は、そのまま画面指示などに従って linux を起動すればいい。)

(※ 範囲外:) なお、説明のためマルチブートに言及したが、しかし実務では、特別な事情がないかぎり、パソコン1体にはOSは1つだけインストールするのが、安全である。(つまり、マルチブート設定にしないほうが安全である。) もし、2つめ以降のOSのインストール作業などに失敗すると、そのハードディスクに今まで保存したデータを丸ごと消失してしまう可能性もあるため、あまりOSは追加しないほうが安全である。
(※ 範囲外:) 新規購入したwindowsをインストールするときのように、新規購入したOSをインストールするときは、そのOSインストールプログラムは、ハードディスクのマスターブートレコードの内容を、新規OSの起動用へと書き換えているのが一般的である。このため、おのパソコンで以前から用いてたOSがある場合、その以前のOSのブートレコードが書き換えられるので、以前のOSが起動しなくなる場合もある。
マルチブートでは、こういうトラブル(「以前のOSが起動しない!」)が起きうるため、あまりマルチブートは、しないのが安全である。


パーティション[編集]

パソコンの内蔵ハードディスクが実際には1個だけでも、記憶領域を複数個に分割することで、そのハードディスクがあたかも複数個、存在するように操作できる。

ノートパソコンを購入したさい、「Cドライブ」「Dドライブ」などのように、データ保存用のドライブが2つ用意されていたりするが、これは、たいていのパソコンの場合、1つのハードディスクの記憶領域を別々に分けているからである。(別にハードディスクが2個内蔵されているのではない。 )

(※ もっとも、ノートパソコンではなく大型のパソコンだと、ハードディスクを実際に複数個、使用する場合もある。)

パソコンメーカーなどの説明書などによると、利用者への推奨事項として、使用目的別に、CドライブとDドライブを使い分けるように推奨されていたりする。(たとえば、Cドライブはインストールするプログラムを入れるために使用。Dドライブは、画像やテキストファイルなど、インストールしないデータを保存するために使用。・・・などが推奨されていたりする。)

このノートパソコンでの1つのハードディスクの記憶領域の分割のように、1つの記憶装置の記憶領域が、複数個の記憶領域に分割されたものをパーティション(partition)という。なおパソコン業界では便宜上、記憶領域を分割しない場合も含めて、「パーティション」という。

(※範囲外:) 実務的には、前の節で「ブートローダ」について言及したが、linuxでは、ブートローダは独立した1個のパーティションとして扱われる場合が多い。もっとも、windowsでは、ブートローダのパーティション設定について考慮する機会はないだろう。ともかく、このため、1つのOSをインストールするさい、ブートローダ用のパーティションの作成と、くわえて、OSをインストールしたりデータを保管するためのパーティションが必要であるので、少なくとも2個のパーティションが作成されるのが普通である。
(※範囲外:) 普通の起動用ハードディスク1個では、パーティションは、4つまでしか用意できない。なぜこうなっているかというと、昔の人が、そう決めてしまったから・・・らしい。ハードディスクの先端512バイトのブートセクタの領域には、パーティションの数は最大4つまでしか起動プログラムを記述できないような仕様になっている。さて、先ほど、1つのOSのインストールにつきパーティションは2個作成されるのが普通、・・・と言った事と合わせて考えよう。つまり、1つのハードディスクには、普通、OSを2個までしかインストールできない。(2[パーティション/OS個数]×2[OS個数]=4 により、パーティション上限の4個になってしまうから。)
(※範囲外:) 原則として、ハードディスク1個では、パーティションは、4つまでしか用意できない。ただし、つのパーティションの中に別の複数個のパーティションを入れるなどのように、パーティションを入れ子構造にして、さらに多くのパーティションを用意する事ができる。このような仕組みを「拡張パーティション」(extended partition)といったり、あるいは「論理パーティション」という。 いっぽう、入れ子構造でない、通常の、むき出しのパーティションのことを、一般に「基本パーティション」(primary partiton)という。つまり、ハードディスク1体につき、基本パーティションは4個まで、である。
OSのパーティション管理画面において、あるパーティションについて「プライマリ」と表示されている場合、そのパーティションはおそらく基本パーティションだろう。
さて、拡張パーティションを用いれば、1つのハードディスクに3つ以上のOSを入れる事も可能である。(しかし、他の節で説明するが、「仮想化」などの技術を用いたほうが、実務的には早い。また、そもそも、あまり複数のOSを、1体のパソコンで使用するべきではない。)
(※範囲外:) 「Cドライブ」や「Dドライブ」といった表現は主にWindowsでの表現である。Linux(リナックス)など他のOSでは、呼び名が違う場合もある。
また、「C」からドライブが始まる理由は、もともとWindows以前のMS-DOS時代の後半の古いパソコンでは、フロッピーディスクの入り口の2つあり、それぞれのフロッピーの入り口がAドライブとBドライブだったので、よってハードディスクが(Bの)次の「C」ドライブになる事になった。