Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В операционной системе Linux LinuxThreads был частичной реализацией потоков POSIX, представленных в 1996 году. Основным разработчиком LinuxThreads был Ксавье Лерой . Он был заменен собственной библиотекой потоков POSIX (NPTL). [1]

У LinuxThreads был ряд проблем, в основном из-за реализации, которая использовала системный вызов clone для создания нового процесса, разделяющего адресное пространство родителя . Например, потоки имели разные идентификаторы процесса , что создавало проблемы при обработке сигналов ; LinuxThreads использовал сигналы SIGUSR1 и SIGUSR2 для межпотоковой координации, то есть эти сигналы не могли использоваться программами.

Чтобы улучшить ситуацию, были начаты два конкурирующих проекта по разработке замены; NGPT ( потоки POSIX нового поколения) и NPTL . NPTL победил и сегодня поставляется с подавляющим большинством систем Linux. По состоянию на 2006 год LinuxThreads все еще можно увидеть в производственных системах, особенно в тех, которые используют ядро Linux версии 2.4 или ниже , поскольку NPTL требует средств, которые были специально добавлены в версию ядра 2.6 для его использования.

LinuxThreads также был перенесен на FreeBSD и использован на нем. [2]

Ссылки [ править ]

  1. ^ Джонс, М. Тим (2008). Программирование приложений GNU / Linux (2-е изд.). Хингем, Массачусетс: Charles River Media. п. 253. ISBN. 978-1-58450-568-6. В ядре 2.6 используется новая собственная библиотека потоков POSIX или NPTL (представленная в 2002 году), которая представляет собой более производительную реализацию с многочисленными преимуществами по сравнению со старым компонентом.
  2. ^ LinuxThreads на FreeBSD [1]. Архивировано 8 августа 2014 г. на Wayback Machine.

Внешние ссылки [ править ]