Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Jul 2003 19:30:11 -0400 (EDT)
From:      Daniel Eischen <eischen@vigrid.com>
To:        Julian Elischer <julian@elischer.org>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/lib/libpthread Makefile src/lib/libpthread/test thr_concurrency.c thr_create.c thr_find_thread.c thr_init.c thr_kern.c thr_nanosleep.c thr_private.h thr_sig.c thr_sigmask.c ...
Message-ID:  <Pine.GSO.4.10.10307171919510.15862-100000@pcnet5.pcnet.com>
In-Reply-To: <Pine.BSF.4.21.0307171609200.4588-100000@InterJet.elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 17 Jul 2003, Julian Elischer wrote:

> This makes it possible to make the same code run in the same mode as
> libthr.
> 
> we have not compared them for performance yet.
> it is also not fully decided how this will be done in production..
> will we have 2 libraries and selct one? Or will it be possible to 
> use a run-time selector?
> At the moment it is a compile time selection as to which you make and
> a run-time (via libmap) decision wich you link to..

Or -l<libofchoice>

There is not much code removed when compiling for 1:1,
and David actually had an earlier version of it that
was based on just a variable being set to true or false.
If the library knew (at init time) if it was called
libpthread or libthread, it could automatically do the
right thing.

> We'll probably make a libpthread-1:1.so and a libpthread-m:n.so.
> As they are the same code the interface is pretty much guaranteed to be
> the same.. Note that like libthr, the 1:1 version is incapable of doing
> process-scope threads, but otherwise they are compatible.

I'd like to make libpthread and libthread (ala Solaris).

Note that even in 1:1 mode, POSIX semantics for priority
ceiling and inheritence mutexes, as well as wakeup ordering
for condition variables, still work.

-- 
Dan Eischen



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