DragonFly BSD
DragonFly kernel List (threaded) for 2004-01
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

scheduler again

From: Peter Kadau <peter.kadau@xxxxxxxxxxxxxxxx>
Date: Tue, 06 Jan 2004 17:59:15 +0100

Hi !

Despite what I thought, we need to touch kern/kern_synch.c.
So here are some proposals and questions.
I'd like to move updatepri, mi_switch, setrunnable and clrrunnable
from _synch.c to _switch.c. (So they are later part of some struct scheduler
or whatever).
For schedcpu, _wakeup I want some hook of the form, say
void schupdstats(proc *, int); /* scheduler specific stats update routine */
where the int argument tells the routine how it was called
(regular timer interrupt at what stage, asynchronous wakeup,...).
I'm very unsure how to deal with schedclock and resetpriority, since they depend
on the estcpu macros, but they would need at least some hook of the same form.
And I'd rather like to have a chgrunqueue(proc *, u_short) in _switch.c
as a short cut for remrunqueue(p), p->rtprio.prio = newpriority, setrunqueue(p)

When these things are pinned down, we could add a sched.h and let proc.h
include it for the beginning. Later on include it only in the relevant
source files.

Any comments ?



Campus der Max-Planck-Institute Tübingen
Netzwerk- und Systemadministration

Tel: +49 7071 601 598
Fax: +49 7071 601 616

[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]