Subject: Re: shared libraries
To: Brian Stark <bstark@empros.com>
From: Brett Lymn <blymn@awadi.com.au>
List: current-users
Date: 01/30/1997 19:22:53
According to Brian Stark:
>
>Here's my opinion on this: support for POSIX 1003.1 (system interface) is 
>sufficient, support for POSIX 1003.1b (real-time extensions) and POSIX 
>1003.1c (threads) is lacking. I'm not an authority by any means on the 
>POSIX standards, I just would like to be able to compile some of the 
>programs here at work (We use SunOS 5.5.1 and AIX 4.2) on my NetBSD 
>system at home.
>

Brian,
        No real time extensions that I know of but you can get
pthreads by compiling up the pthreads package from
sipb.mit.edu:/pub/pthreads

Which does implement posix threading (albeit with some mystifying
omissions - like pthread_cancel....).  The stuff does work - well, it
worked for me with the little bit I have done.

  From what I understand it is not as good as thread support at the
kernel level mainly because high priority threads in one process
compete with lower priority ones in other processes and there is no
way for the scheduler to tell that it should be running the higher
priority thread in process A instead of the ones in process B because
it just deals with the scheduling of the processes not the threads
within the processes.

To "properly" implement a POSIX compliant threads subsystem there is a
lot of work that needs to be done on the libc code to make it thread
safe.  There are a lot of calls in libc that are mandated to be thread
safe by the POSIX specification.

-- 
Brett Lymn, Computer Systems Administrator, AWA Defence Industries
===============================================================================
  "Upgrading your memory gives you MORE RAM!" - ad in MacWAREHOUSE catalogue.