1181834SrobertoHP e3000 MPE/iX NTP Hints - May 29, 2001
2181834Sroberto----------------------------------------
3181834Sroberto
4181834SrobertoNTP was first ported to MPE several years ago, but those diffs were never
5181834Srobertosubmitted back to the official NTP distribution.  For more information about
6181834Srobertothat deprecated port, please see http://www.bixby.org/mark/xntpix.html.
7181834Sroberto
8181834SrobertoNTP was re-ported to MPE in May 2001.  What follows are hints learned from
9181834Srobertoworking with NTP 4.0.99k23.  For additional information about NTP on MPE,
10181834Srobertoplease see http://jazz.external.hp.com/src/hp_freeware/ntp/.
11181834Sroberto
12181834SrobertoMPE lacks the clock-related APIs expected by NTP, so adjtime(), gettimeofday(),
13181834Srobertoand settimeofday() all had to be implemented from scratch by calling
14181834Srobertoprivileged, undocumented internal OS functions.
15181834Sroberto
16181834SrobertoUnfortunately the implementation of adjtime() has exposed a sub-second accuracy
17181834Srobertobug when slewing the system time.  This bug is documented in SR 5003462838, and
18181834Srobertoexists on all current versions of MPE.  It has not been fixed at the time of
19181834Srobertothis writing.  The adjtime() code may possibly need to be altered if/when this
20181834Srobertobug is fixed.
21181834Sroberto
22181834SrobertoThis bug has a side-effect whereby the ntpd daemon will screw up the hardware
23181834SrobertoPDC clock time by many minutes if used for continuous clock adjustments or in
24181834Srobertothe one-time -q mode.  But note that you can safely run ntpd in order to become
25181834Srobertoa time server if you include "disable ntp" in the ntp.conf configuration file.
26181834Sroberto
27181834SrobertoThe one-time clock adjustment functionality of ntpdate and ntp_timeset is not
28181834Srobertoaffected by this bug side-effect.  You can safely use these commands to alter
29181834Srobertoyour system time with reasonable accuracy.
30181834Sroberto
31181834SrobertoThe only reference clock that has been tested on MPE is the local clock.  So
32181834Srobertobuilding NTP with --disable-all-clocks --enable-LOCAL_CLOCK is strongly
33181834Srobertorecommended.
34181834Sroberto
35181834SrobertoNTP makes use of Privileged Mode (PM) capability in order to bind to the NTP
36181834Srobertonetwork port (123) and to access the low-level clock functions.
37181834Sroberto
38181834SrobertoNTP was ported using the gcc compiler.  Attempting to use the HP C/iX compiler
39181834Srobertois not recommended and has not been tested.
40181834Sroberto
41181834SrobertoPlease note that NTP is not an HP product and is NOT supported by HP.  The best
42181834Srobertoplace for asking MPE-specific questions about NTP is the HP3000-L mailing list
43181834Srobertoat http://raven.utc.edu/Archives/hp3000-l.html or the associated Usenet
44181834Srobertonewsgroup of comp.sys.hp.mpe.
45181834Sroberto
46181834SrobertoThe original author of this port is:
47181834Sroberto
48181834SrobertoMark Bixby
49181834SrobertoHP CSY MPE Internet & Interoperability Engineer
50181834Srobertomark_bixby@hp.com
51