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@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