You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by Justin Erenkrantz <je...@ebuilt.com> on 2001/09/17 01:36:40 UTC
Solaris 8 and 9 thread libraries was Re: [proposal] apr_thread_setconcurrency()
On Sun, Sep 16, 2001 at 04:12:58PM -0700, Justin Erenkrantz wrote:
> Yup. More precisely /usr/lib/lwp/libthread.so is the "alternate"
> version and /usr/lib/libthread.so is the "default" version. They
> are binary compatible (as far as we care) - therefore the
> LD_LIBRARY_PATH trick works. With Solaris 8 (first one to have
> this alternate version), the default is to use LWPs and the
> alternate is bound threads. AFAIK, Solaris 9 switches them.
% uname -srvm
SunOS 5.9 Beta sun4u
% ls -l /usr/lib/lwp/libthread.so.1 /usr/lib/libthread.so.1
-rwxr-xr-x 1 root bin 129168 Jun 20 10:40 /usr/lib/libthread.so.1
lrwxrwxrwx 1 root root 17 Aug 29 16:41 /usr/lib/lwp/libthread.so.1 -> ../libthread.so.1
% uname -srvm
SunOS 5.8 Generic_108529-09 i86pc
jerenkrantz@boris% ls -l /usr/lib/lwp/libthread.so.1 /usr/lib/libthread.so.1
-rwxr-xr-x 1 root bin 170724 Jan 24 2001 /usr/lib/libthread.so.1
-rwxr-xr-x 1 root bin 108620 Feb 22 2001 /usr/lib/lwp/libthread.so.1
As you can see, the alternate threading library on Solaris 9 just points
to /usr/lib/libthread.so.1. Based on what I can see, LWPs are still
present, but the performance characteristics and functions executed
*looks* like it is a bound thread implementation. I don't have access
to the source code, so I have no clue what is going on. -- justin
Re: Solaris 8 and 9 thread libraries was Re: [proposal]
apr_thread_setconcurrency()
Posted by Brian Pane <bp...@pacbell.net>.
Justin Erenkrantz wrote:
>On Sun, Sep 16, 2001 at 04:12:58PM -0700, Justin Erenkrantz wrote:
>
>>Yup. More precisely /usr/lib/lwp/libthread.so is the "alternate"
>>version and /usr/lib/libthread.so is the "default" version. They
>>are binary compatible (as far as we care) - therefore the
>>LD_LIBRARY_PATH trick works. With Solaris 8 (first one to have
>>this alternate version), the default is to use LWPs and the
>>alternate is bound threads. AFAIK, Solaris 9 switches them.
>>
>
>% uname -srvm
>SunOS 5.9 Beta sun4u
>% ls -l /usr/lib/lwp/libthread.so.1 /usr/lib/libthread.so.1
>-rwxr-xr-x 1 root bin 129168 Jun 20 10:40 /usr/lib/libthread.so.1
>lrwxrwxrwx 1 root root 17 Aug 29 16:41 /usr/lib/lwp/libthread.so.1 -> ../libthread.so.1
>
>% uname -srvm
>SunOS 5.8 Generic_108529-09 i86pc
>jerenkrantz@boris% ls -l /usr/lib/lwp/libthread.so.1 /usr/lib/libthread.so.1
>-rwxr-xr-x 1 root bin 170724 Jan 24 2001 /usr/lib/libthread.so.1
>-rwxr-xr-x 1 root bin 108620 Feb 22 2001 /usr/lib/lwp/libthread.so.1
>
>As you can see, the alternate threading library on Solaris 9 just points
>to /usr/lib/libthread.so.1. Based on what I can see, LWPs are still
>present, but the performance characteristics and functions executed
>*looks* like it is a bound thread implementation. I don't have access
>
That sounds like what I'd expect, based on earlier descriptions of how
Solaris 9 would have a single-layer thread model by default: presumably
they kept the LWP architecture (which seems rather an integral part of
the kernel's process management) and modified the thread and pthread libs
to make user-layer threads automatically bound to LWPs.
--Brian