[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:19190] Re: replacement of HDD



佐野@浜松です。

In article <19991126110846Q.kimi@xxxxxxxxxxxxxxxxxxx>
 KIMISHIMA Tatsuya <kimi@xxxxxxxxxxxxxxxxxxx> さん writes:

>  別のメールで大容量HDDでの動作確認をしてほしいとかいう話題は
> ありませんでしたっけ?

はい、あります :)

>  一般的に IDE の HDD には 512MB 2GB 8GB 32GB の「壁」がある
> わけでして、どの壁が問題なのかなと思った次第です。

問題は BIOS による制限 (1023cyl) です。なのでもともとは 504MB の
壁に該当しますが、最近だと通常はジオメトリ変換してるので 8GB の
ほうが一般的ですね。2GB の壁は 2048cyl でしたっけ ? 

32GB はカーネル内のシリンダ変数領域が unsigned short だった
ことによる 65535 Cyl の制限なので、ブートローダの制限とは
あんまり関係ないと思います。

ブートローダの場合は、BIOS の INT13 02H による

        CH = low eight bits of cylinder number
        CL = sector number 1-63 (bits 0-5)
             high two bits of cylinder (bits 6-7, hard disk only)
        DH = head number
        DL = drive number (bit 7 set for hard disk)

でアクセスするか、あるいは INT13 42H による

 08h    QWORD   starting absolute block number
                (for non-LBA devices, compute as
                  (Cylinder*NumHeads + SelectedHead) * SectorPerTrack +
                  SelectedSector - 1

でアクセスするか、のどちらかになると思うので、(つい最近、BIOS の
コールをまったく使わない IDE 用のブートローダが発表されてましたけど)
「1023Cyl の壁」を超えるか超えないか、のどちらかになると思います。

 504MB, 2048MB, 8GB という「壁」の違いは、ブートローダのコードではなくて
 BIOS の実装による違いですね (と、思う)。

ということで、extipl-boot の /usr/share/doc/extipl-boot/lbafdsim.b.gz を
展開して fd に dd して、HD 上の 1023cyl 超領域にあるセクターを lbafdsim の
フロッピーからロードできるかどうか、を報告してもらえると嬉しいです。
まだ私自身では実際に動作検証したことは無いので。

なお、このような領域にある Linux を起動するには LILO の ver 22 以降か、
あるいは GRUB (0.5.92 以降とか) が必要になると思います。

では、よろしく。

-- 
     # (わたしのおうちは浜松市、「夜のお菓子」で有名さ。)
    <xlj06203@xxxxxxxxxxx> : Taketoshi Sano (佐野 武俊)