On Wednesday, March 13, 2013 at 1:06 PM, Cory Smelosky wrote:
"Solaris timing uses a real-time clock that can generate interrupts
at a resolution bound by the processor speed. For scheduling
purposes, it fires every 10 milliseconds. As in Linux, this is a
clock "tick." Note that 2.6 Linux uses a 1000-tick/second clock, as
opposed to the 100-tick/second clock used by Solaris and by previous
versions of Linux. User-level programs on Solaris can program the real
time clock to fire at nanosecond granularity, rounded up by processor time--
much finer than the clock tick granularity of ten or one milliseconds.
However, the program interface to use the high-resolution timers is
not visible in the DDI/DKI. See clock_settime(3rt) for user-level
details andusr/src/uts/common/os/cyclic.c for details on high-resolution
timing in Solaris.
Also note that in Solaris, you can change the value of hz or clock
ticks/second by setting hires_tick to 1 and hires_hz to the desired
time in the /etc/system file. The default is
1000 ticks per second. Here's an example:
set hires_tick=1
set hires_hz=10000 <~--- 10000 ticks per second"
Looks like Solaris can set it in user mode, too.
This 'documented' tick rate would seem to meet simh's requirements
without any adjustments.
Does the current simh code work? If not, what does it think the tick size is?
I will tell you once I work around ld: fatal: auxiliary filter option (-f, --auxiliary)
is only available when building a shared object
ld: fatal: flags processing errors
;)
Are you getting this problem while building the simh vax?
You are just typing:
$ make vax
Right?
Please supply the output make produces while building.
- Mark