次のページ 前のページ 目次へ

1. 問題

例えば 1024 シリンダを超えるディスクを持っているとしましょう。 その上あなたが BIOS を使うOSを持っていると しましょう。これは問題です。なぜなら、ディスク I/O に使う INT13 BIOS 呼び出しは、I/O 動作時のシリンダ指定に 10bit のフィールドを 使います。ですから、1024 番以降のシリンダには、読み書きできない のです。

幸い、Linux は BIOS を使いませんので問題ありません。

まぁ、次の二点を除いてですが。

(1) システム起動時には、Linux はまだ稼動していませんので、BIOS 問題から逃げられません。これは、LILO 等の初期起動プログラム にとって問題になります。

(2) 複数のOSで一つのディスクを使いまわす 場合、どこにパーティションがあるのか、それぞれがしっかり知って いなければなりません。言い換えると、Linux と DOS を一つのディスク の上で使用する場合、両者は同じ方法でパーティションテーブルを 解釈しなければなりません。これは、Linux カーネルと fdisk に とって問題になります。

以下に、関連する問題の詳細を示します。なお、私はカーネルバージョン 2.0.8 を参照しています。他の版の場合は、少し違うかもしれません。


次のページ 前のページ 目次へ