Linux システムには、メモリに関連した古くからの問題がいくつかあります。 1) 16MB 以上のメモリを正しく扱うことができないバグを持った マザーボードがあります。お使いのマザーボードを交換する ことを検討してください。 2) ISA バス上では、16M 以上のアドレス空間に DMA (Direct Memory Access) を割り当てることができません。Linux の デバイスドライバのほとんどは、この問題を回避するために バウンスバッファを使用できるようにしています。16M 以上 インストールされていると、バウンスバッファを使用しない ドライバは不安定になります。バウンスバッファを使用する ドライバは正常に動作しますが、ややオーバーヘッドがある でしょう。 3) 一定のメモリ量を越えるとキャッシュしないマザーボードも あります。このようなマザーボードをお使いの場合、その システムは、メモリを追加するほど速くはなるのではなく、 「遅く」なってしまいます。お使いのマザーボードを交換 することを検討してください。 これらの問題は全て、"mem=XXXM" というブートオプションで対応できます (XXX には、使用する RAM サイズをメガバイト単位で指定します)。実際に インストールされている量よりも少ないメモリしか使わないように Linux に 指示することもできます。 カーネルにオプションを渡す方法については、お使いのブートローダ (LILO や loadlin など) の文書を参照してください。 メモリに関しては、 Linux ではうまく処理できない問題が他にもあります。 メモリがランダムに破壊される現象は、通常は重大なハードウェアトラブル の兆候です。次のことを試してください。 * BIOS のメモリ設定を、最も保守的なタイミングに引き下げる。 * 冷却ファンを追加する。 * CPU をオーバークロックしない。 * メモリテスターでテストされたメモリ、もしくはベンダーに 交換してもらったメモリを使う。memtest86 を用いて自分で テストすることを検討してください。 * CPU 、キャッシュ、あるいはマザーボードを、動作するものと 交換する。 * BIOS からキャッシュを無効にする。 * "mem=4M" というオプションをカーネルに渡して、Linux が 使うメモリを非常に少量に制限してみる。 その他の対処方法 * バグのある FPU を無視するよう、カーネルに "no-387" オプションを渡してみる。 * お使いの CPU でバグの可能性のある HLT 命令を無効にする ため、"no-hlt" オプションを渡してみる。 ------------------------------------------------------------ 翻訳団体: JF プロジェクト < http://www.linux.or.jp/JF/ > 最終更新日: 2004/04/11 翻訳者: 中谷 千絵 <jeanne(a)mbox.kyoto-inet.or.jp> 更新者: 川崎 貴彦 <takahiko(a)hakubi.co.jp>