Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Sep 2000 16:19:29 +0930
From:      Greg Lehey <grog@lemis.com>
To:        Matthew Jacob <mjacob@feral.com>
Cc:        Joerg Micheel <joerg@cs.waikato.ac.nz>, Frank Mayhar <frank@exit.com>, John Baldwin <jhb@pike.osd.bsdi.com>, Mark Murray <markm@FreeBSD.ORG>, FreeBSD-arch@FreeBSD.ORG
Subject:   Re: cvs commit: src/sys/conf files src/sys/sys random.h src/sys/dev/randomdev hash.c hash.h harvest.c randomdev.c yarrow.c yarro
Message-ID:  <20000912161928.C23948@wantadilla.lemis.com>
In-Reply-To: <Pine.BSF.4.21.0009112334310.70549-100000@beppo.feral.com>; from mjacob@feral.com on Mon, Sep 11, 2000 at 11:34:55PM -0700
References:  <20000912145255.A41113@cs.waikato.ac.nz> <Pine.BSF.4.21.0009112334310.70549-100000@beppo.feral.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday, 11 September 2000 at 23:34:55 -0700, Matt Jacob wrote:
>>> At Tandem, we used semaphores exclusively (well, we had a mutex
>>> instruction, but it was really interrupt lockout).  As far as I can
>>> recall, the semaphore counter was always 1, so the effect was
>>> identical to the current blocking "mutexes".
>>
>> I liked the model Sun chose for Solaris. They have mutex', rw_locks,
>> condition variables. I don't like semaphores. Mutexes are for short
>> locks. Condition variables are for long-term waits, they are associated
>> with a mutex. You can only sleep/wakeup a CV when holding the associated
>> with it, which prevents races. When having to sleep on a CV the kernel
>> would unlock the mutex and reaquire it for the running thread before
>> returning.
>
> It encouraged very sloppy programming.

That begs the question "can you elaborate?".

Greg
--
Finger grog@lemis.com for PGP public key
See complete headers for address and phone numbers


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




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