Question for 3b4000 gurus...

Andy S Poling andy at jhunix.HCF.JHU.EDU
Wed Feb 6 07:24:23 AEST 1991


I'm attempting to impliment NTP on our 3b4000 and I'm having some trouble
figuring out how to twiddle the clock in teeny weeny little incriments.  The
ntpd sources for BSD-based systems use adjtime() which essentially changes
the ticks required to make one second up and down - essentially minutely
slowing or speeding up the clock.

Needless to say, we have no adjtime() call (that I know of).  What I have
found are some interesting kernel symbols and an interesting ABUS ioctl.
The kernel symbols are 

	lticks		varies between 99 and 100 (indicating to me that
				something is already wiggling it)
	ticspersec	value is 100
	one_sec		counts from 0 to 100, apparently for each second

The ABUS ioctl is C_EPOCH which TFM says "toggles the epoch bit so that the
system time can be set backwards".  Isn't that a lucid explanation?

Since AT&T has refused us kernel source, I can only guess at what the above
kernel symbols really are.  Since the available ntpd sources are designed to
fudge the clock in very little pieces (like a couple ms) at a time, I find
twiddling a value in the kernel a more attractive option.  Otherwise I'll
have to extensively modify the ntpd sources to intentionally make them less
accurate (a shame, really) and do repeated stime()s to slowly approach the
correct time.

I'm also assuming that the clock on the MP is the one that matters and that
I would only have to twiddle values in the MP's kernel.  Stupid
assumption?

Any suggestions or ideas?  Anybody done this before/already?  I would
appreciate any help at all.

-Andy
--
Andy Poling                              Internet: andy at gollum.hcf.jhu.edu
UNIX Systems Programmer                  Bitnet: ANDY at JHUNIX
Homewood Academic Computing              Voice: (301)338-8096    
Johns Hopkins University                 UUCP: uunet!mimsy!aplcen!jhunix!andy



More information about the Comp.sys.att mailing list