1*2b15cb3dSCy SchubertHP e3000 MPE/iX NTP Hints - May 29, 2001 2*2b15cb3dSCy Schubert---------------------------------------- 3*2b15cb3dSCy Schubert 4*2b15cb3dSCy SchubertNTP was first ported to MPE several years ago, but those diffs were never 5*2b15cb3dSCy Schubertsubmitted back to the official NTP distribution. For more information about 6*2b15cb3dSCy Schubertthat deprecated port, please see http://www.bixby.org/mark/xntpix.html. 7*2b15cb3dSCy Schubert 8*2b15cb3dSCy SchubertNTP was re-ported to MPE in May 2001. What follows are hints learned from 9*2b15cb3dSCy Schubertworking with NTP 4.0.99k23. For additional information about NTP on MPE, 10*2b15cb3dSCy Schubertplease see http://jazz.external.hp.com/src/hp_freeware/ntp/. 11*2b15cb3dSCy Schubert 12*2b15cb3dSCy SchubertMPE lacks the clock-related APIs expected by NTP, so adjtime(), gettimeofday(), 13*2b15cb3dSCy Schubertand settimeofday() all had to be implemented from scratch by calling 14*2b15cb3dSCy Schubertprivileged, undocumented internal OS functions. 15*2b15cb3dSCy Schubert 16*2b15cb3dSCy SchubertUnfortunately the implementation of adjtime() has exposed a sub-second accuracy 17*2b15cb3dSCy Schubertbug when slewing the system time. This bug is documented in SR 5003462838, and 18*2b15cb3dSCy Schubertexists on all current versions of MPE. It has not been fixed at the time of 19*2b15cb3dSCy Schubertthis writing. The adjtime() code may possibly need to be altered if/when this 20*2b15cb3dSCy Schubertbug is fixed. 21*2b15cb3dSCy Schubert 22*2b15cb3dSCy SchubertThis bug has a side-effect whereby the ntpd daemon will screw up the hardware 23*2b15cb3dSCy SchubertPDC clock time by many minutes if used for continuous clock adjustments or in 24*2b15cb3dSCy Schubertthe one-time -q mode. But note that you can safely run ntpd in order to become 25*2b15cb3dSCy Schuberta time server if you include "disable ntp" in the ntp.conf configuration file. 26*2b15cb3dSCy Schubert 27*2b15cb3dSCy SchubertThe one-time clock adjustment functionality of ntpdate and ntp_timeset is not 28*2b15cb3dSCy Schubertaffected by this bug side-effect. You can safely use these commands to alter 29*2b15cb3dSCy Schubertyour system time with reasonable accuracy. 30*2b15cb3dSCy Schubert 31*2b15cb3dSCy SchubertThe only reference clock that has been tested on MPE is the local clock. So 32*2b15cb3dSCy Schubertbuilding NTP with --disable-all-clocks --enable-LOCAL_CLOCK is strongly 33*2b15cb3dSCy Schubertrecommended. 34*2b15cb3dSCy Schubert 35*2b15cb3dSCy SchubertNTP makes use of Privileged Mode (PM) capability in order to bind to the NTP 36*2b15cb3dSCy Schubertnetwork port (123) and to access the low-level clock functions. 37*2b15cb3dSCy Schubert 38*2b15cb3dSCy SchubertNTP was ported using the gcc compiler. Attempting to use the HP C/iX compiler 39*2b15cb3dSCy Schubertis not recommended and has not been tested. 40*2b15cb3dSCy Schubert 41*2b15cb3dSCy SchubertPlease note that NTP is not an HP product and is NOT supported by HP. The best 42*2b15cb3dSCy Schubertplace for asking MPE-specific questions about NTP is the HP3000-L mailing list 43*2b15cb3dSCy Schubertat http://raven.utc.edu/Archives/hp3000-l.html or the associated Usenet 44*2b15cb3dSCy Schubertnewsgroup of comp.sys.hp.mpe. 45*2b15cb3dSCy Schubert 46*2b15cb3dSCy SchubertThe original author of this port is: 47*2b15cb3dSCy Schubert 48*2b15cb3dSCy SchubertMark Bixby 49*2b15cb3dSCy SchubertHP CSY MPE Internet & Interoperability Engineer 50*2b15cb3dSCy Schubertmark_bixby@hp.com 51