Fedora 7を潰す前に幾つか実験

CentOSをインストールする前にFedora 7で幾つか実験をしてみる。と言っても、Linux(あ)とLinux(ん)の内、(あ)にはFedora 7を残して置き、(ん)にCentOS 4.4をインストールする予定。

High Precision TimerをONにしてみる

先ずは、Inspiron 1501のHigh Precision TimerをBIOS設定でONにして立ち上げてみる。問題なく立ち上がった。Fedora 7の初期のカーネルはkernel-2.6.21.1-3194、現在使っているカーネルはkernel-2.6.22.1-41なでのその間に不具合が解消されていたのだろう。(Fedora Core 6の時はHigh Precision Timerについては問題なかったので「治った」という表現が正しいのだろうか?)

ゲストOS(Fedora 7)のカーネルオプションの設定

dayflowerさん頂いたコメントを参考にいくつかKernelオプションを指定してゲストOSを立ち上げてみる。

  • clock=pit noapic nolapic

これは全く効果が無かった。ゲストOSの時計は大幅に遅れている。

  • nosmp nolapic noapic

効果あり。というか逆にゲストOSの統計の方が進むようになった。ホストOS(こちらの方は部屋にある電波時計と比べて正しい時間を指していることは確認している)に比べてゲストOSの時計は20分で1分程度進む。
また、Fedora 7の立上げ時の画面(alt-dでメッセージの出てくる画面)のカーソルの「回転」が通常の(つまりホストOSの)ものと比べて早いような気がする。
仮想マシンの設定でCPU数は1にしているのでSMPは関係ないと思っていたのだが....。では、nosmpだけでOKなのか?

  • nosmp

ゲストOSが立ち上がらない。次のようなメッセージが出てくる。

Decompressing Linux...done.
Booting the kernel.

ERROR: Unable to locate IOAPIC for GSI 8
ERROR: Unable to locate IOAPIC for GSI 1
ERROR: Unable to locate IOAPIC for GSI 12
ERROR: Unable to locate IOAPIC for GSI 7
ERROR: Unable to locate IOAPIC for GSI 4
ERROR: Unable to locate IOAPIC for GSI 3
ERROR: Unable to locate IOAPIC for GSI 6
Red Hat nash version 6.0.9 starting
ata1.00: cmd c8/00:08:00:00:00/00:00:00:00:00/e0 tag 0 cdb 0x0 data 4096 in
ata1.00: exceptionEmark 0x0 ASct 0x0 SErr 0x0 action 0x2 frozen
		:
Buffer I/O error on device sda, logical block 0

仕方ないので(仮想マシンの)電源をOFF。

  • nosmp noapic

このオプションの組み合せではブートは正常に行なわれる。1時間ほどブート直後にログインした状態で放置し、時間を計測した。ブート75分経過したところ、ゲストOSの時計は40分しか進んでいなかった。オプションを何もつけない場合に比べるとかなりの改善ではあるが....。

  • nosmp nolapic

この組み合せでもブートは正常である。ブート後75分の経過したところで、ゲストOSは10分遅れ(65分経過)となっていた。

  • もう一度、nosmp nolapic noapic

ありがちなことだが....、今回はゲストが遅れた。30分動かして7分遅れた。先程の環境と殆ど(というかオプション以外には何も)変えてないのだが....。