About external preempters
Gernot Heiser
gernot at zuse.disy.cse.unsw.EDU.AU
Sun Jan 3 23:13:42 CET 1999
Harald,
I think you might be confusing (external) preempters with user-level
schedulers. This is arether excusable, as these things are not clearly
differentiated in the reference manuals (and preempters are not
explained anywhere).
A user-level schedulers is a thread running at high priority and
donating time slices to threads it wants to schedule. Other sections of
the manuals refer to a thread's scheduler meaning a thread performing
thread_schedule() syscalls on the former thread.
A preempter is a different thing: if a thread's time slice expires its
preempter (if it exists) receives a (preemption) IPC notifying it of the
fact that the former thread has been de-scheduled.
External preempters are not implemented in any L4 version at this time,
mostly because their operation is not yet well enough defined (and, in
fact, there are some problems with the whole concept).
Gernot
--
Gernot Heiser ,--_|\ School of Computer Sci. & Engin.
Phone: +61 2 9385 5156 / \ The University of NSW
Fax: +61 2 9385 5995 \_,--._* Sydney, Australia 2052
E-mail: G.Heiser at unsw.edu.au v http://www.cse.unsw.edu.au/~gernot
PGP fingerprint = 94 1E B8 28 25 FD 7C 94 20 10 92 E5 0B FF 39 8F
More information about the l4-hackers
mailing list