В операционной системе Linux LinuxThreads был частичной реализацией POSIX Threads , представленной в 1996 году. Главным разработчиком LinuxThreads был Ксавье Лерой . Он был заменен Native POSIX Thread Library (NPTL). [1]
LinuxThreads имел ряд проблем, в основном из-за реализации, которая использовала системный вызов clone для создания нового процесса, разделяющего адресное пространство родителя . Например, потоки имели различные идентификаторы процессов , что вызывало проблемы с обработкой сигналов ; LinuxThreads использовал сигналы SIGUSR1 и SIGUSR2 для координации между потоками, что означало, что эти сигналы не могли использоваться программами.
Чтобы улучшить ситуацию, были начаты два конкурирующих проекта по разработке замены: NGPT (Next Generation POSIX Threads) и NPTL . NPTL победил и сегодня поставляется с подавляющим большинством систем Linux. По состоянию на 2006 год [обновлять]LinuxThreads все еще можно увидеть в производственных системах, особенно тех, которые используют версию 2.4 или ниже ядра Linux , поскольку NPTL требует средств, которые были специально добавлены в версию 2.6 ядра для его использования.
LinuxThreads также был перенесен и использовался на FreeBSD. [2]
Ядро 2.6 использует новую библиотеку потоков Native POSIX Thread Library, или NPTL (представленную в 2002 году), которая представляет собой более производительную реализацию с многочисленными преимуществами по сравнению со старым компонентом.