TICKADJ(8) — NEWS-OS Programmer’s Manual
名称
tickadj − 時間操作 −カーネル内の変数に関連する
形式
tickadj [ −Aqs ] [ −a new_tickadj ] [ −t new_tick ]
解説
tickadj /dev/kmem を介して、 tickadj は実行中のカーネル内の計時に関連する変数を読み、 また、変更します。 関連する特有の変数は、まず tick で、これはクロック割り込み中に システム時間に加えられたマイクロ秒数です。また、 tickadj は、 adjtime(2) のシステム呼び出しに使われる回転速度と分解能を設定します。 そして、 dosynctodr は、複数の装置上のカーネルに、 システムクロックを時刻クロックと一致するように、 内部で調整すべきかどうか指示します。
デフォルトでは、引数は伴わずに tickadj はカーネルに関連する変数を読み、それを出力します。 同時に、 xntpd(8) のネットワークタイムプロトコルデーモンを実行する場合、 tickadj の変数に “最適な” 値を決定し、 同様に出力します。 カーネルを読む際の tickadj の動作は、 xntpd(8) プログラムの類似部分の動作をかなりそっくりに模倣しますので、 xntpd(8) でプログラムのデバッギングをするときに役立ちます。
実行中のカーネルに関連した変数を変えるために、 様々なフラグを指定することができます。 −a フラグは、引数として指定された値に変数 tickadj を設定できるようにします。 −A フラグはまた、 tickadj を変更できるようにしますが、 代わりに、内部で計算された “最適な” 値にそれを設定します。 −t フラグは、 tick のカーネルを値をリセットするのに使うことができ、 これはひどく異常のあるクロックを持つ装置に有効な機能です。 −s フラグは、プログラムに、変数 dosynctodr 値をゼロに設定するように指示します。 ゼロは、SunOS 4.0.下で xntpd(8) デーモンを実行するための前提条件です。通常、 tickadj は動作においてかなり言葉数が多いので、 −q フラグがエラーを除く全てに関して表示させないように指示します。
tickadj を機種の異なった装置で初めて使用する場合は、 実行にいくつかの注意が必要です。 tickadj が実行しようとする操作が、 全ての UNIX マシンで動作する保証はありません。
関連ファイル
/vmunix
/unix
/dev/kmem
関連事項
歴史
トロント大学 デニス ファーガスン著
バグ
通常の操作の一部として、実行時にカーネルの変数を扱う場合、 実行はかなり大変です。 これは、多くのカーネルでの adjtime(8) の実現における欠陥および、 またはいくつかのメーカのカーネルでのシステムクロックの故障を 埋め合せる場合にのみ必要なものです。 カーネルを修理すれば、 tickadj プログラムは失われてしまいますが、 そのほうが余程、容易です。
NEWS-OSRelease 4.2.1R