Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Apr 2003 18:21:24 -0700 (PDT)
From:      Julian Elischer <julian@elischer.org>
To:        Jeff Roberson <jroberson@chesapeake.net>
Cc:        freebsd-threads@freebsd.org
Subject:   Re: Patches for threads/scheduler abstraction.
Message-ID:  <Pine.BSF.4.21.0304161800410.44009-100000@InterJet.elischer.org>
In-Reply-To: <20030416195037.C76635-100000@mail.chesapeake.net>

next in thread | previous in thread | raw e-mail | index | archive | help


On Wed, 16 Apr 2003, Jeff Roberson wrote:

> 
> On Wed, 16 Apr 2003, Julian Elischer wrote:
> 
> >
> > Jeff I am working on some patches to do teh abstraction.
> > I suspect that you are also doing this..
> > I would like to send you what I have before we diverge too much.
> >
> > What I will have when I have done this is a system that does exactly
> > what it does now, but with code moved around,
> > and a new file kern_kse.c.
> 
> Ok, go ahead and send it.
> 
> >
> > This is a step towards whate we discussed but I'm worried that if we
> > don't co-ordinate I'll be duplicating work that you are doing..
> 
> I have been mildly disappointed with FreeBSD lately and have not put any
> effort into it.  I will look over your patches though.

OK I will send them shortly.

These patches are NOT CLEAN
by which I mean I have not done any tidying up yet.

It is still in the "cat dragged this over the fence" state.
However it does compile cleanly with only four files knowing what a kse
is (Not counting ULE, I have not touched ULE yet) (and I would actualy
rather that you did.. you understand it better).

!!!!!!I have not tried to RUN this yet!!!!!!
The files that know what a kse is are:
ref3# grep ksevar.h kern/*
kern/kern_switch.c:#include <sys/ksevar.h>
kern/kern_thread.c:#include <sys/ksevar.h>
kern/sched_4bsd.c:#include <sys/ksevar.h>
kern/sched_4bsd_kse.c:#include <sys/ksevar.h>
(note that kern_thr.c is not one of them)

My plan is:
eventually, sched_4bsd.c will only do the original BSD 
scheduling (except with threads instead of procsses)
i.e. unfair, but simple and easy to benchmark on non-threaded apps.
(or on threaded apps with no competing processes)

sched_4bsd_kse.c will suck in the current contents of kern_switch.c
and the KSE'd version of sched_4bsd.c.

this will act like the current 4bsd scheduler WITH KSEs

switch.c will go away (unless you want it as part of ULE).

kern_thread.c will forget all about KSEs
(but its not there yet).

I'll send the patches in an hour or so..
My wife's calling :-/






> 
> >
> > Julian
> >
> >
> 
> 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0304161800410.44009-100000>