„Native POSIX Thread Library“ – Versionsunterschied

[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K https, Links normiert, Kleinkram
Zeile 2:
 
== Geschichte ==
Seit der Kernel-Version 2.0 existierte für Linux die Threading-Bibliothek ''[[LinuxThreads]]'', deren grundlegende Design-Prinzipien unter Einfluss der 1996 vorhandenen Beschränkungen des [[Linux (Kernel)|Linux-Kernels]] und der libc5 zustande gekommen waren. Linux hatte keine echte Unterstützung für Threads im Kernel, kannte aber den ''clone()''-Systemaufruf, der eine Kopie des aufrufenden Prozesses mit identischem Adressraum erzeugte. LinuxThreads benutzte diesen [[Systemaufruf]], um Thread-Unterstützung im [[Ring (CPU)|Userspace]] zu simulieren. Die Bibliothek wurde zwar kontinuierlich verbessert, war aber konzeptionell veraltet und eingeschränkt.
 
Folgende Probleme mit der existierenden ''LinuxThreads''-Implementation wurden identifiziert:
Zeile 23:
Unter diesen Voraussetzungen begann Mitte 2002 die Arbeit an der neuen Native POSIX Thread Library. Im August/September 2002 wurde der Linux-Kernel 2.5 für die NPTL vorbereitet. Dazu war es notwendig, einige neue Systemaufrufe einzuführen und vorhandene zu optimieren. In ersten Benchmarks konnten nun auf einem IA-32-System innerhalb von 2 Sekunden 100.000 parallele Threads erzeugt werden; ohne NPTL dauerte allein die Erzeugung der Threads fast 15 Minuten. Trotz dieser Last blieb das Testsystem mit annähernd gleicher Geschwindigkeit benutzbar.
 
[[Red Hat Linux]] 9 war die erste Linux-Distribution, in der die NPTL in einem [[Patch_Patch (Software)|gepatchten]] 2.4er-Kernel verwendet wurde (und deren Benutzer dadurch bisweilen zu unfreiwilligen [[Entwicklungsstadium (Software)#Beta-Version|Betatestern]] wurden). Inzwischen benutzen alle modernen Distributionen die NPTL, wenn sie einen Kernel der Version 2.6 oder höher verwenden.
 
== Konzept ==
Zeile 32:
 
== Literatur ==
* [httphttps://wwwstatic.redhat.com/legacy/whitepapers/developer/POSIX_Linux_Threading.pdf The Native POSIX Thread Library for Linux] (PDF; 535 kB)
 
[[Kategorie:Linux-Software]]