質問: 8.4gbの壁 その2 biosが古くて8.4gb以上のhddに対応してない場合、それ以上の容量のhddを増設 するのは不可能なんでしょうか? scsi接続なら大丈夫との話(信憑性低)を聞きましたが、本当でしょうか? scsiとideの2通りあるようですが、そもそもの違いがよくわかっていません。 速度などの使い勝手はどう違うのでしょうか? #質問内容が細かくなったので、スレッドを2つに分けました。
回答: ata(ide)はセクタへのアクセス方式がchs(シリンダ、ヘッド、セクタ)の各番号を指定してアクセスする方式をとっています。初期のideではideの規格chs(65536,16,256)とbiosの規格chs(1024,255,63)の二つの制限を受けてchs(1024,16,63)の領域(1024x16x63x512(1セクタの容量)=528mb)までしかアクセスできませんでした。 e-ideではbiosのパラメータをe-ideのものに変換する機能を持ち、biosの制限いっぱいのchs(1024,255,63)までの領域(8.4gb)にアクセスできるようになりました。たまに2gbを超えると動かなくなるものがありますが、この場合osが2.1gbを超える領域にアクセスするとbiosがhddに折り返したアドレスを与えてしまい、データが壊れるようです。biosのパラメータの桁数が少ないのでしょうか。 この制限を突破するため int 13h(特別なサブルーチンだそうです)の機能を拡張し、biosが32bitのリニアなアドレスでchsを与えることができるようになりました。これをlba(logical block addressing)といい、e-ideでは28bitのlbaを採用していて、chsの値を使わなくても内部でどのセクタに書き込むかを変換するようになっています。よって、拡張int13h対応のbiosを使った場合、最大容量は137gbになります。int13hの詳しい説明は、他の人の登場を待ちましょう。 さて、scsiのドライブですが、scsiではataのbiosを使ったサービスはしていないこと(scsi biosが転送や調停などを行う)、それと、はじめからlbaを用いたアドレッシングを行っていたため、ataのような制限はないようです。また前者の理由で、cpuへの負担がかなり小さくなっています。 以上、参考資料を丸写ししたようなものなので、これを見るとよく分かると思います。