[Top][All Lists]

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

Re: thread management

From: Erik Verbruggen
Subject: Re: thread management
Date: Tue, 7 Nov 2000 11:22:35 +0100

On Tue, Nov 07, 2000 at 05:05:54PM +0900, OKUJI Yoshinori wrote:
>   If you are interested in user-level thread multiplexers, I'd
> recommend reading some papers on studies in the past. This topic has
> been investigated extensively by OS researchers, so it is definitely
> better to know what is already known. Especially:
> A paper on Solaris's threads library
> http://nondot.org/sabre/os/S9Misc/Implementing%20Lightweight%20Threads.pdf
> Papers on Mach's cthreads
> ftp://mach.cs.cmu.edu/doc/published/cont_threads.ps
> ftp://mach.cs.cmu.edu/doc/published/threadmgnt.ps
> Perhaps you can find more in the "reference" section of a recent
> review or book.

Yes, I read an overview of threading implementations in a book of which
I can't remember the name (it's at home). Solaris stands out among them,
because of what Yoshinori already notes: it schedules a bunch of user
threads on a smaller number of kernel threads. This is a mix of
user-land thread implementation and kernel-land thread implementation
(the last are often called Light Weight Treads). What the paper above
does not mention is how and who decides to suspend one user thread from
a kernel thread and attach the kernel thread to another user thread.
Yes, this is the scheduler, but if the scheduler is in userland, how can
it fairly decide to reschedule? And how does it actually suspend a
thread that is running? 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]