Default attributes of tasks/lthreads

Michael Hohmuth hohmuth at innocent.com
Sat May 29 02:02:24 CEST 1999


Robert Kaiser <rob at sysgo.de> writes:

> I have a question regarding the default scheduling parameters
> of newly created tasks and lthreads under L4:
> 
> When I create a new task with the task_new syscall, according
> to the L4 manual, that task's lthread 0 starts running immediately.
> 
> But what are it's scheduling parameters (timeslice duration,
> priority) in this case ?
> 
> Similarly, when I create a new lthread with lthread_ex_regs,
> how are it's scheduling parameters determined ?

The parameters are inherited from the creating thread.

There usually is a way to change the parameters before the new thread
starts running: Use the thread_schedule system call before serving the 
thread's first page fault.

> Also, is it possible to set these parameters for an lthread
> that does not yet exist (The manual doesn't explicitly state
> this, but the fact that -conceptually- all lthreads of a task
> always exist would suggest that this is indeed possible) ?

Good question.  I think this is not really defined in the manual.  The 
current implementations don't support what you suggest; instead, the
scheduling parameters are inherited from the creating thread once the
new thread is ``really'' created.

Do you have an application where this behavior is a problem?

Michael
-- 
hohmuth at innocent.com, hohmuth at sax.de
http://www.sax.de/~hohmuth/



More information about the l4-hackers mailing list