Threadsafe and threaded libraries in AIX

This section describes the thread libraries in the AIX®.

By default, all applications are now considered "threaded," even though most are of the case "single threaded." These threadsafe libraries are as follows:

Threadsafe libraries
libbsd.a libc.a libm.a
libsvid.a libtli.a libxti.a
libnetsvc.a

POSIX threads libraries

The following POSIX threads libraries are available:
libpthreads.a POSIX threads library
The libpthreads.a library is based on the POSIX 1003.1c industry standard for a portable user threads API. Any program written for use with a POSIX thread library can be ported for use with another POSIX threads library; only the performance and very few subroutines of the threads library are implementation-dependent. To enhance the portability of the threads library, the POSIX standard made the implementation of several programming facilities optional. For more information about checking the POSIX options, see Threads Library Options.
libpthreads_compat.a POSIX draft 7 threads library
AIX provides binary compatibility for existing multi-threads applications that were coded to Draft 7 of the POSIX thread standard. These applications will run without relinking. The libpthreads_compat.a library is provided only for compatibility with earlier versions of applications written by using the Draft 7 of the POSIX Thread Standard. All new applications must use the libpthreads.a library, which supports both 32-bit and 64-bit applications. The libpthreads_compat.a library supports only 32-bit applications. Beginning with AIX 5.1, the libpthreads.a library supports the Single UNIX Specification, Version 2, which includes the final POSIX 1003.1c Pthread Standard.