[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: [rtl] Newbie Stuff
On Wed, 13 May 1998, Theo ten Brummelaar wrote:
> My problem is, we will have many independent CPUs running various RT
> processes, and they all need to be synced together somehow. Using the
> simple scheduler that comes with RT-Linux is no good as it does not
> use an external clock signal. My plan right now is to use some
> simple electronics and the printer ports on the the machines to get
> an external interrupt into all the machines, based of course on the
> same clock signal. Rather than write my own scheduler is it stupid to
> think I can modify the standard one to use an external interrupt
> instead of the internal clock? Is there a more obvious way of doing
> this?
I think you have confused some concepts. The standard scheduler supports
both periodic or interrupt driven tasks. Periodic tasks are run by the
scheduler. An interrupt driven task consists of a handler that wakes up the
task. The task does work, then suspends itself, waiting for the next
interrupt. The interrupt source can be external (via the ports), or
internal (the RTLinux distribution has a sound example that demonstrates
this nicely).
In your case, you want each task on a set of PCs to run simultaneously, and
you need them to be synchronized externally which implies you want interrupt
driven tasks. The standard scheduler already does this. In fact, C.W.
Wright sent a mail to the list just today that shows how one does interrupt
driven tasks very nicely.
Custom schedulers are typically aimed at achieving a different scheduling
policy, shortest job first, etc, as opposed to round robin. This is quite
different from what you are attempting to achieve. Not even the smartest
scheduler in the world will be able to get a bunch of PCs to run
simultaneously without some external help!
Good luck!
Ken
--- [rtl] ---
For more information on Real-Time Linux see:
http://rtlinux.cs.nmt.edu/