Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Jun 1996 11:10:43 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        jmb@freefall.freebsd.org (Jonathan M. Bresler)
Cc:        michaelv@HeadCandy.com, gibbs@freefall.freebsd.org, sef@kithrup.com, smp@freebsd.org
Subject:   Re: Unix/NT synchronization model (was: SMP progress?)
Message-ID:  <199606051810.LAA29266@phaeton.artisoft.com>
In-Reply-To: <199606051720.KAA16854@freefall.freebsd.org> from "Jonathan M. Bresler" at Jun 5, 96 10:20:12 am

next in thread | previous in thread | raw e-mail | index | archive | help
> Michael L. VanLoon -- HeadCandy.com wrote:
> > Which is why I want to see how it's done in a modern Unix.  Maybe
> > there's a "better" way.  Or, at least a more "standard" way.  It would
> > be kinda dumb to put together a bunch of sync stuff that looks like
> > NT, nice as it might be, when everything else written for an MP or
> > threaded Unix works totally different.  I don't want to be locked into
> > an NT paradigm.
> 
> 	SunExpert magazine did a four article series on threads beginning
> 	with the feb '96 issue.  the last article in the series (may '96)
> 	compares pthreads with solaris threads.
> 
> 	its all api level stuff

I just had a huge discussion with a Sun engineer on threading
internals, and specifically on whether or not it should be possible
to block a kernel thread as a result of a system call, or only
a user thread (my position was that once the kernel gives me a
quantum, it's *my* damn quantum).

Probably the best reference for synchronization primitives in an
SMP and/or kernel multithreading environemnt is in "UNIX for modern
architectures", and the best explanation for the competitive
trade-offs and implementation details is "UNIX Internals: The New
Frontiers".  There is supposedly another version of "The Magic
Garden Explained" coming out, but given the lack of depth on
what I considered some fundamental issues (namely, the DNLC) in
the previous version of the book, I don't have a lot of hope there.

There are also some interesting papers on threading in both kernel
and user space at ftp.sage.usenix.org, the Usenix paper archive
site.  The University of Washington has also got a couple of
interesting papers, though mostly dealing with user space threading
(the SunOS 4.x LWP code came out of a U of W project on "SPARC
Register windows and User Space Threading").

I suspect that the first order of business would be to turnstile
the mutex code to get rid of the "thundering herd" problem that
it currently has for more than one AP.


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199606051810.LAA29266>