1130b656e5
This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
144 lines
3.3 KiB
Groff
144 lines
3.3 KiB
Groff
''' $FreeBSD$
|
|
'''
|
|
.de Sh
|
|
.br
|
|
.ne 5
|
|
.PP
|
|
\fB\\$1\fR
|
|
.PP
|
|
..
|
|
.de Sp
|
|
.if t .sp .5v
|
|
.if n .sp
|
|
..
|
|
.de Ip
|
|
.br
|
|
.ie \\n.$>=3 .ne \\$3
|
|
.el .ne 3
|
|
.IP "\\$1" \\$2
|
|
..
|
|
'''
|
|
''' Set up \*(-- to give an unbreakable dash;
|
|
''' string Tr holds user defined translation string.
|
|
''' Greek uppercase omega is used as a dummy character.
|
|
'''
|
|
.tr \(*W-|\(bv\*(Tr
|
|
.ie n \{\
|
|
.ds -- \(*W-
|
|
.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
|
.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
|
.ds L" ""
|
|
.ds R" ""
|
|
.ds L' '
|
|
.ds R' '
|
|
'br\}
|
|
.el\{\
|
|
.ds -- \(em\|
|
|
.tr \*(Tr
|
|
.ds L" ``
|
|
.ds R" ''
|
|
.ds L' `
|
|
.ds R' '
|
|
'br\}
|
|
.TH TICKADJ 8 LOCAL
|
|
.SH NAME
|
|
tickadj - fiddle time\-related variables in the kernel
|
|
.SH SYNOPSIS
|
|
.B tickadj
|
|
[
|
|
.B -Aqs
|
|
] [
|
|
.B -a
|
|
.I new_tickadj
|
|
] [
|
|
.B -t
|
|
.I new_tick
|
|
]
|
|
.SH DESCRIPTION
|
|
The
|
|
.I tickadj
|
|
program reads, and optionally modifies, several time\-keeping\-related
|
|
variables in the running kernel, via
|
|
.IR /dev/kmem .
|
|
The particular variables it is concerned with are
|
|
.IR tick ,
|
|
which is the number of microseconds added to the system time during a
|
|
clock interrupt,
|
|
.IR tickadj ,
|
|
which sets the slew rate and resolution used by the
|
|
.IR adjtime (2)
|
|
system call, and
|
|
.IR dosynctodr ,
|
|
which indicates to the kernels on some machines whether they should internally
|
|
adjust the system clock to keep it in line with time\-of\-day clock
|
|
or not.
|
|
.PP
|
|
By default, with no arguments,
|
|
.I tickadj
|
|
reads the variables of interest in the kernel and prints them. At the
|
|
same time it determines an \*(L"optimal\*(R" value for the value of the
|
|
.I tickadj
|
|
variable if the intent is to run the
|
|
.IR xntpd (8)
|
|
Network Time Protocol daemon, and prints this as well. Since the operation
|
|
of
|
|
.I tickadj
|
|
when reading the kernel mimics the operation of similar parts of the
|
|
.IR xntpd (8)
|
|
program fairly closely, this is useful for doing debugging of problems
|
|
with
|
|
.IR xntpd (8).
|
|
.PP
|
|
Various flags may be specified to change the variables of interest in
|
|
the running kernel. The
|
|
.B -a
|
|
flag allows one to set the variable
|
|
.I tickadj
|
|
to the value specified as an argument. The
|
|
.B -A
|
|
flag will also cause
|
|
.I tickadj
|
|
to be modified, but instead will set it to the internally computed
|
|
\*(L"optimal\*(R" value. The
|
|
.B -t
|
|
flag may be used to reset the kernel's value of
|
|
.IR tick ,
|
|
a capability which is useful on machines with very broken clocks. The
|
|
.B -s
|
|
flag tells the program to set the value of the variable
|
|
.I dosynctodr
|
|
to zero, a prerequisite for running the
|
|
.IR xntpd (8)
|
|
daemon under SunOS 4.0. Normally
|
|
.I tickadj
|
|
is quite verbose about what it is doing. The
|
|
.B -q
|
|
flag tells it to shut up about everything except errors.
|
|
.PP
|
|
Note that
|
|
.I tickadj
|
|
should be run with some caution when being used for the first time on
|
|
different types of machines. The operations which
|
|
.I tickadj
|
|
trys to perform are not guaranteed to work on all Unix machines.
|
|
.SH FILES
|
|
.nf
|
|
/vmunix
|
|
/unix
|
|
/dev/kmem
|
|
.fi
|
|
.SH SEE ALSO
|
|
xntpd(8)
|
|
.SH HISTORY
|
|
Written by Dennis Ferguson at the University of Toronto
|
|
.SH BUGS
|
|
Fiddling with kernel variables at run time as a part of ordinary
|
|
operations is a hideous practice which is only necessary to make
|
|
up for deficiencies in the implementation of
|
|
.IR adjtime (8)
|
|
in many kernels and/or brokenness of the system clock in some
|
|
vendors' kernels. It would be much better if the kernels were fixed
|
|
and the
|
|
.I tickadj
|
|
program went away.
|