Problems with OS9 alarms

Problems with OS9 alarms

Post by jon946 » Wed, 30 May 2007 20:14:20

I am using OS9 v2.4, and over the years have been using alarms. I am
using alm_cycle to give a repeated alarm every 10s, this works fine
for many hours, but then I have proven that the alarm can stop coming
in for upto a minute, and then start off again as if nothing has

Initially, I thought the problem must be in my application, but have
now written a simple 'idle' task that runs at priority '1', and never
sleeps. In the 'idle' task infinite loop, I check DTicks every time
round the loop, and print out the time every 1000 ticks, and also I
have a 10s alarm that prints out time, I have shown that the alarm
technique pauses, while the polling technique continues to run.

The curious thing is that the system picks up automatically, as if
nothing happened.

The application is made up of 12 processes, it does not use minpty, or
maxage. The highest priority task on the system is running at a
prioriry of 132.

Has anyone experienced anything like this, or have advise on how to
investigate further?

Problems with OS9 alarms

Post by Allan R. B » Wed, 30 May 2007 22:58:41

This problem was finally fixed about Kernel 372 or 375. There is a 64K
rollover problem with alarms. When there are 64K ticks left in the day,
the alarms / Context switching etc stop for 1 second.

Allan R. Batteiger


Problems with OS9 alarms

Post by jon946 » Wed, 30 May 2007 23:14:35

Interesting I am using kernel edition #125. I'm not sure this is the
source of my problems though, as the fault seems to happen eratically,
and does not seem to be corelated to any particular time of day.
Sometimes I get 4 or 5 occurences within a couple of hours of each
other, but sometimes it can run for days without a problem. Also, the
fault seems to take out context switching for far longer than 1s - I
have known this fault cause more than 60s loss of context switching.