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

[plamo:03992] Re: 1024シリンダー以上のパーティション分割



> fdiskで、大容量HDのパーティションの分割をしようとしましたが、
> 1024シリンダーまでしか認識しませでした。
> 1024シリンダー以上を認識させて、
> 分割するにはどうすればよいでしょうか?

> PC−98NX  IDE  HD  12GB

なんだか12GBまでいっちゃってますね…。
ちゃんと切れるソフトを選ぶのなら、Windows98とかのfdiskで分割してしまうとか、
全域WindowsでフォーマットしておいてFAT32xに対応したFIPSで切るとか…。
このあたりしか思い付きません。

E−IDEの限度を超える8GB超のHDDはLBA(リニアブロックアクセス)
方式でないと全域扱えないという話ですね。

> JFのドキュメントをさらっと見たところ、
> BIOSから起動するには、カーネルを1024シリンダー内に
> 置かなければならないらしいですね。
> INT 10割り込みによる認識が10ビットまでしかないからですね。
> あとは、DOSからLOADLINによる起動でしょうね。

DISKBIOSのサービスルーチンはINT13だったと思います。
おっしゃる通り、1024シリンダを超えるとBIOSからは扱えません。
MSが提唱する拡張INT13呼び出しならいけたかもしれませんけど、
このBIOSの機能にまだliloのほうが対応してなかったと思います。

Linuxはカーネルが起動してさえくれればいろいろできますので、
パーティションの切り方を工夫して、ルートファイルシステム(100MBぐらい)を
先頭から8GB以内に納めるほうが結果として無難だとは思います。

> 分割方法は探せなかったです。

Linuのfdiskで切れないのなら、とりあえず切れるとわかっているソフトで
切ってしまうのはどうでしょうか。後でfdiskを使ってパーティションIDを
変更してしまえば、もしかするとうまくいくかもしれません。

#僕のとこは一番デカいのが6GBなんで、まだこの制限にはひっかかってないな…。

いちお、man fdiskしてみると、こんなことが書いてあるんですけどねぇ。

       DOS  形 式のパーティションテーブルでは、それぞれのパーティ
       ションのスタートオフセットとサイズは、 2 種類の方法で保 存
       さ れる。一つはセクタの絶対数 (32 ビット) であり、もう一つ
       は「シリンダ数/ヘッド数/セクタ数 (C/H/S)」の三つの組み合わ
       せ である (それぞれ 10, 8, 6 ビット)。前者には問題は特にな
       く、 512 バイトのセクタで 2 TB を扱うことができる。後者 に
       は 二種類の問題がある。まず第一に、この C/H/S を与えるため
       には、ヘッド数とトラックあたりのセクタ数を知っていなければ
       ならない。第二に、これらの数値がわかったとしても、 24 ビッ
       トでは足りないかもしれない。 DOS は C/H/S だけを用 い る。
       Windows は両方を用いる。 Linux では C/H/S は使わない。
                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       可 能な場合は fdisk はディスクのジオメトリを自動的に取得す
       る。これはディスクの物理的なジオメトリであるとは限ら な い
		:
		:

       Linux しか置かないディスクなら、通常はデフォルトで問題なく
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       すべてうまくいく。しかし他の OS とディスクを共有しなければ
       ~~~~~~~~~~~~~~~~~
       ならない場合には、まず他の OS 上で、その OS 付属 の  fdisk
       を先に実行し、少なくとも一つのパーティションを作っておくと
       良い場合が多い。 Linux は、他の OS とうまく付き合 う た め
       に、ブート時にパーティションテーブルを参照し、どんなジオメ
       トリが要求されているのかを判断・決定しようとする (要求され
       ているジオメトリは、物理的なものとは異なっているかもしれな
       いから)。

24ビットのCHSジオメトリじゃ12GBものディスクを分割するのは
ダメらしいけど、「fdisk ーu」でシリンダ単位の表示をやめてセクタ単位の表示に
切替えてもやっぱりダメでしょうか?

References
[plamo:03988] 1024シリンダー以上のパーティション分割, Yasuhide Yano

[検索ページ] [メール一覧]
Plamo ML 公開システム