[Simh] idle on VMS and Windows
Marc Chametzky
marc at bluevine.net
Wed Jun 11 01:00:02 EDT 2008
Out of curiosity, I looked into why I wasn't getting idle functionality
to work on my VAX running on Solaris.
My first issue was that the gcc optimizer appears to have been messing
up the code in sim_idle(). When I removed "-O", the calculations worked
right, but idle still wasn't working.
If I'm reading the code right, it looks as though it's a limitation of
SIMH on Solaris. In vax_stddev.c, clk_tps is set to 100 (ticks/sec),
which means 10 ms per tick. Unfortunately, the granularity of
nanosleep() (as determined by clock_getres()) is also 10 ms, which means
that it can't idle because the granularity isn't small enough to wait
for the next VAX clock tick.
Does this make sense?
--Marc
More information about the Simh
mailing list