In the Linux operating system, LinuxThreads was a partial implementation of POSIX Threads introduced in 1996. The main developer of LinuxThreads was Xavier Leroy. It has been superseded by the Native POSIX Thread Library (NPTL).[1]

Implementation

edit

LinuxThreads had a number of problems, mainly owing to the implementation, which used the clone system call to create a new process sharing the parent's address space. For example, threads had distinct process identifiers, causing problems for signal handling; LinuxThreads used the signals SIGUSR1 and SIGUSR2 for inter-thread coordination, meaning these signals could not be used by programs.

To improve the situation, two competing projects were started to develop a replacement; NGPT (Next Generation POSIX Threads) and NPTL. NPTL won out and is today shipped with the vast majority of Linux systems. As of 2006, LinuxThreads may still be seen on production systems, particularly those using version 2.4 or lower of the Linux kernel, as NPTL requires facilities which were specifically added into the 2.6 version of the kernel for its use.

LinuxThreads was also ported to and used on FreeBSD.[2]

References

edit
  1. ^ Jones, M. Tim (2008). GNU/Linux application programming (2nd ed.). Hingham, Mass.: Charles River Media. p. 253. ISBN 978-1-58450-568-6. The 2.6 kernel utilizes the new Native POSIX Thread Library, or NPTL (introduced in 2002), which is a higher performance implementation with numerous advantages over the older component.
  2. ^ LinuxThreads on FreeBSD [1] Archived 2014-08-08 at the Wayback Machine
edit

📚 Artikel Terkait di Wikipedia

Xavier Leroy

verified in Rocq (former name: Coq). Leroy was also the original author of LinuxThreads, the most widely used threading package for Linux versions prior to 2

Native POSIX Thread Library

calling process where the copy shares the address space of the caller. The LinuxThreads project used this system call to provide kernel-level threads (most of

UClibc

Retrieved 2007-06-19. pthreads support (derived from glibc 2.1.3's linuxthreads library) [...] Merged in the random number support (rand, srand, etc)

Thread (computing)

Linux the GNU C Library implements this approach (via the NPTL or older LinuxThreads). This approach is also used by Solaris, NetBSD, FreeBSD, macOS, and

Fedora Linux release history

release not to include the long deprecated (but kept for compatibility) LinuxThreads, replaced by the Native POSIX Thread Library. Fedora Core 6 was released