Subject: Re: upcalls?
To: Jason Thorpe <thorpej@nas.nasa.gov>
From: Frank van der Linden <frank@wins.uva.nl>
List: tech-kern
Date: 12/09/1999 20:57:11
On Thu, Dec 09, 1999 at 10:05:47AM -0800, Jason Thorpe wrote:
> I'd be willing to wager that what they actually did was enhance
> their existing LWP-based thread package with the upcall mechanism
> from Scheduler Activations.

I think this is what they did. There appears to be some magic going on
with an undocumented system call (_lwp_schedctl) and doors, but you'll
find doors everywhere in Solaris these days..

> I'd like to point out that Scheduler Activations is really another name
> for LWP.  I.e. in the original SA paper, they describe "Scheduler Activations"
> as an alternate scheduling primitive... and the original SA wasn't done on
> UNIX -- it was done on a research OS called Topaz which already provided
> a similar mechanism to LWPs.
> 
> I think we would be well-served to convert our kernel to use LWPs as
> the scheduling primitive (like Solaris), and adding the upcall mechanism
> documented in the SA paper.

I totally agree that this is the way to go.

> This would also be a win for our Solaris emulation.  And it might not
> actually be that hard to do.

Well, we'd certainly need doors too if we want to get the emulation right :-)

- Frank