FARLAND PARTY ひびきつくねの ファーランドパーティ |
Last Update : 2001.11.01 Copyright T.Hibiki 2001 |
ハードディスクのお約束
|
最近のパソコンには、以前では考えられなかったような大容量ハードディスク(以下HD)が標準で搭載されている。例えば1995年1月に購入したパソコンでは1GBのHDであったものが、1999年10月に購入したパソコンでは、大きいものでは30GBのHDであったりする。 そこで、実際に店頭でHDの価格を調査すると、1999年11月現在で10GBを超えるHDも1万円ちょっとという状況である。こうなれば、一般ユーザーである私たちがHD増設を簡単に考えるのも当然の結果となるわけだが、古いパソコンで大容量HDを使用する場合に思わぬ落とし穴があることを、ここから説明していくことにする。 ただし、ここで述べているHDは「内蔵型」である。一般にパソコン内部に装着する、「IDE」と呼ばれる規格のHDである。外付けSCSI機器には当てはまらないことに注意して頂きたい。
特に古いパソコンでは、大容量HDが正しく認識されないといった症状が顕著に見られる。これは、インターフェースやハードディスクBIOS(バイオス:Basic Input/Output System)の仕様によって扱える最大容量が決まっているからである。
HDの構造を見ると、複数枚の磁気ディスクが回転し、その1枚ごとに用意されている磁気ヘッドがディスクにアクセスし、データを書き込んだり(保存)読み込んだり(読み出し)する。
データの読み書き等でHDにアクセスする場合には、BIOSがそのアクセス位置を特定するために「INT13」というインターフェースを用いる。INT13は、シリンダ(10ビット),ヘッド(8ビット),セクタ(6ビット−1)の3つのパラメーター(計24ビット:頭文字を並べてCHSとも言う)をもって、HDの場所を指定する。ここで、セクタは0番目からではなく1番目から使用されるので、−1されている。
10ビット×8ビット×(6ビット−1) また、一般のディスクフォーマットでは1セクタ=512バイトなので、これをセクタ数に掛け算することで、INT13で扱える最大容量が計算される。
16515072× 512 =8455716864 =8.4GB これに対して、HD専用のインターフェースである「IDE」でもINT13と同じように3つのパラメーターをもってセクタの位置を確認する。シリンダ(16ビット),ヘッド(4ビット),セクタ(8ビット)である(計28ビット)。これを、先ほどと同じように計算し、セクタ数および最大容量を求めると次のような結果になる。
16ビット×4ビット×(8ビット−1)
267386880×512 =136902082560 =136GB しかし、これら3つのパラメータを利用すると、INT13とIDEのパラメータでそれぞれの限界を超えるわけにはいかず、小さいほうの値を用いなければならない。次の計算のように528MB(換算:504MB)が上限となってしまうのである。これが、HD容量の最初の限界であった。
10ビット×4ビット×(6ビット−1) ×512
そこで、この問題を解決するために策定された規格が「Enhanced−IDE(以下E−IDE)」である。 この8.4GBの限界を、後述するFATシステムの最大領域と勘違いされている方が多いので、僭越ながら忠告させていただく。
しかし、既に8.4GB以上のHDは広く出回っている。
ここから、MS−DOS3以降で対応となった「FAT」について述べていく。
余談をひとつ。クラスタサイズが32kBの場合に、1kBのファイルを1つ保存すると、そのファイルは必ず1クラスタを支配し、残りの31kBは無駄になってしまう。このようなクラスタの無駄な部分を「クラスタギャップ」と呼ぶ。クラスタギャップを小さくするには、元のクラスタサイズを小さくする以外に手立てはない。そのクラスタサイズを小さくする方法も限られており、次の2つである。 話を戻そう。32kBが最大であるクラスタサイズで、上に示したクラスタ数であれば、次のように1ドライブの最大容量が求められる。
FAT16: 65526× 32768 = 2147155968 =2047MB
つまり、1ドライブの最大は、FAT16では2GB、FAT32では8TB、ということになる。1台のHDに対して領域(パーティション)は4つまで扱うことができるので、FAT16では最大8GBまで扱うことができる(この8GBは、前節の「限界8.4GB」とは全く異なる観点であることに注意していただきたい)。
1節で述べたように、拡張INT13に対応していないパソコンでは、いくら接続を試みたところでE−IDE最大8.4GBまでしか認識せず、残りの部分は使えない。しかし、ソフトウェア的にBIOSを拡張し、8.4GBを超える大容量HDを使用できるようにするユーティリティがある。
Storage Soft社:「EZ−Drive」 それぞれ、ユーティリティソフトはインターネット等で無料で配布されている。ただし「IBM社のディスクマネージャーはIBM社のHDに対してのみ利用可能である」といったように、メーカー独自のソフトウェアとなっている。Western Degital社のショッピングページで販売されているフルパッケージ版($59.95)では、ほぼすべてのメーカーのHDに対応していると言われている(未確認)。ユーティリティの起動は英語版MS−DOSでなければならないようで、NEC PC−98(NXより前)マシンではソフトウェアは起動しないかもしれない。こちらも未確認である。 実際のソフトウェアの起動については、私に試用できる環境がないため、配布されているファイルの説明を見る、ということでここでは割愛させていただく。基本的にフロッピーディスクにファイルをコピーし、そのフロッピーディスクから起動する形となる。
|