FreeDOS Tech Note 001 - 15 April 1998
FreeDOS が大容量ドライブ (High Capacity Drives) で作動するか?


このインフォメーションは DOS-C カーネル著者 Pat Villani によって FreeDOS メーリングリストへポストされたものからである。 公式に LBA はこれが間もなく出て来るであろうということである、しかし FAT-32 は現在進行中の作業ではない。

M "Hannibal" Toal - 15 April 1998



Subject: Re: How well does FreeDOS work with high capacity drives?
Date: Tue, 14 Apr 1998 06:25:50 -0400
From: Pat Villani <patv@iop.com>

Morgan Toal が書いた:


やあ、こんにちは Nils 遅い答えをすまなく思う。

Nils Turner が手紙を書いた:

大きい ( 6GB ) ハードドライブを持っている Pentium II マシン。 MS-DOS 6.22 は論理ブロックをアドレスすること ( LBA ) を論ずることができないので、含まれる FDISK はメディアを扱うことができない。 FreeDOS がこの問題を扱ったか?

不幸にも、いいえ 私はカーネル著者がごく近い未来にこのようなサポートを予期して計画を立てるかどうかはっきりしない。

Pat 、ここで予後診断は何であるか? 私はこれが何を巻き込むであろうか知らない、しかし多くの皆さんがこのような特徴について知りたがっている

hannibal

ただ、近い将来 LBA サポートがあるであろう。 しかしながら、私が公式のリリース後にある FAT32 を得るまで、あなたはまだ FAT16 のために 2 あるいは 4GB のパーティションが限界とするのを見るであろう − もちろん 4GB は 64K クラスターサイズを意味するであろう :-(

Pat



Subject: DOS limits
Date: Sun, 08 Feb 1998 09:13:39 -0500
From: Pat Villani <patv@iop.com>
 
これはよく質問されると思われるので私はここでそれに言及するであろう。

ディスク・ドライブの話になると DOS 世界に 2 つの限界がある。 10 ビットのシリンダーあるいは 1024 のシリンダーの数に限界がある。 bios の最大値 63 セクタと 16 ヘッドによって 1032192 セクタ あるいは 528482304 バイト ( あるいは 504MBytes ) である。 私は若干の幾分異なる発表された数を見た。しかしこれらは限界によって計算されていることが int 13h bios フィールドによったものである。 通常、計算をしている人はセクタがゼロではなく 1 で始まり、そして限界が 2**6-1 あるいは 63 のセクタであり、64 ないという事実を怠る。

これが意味することはもっと古い BIOS 仕様書に書き込まれるどんなディスクドライバでも 504 MBytes のドライブに限定されているということである。 それは同じく古い bios を使用するどんなもっと古いシステムでも同じく同じ 504 MBytes に限定されていることを意味する。

2 の使われていないビットを使うことによってシリンダーの数を 4096 に延長するエクステンド CHS 方式がある。 これは 16515072 セクタあるいは 8455716864 バイト ( 7.88 GBytes ) に限界を増やす。 もっと新しい bios バージョンと OnTrack のようなディスクベンダーエクステンションソフトウェアがこの解決を提供する。 これは通常ディスクベンダーがシステムとともにフロッピーを出荷した時あなたが手に入れたものである。 それは、ハードディスクが初めに起動する時、それが ram にエクステンションをロードするように、ハードディスクに bios へのエクステンションをロードした。

長いブロックをアドレスすることあるいは LBA が 32 ビットのオペレーティングシステムによって使われる現在の解決である。 これは 32 ビットのディスクアドレスを使う、そしてそれぞれのセクタが、計算からドライブジオメトリを排除して、連続的なセクタとしてアドレスされる。 この言及する方法はディスク・ドライブサイズを 4294967296 のセクタあるいは 219902325552 バイト ( 2048 GBytes ) に制限する。

2 番目の限界は FAT16 である。 FAT16 の最大のクラスターサイズが 32768 バイトを指定する。 最大のクラスター数 65520 と一緒にされる時、これは 2146959360 バイト (1.99GB) の最大のパーティションサイズをもたらす。

ノート:私のすべてのディスク容量は、私が 10**9 (1000000000) ではなく 2**30 (1073741824) で割ることによって本当のギガバイトサイズを計算するから、ディスク製造業者の大きさより小さい。

どこでこれは FreeDOS と DOS-C を去るか? 現在のデバイス・ドライバが、現在のディスク容量を 504 MBytes に制限して、古い int 13h 仕様で作動するよう意図される。 ベータ2が新しいドライバを紹介する、そして私はドライバに拡張された CHS を加えて、 FreeDOS / DOS-C サポートを 7.88 GBytes に延長しているであろう。 あなたは FAT-16 のために 1.99 Gbyte のパーティションに限定されるであろう。

私は LBA サポートを調査するであろう、しかし私はベータ2のためにそれを約束しないであろう。

Pat

PS − ただ私が今その作業を扱わないだろう、だから DOS-C v1.0 で FAT-32 を求めてはいけない


98.06.14 翻訳 M.Hakosima
98.06.24 修正 M.Hakosima