diff --git a/man7/pthreads.7 b/man7/pthreads.7 index 41f52902f..e0c335710 100644 --- a/man7/pthreads.7 +++ b/man7/pthreads.7 @@ -111,7 +111,8 @@ Over time, two threading implementations have been provided by the GNU C library on Linux: .IP \- 3 .B LinuxThreads -This is the original (now obsolete) Pthreads implementation. +This is the original Pthreads implementation. +Since glibc 2.4, this implementation is no longer supported. .IP \- 3 .B NPTL (Native POSIX Threads Library) @@ -119,7 +120,8 @@ This is the modern Pthreads implementation. By comparison with LinuxThreads, NPTL provides closer conformance to the requirements of the POSIX.1 specification and better performance when creating large numbers of threads. -NPTL requires features that are present in the Linux 2.6 kernel. +NPTL is available since glibc 2.3.2, +and requires features that are present in the Linux 2.6 kernel. .PP Both of these are so-called 1:1 implementations, meaning that each thread maps to a kernel scheduling entity. @@ -131,9 +133,6 @@ In NPTL, thread synchronization primitives (mutexes, thread joining, etc.) are implemented using the Linux .BR futex (2) system call. -.PP -Modern GNU C libraries provide both LinuxThreads and NPTL, with the -latter being the default (if supported by the underlying kernel). .SS LinuxThreads The notable features of this implementation are the following: .IP \- 3 @@ -297,7 +296,7 @@ in the C shell). Since glibc 2.3.2, the .BR getconf (1) command can be used to determine -the system's default threading implementation, for example: +the system's threading implementation, for example: .nf .in +4 @@ -317,7 +316,8 @@ bash$ $( ldd /bin/ls | grep libc.so | awk '{print $3}' ) | \\ .in -4 .fi .SS "Selecting the Threading Implementation: LD_ASSUME_KERNEL" -On systems with a glibc that supports both LinuxThreads and NPTL, the +On systems with a glibc that supports both LinuxThreads and NPTL +(i.e., glibc 2.3.\fIx\fP), the .B LD_ASSUME_KERNEL environment variable can be used to override the dynamic linker's default choice of threading implementation.