まとめ ブログ ダウンロード 掲示板 メール

れぶろぐ

< 2006-07-30 (日) 2006-08-03 (木) > 最新


2006-07-31 (月)

玄箱の時計の精度を改善する

玄箱の時計はかなり不正確で、下手すると1日に10分くらいずれたりする。 こんなにも不正確なのは、以下の2つが原因らしい。

  • クロックの周波数が設計値から約 0.75% ずれている
  • カーネルで変な補正処理をしていて、起動するごとにクロックの周波数が変動する

これを直すためには adjtimex というコマンドを使うのだが、 以前のメモを見ながらその作業をしようとして、ふと手が止まった。 そういえば、 Genbako kernel collection さんが配布しているカーネルは、 この件に関する修正パッチが適用されていたような気が。 ということで、起動時のログを見て確認。

kuro-box:~# dmesg | grep "decrementer frequency"
decrementer frequency = 32.522240 MHz

やっぱりそうだ。周波数が 32.522240 MHz に固定されている。 それなら別に adjtimex コマンドを使わなくても、 時計は十分に正確になっているのでは? そう思い、1時間で時計がどのくらいずれるか計測してみた。

kuro-box:~# ntpdate -b ntp1.jst.mfeed.ad.jp; sleep 3600; ntpdate -b ntp1.jst.mfeed.ad.jp
31 Jul 21:48:38 ntpdate[981]: step time server 210.173.160.27 offset -0.019737 sec
31 Jul 22:48:39 ntpdate[995]: step time server 210.173.160.27 offset 0.057847 sec

1時間で 0.057847 秒のズレということは、24 時間でのズレは 1.4 秒くらい。 カーネルの入れ替え をするだけで時計がこんなに正確になるのか。すごいな。

Tags: 玄箱 | このエントリを含む del.icio.us | このエントリを含むはてなブックマーク | このエントリを含む livedoor クリップ | Permalink
本日のリンク元

編集