POSIX

für Unix entwickelte standardisierte Programmierschnittstelle

Das Portable Operating System Interface (POSIX [ˈpɒzɪks]) ist eine gemeinsam vom IEEE und der Open Group für Unix entwickelte standardisierte Programmierschnittstelle, welche die Schnittstelle zwischen Anwendungssoftware und Betriebssystem darstellt.[1] Die internationale Norm trägt die Bezeichnung ISO/IEC/IEEE 9945.

POSIX
ISO/IEC/IEEE 9945
Basisdaten

EntwicklerPortable Application Standards Committee
Aktuelle VersionIEEE Std 1003.1-2017
BetriebssystemBetriebssystem-unabhängig
KategorieProgrammierschnittstelle
deutschsprachignein
PASC Committee

Eine alternative Bezeichnung lautet (The Open Group Technical Standard) Base Specifications. POSIX bildet die Grundlage der Single UNIX Specification.[2]

Entwicklung

Der heutige Standard ist eine Weiterentwicklung aus einem Projekt von 1985.[3] Der Begriff POSIX wurde von Richard Stallman vorgeschlagen und kommt der Bitte des IEEE nach einem einprägsamen Namen nach;[4] er löste die Bezeichnung IEEE-IX ab. Die meisten Unix-Derivate halten sich weitgehend an die in IEEE1003.1 (1990) und IEEE1003.2 (1992) festgelegten Standards. Diese älteren Versionen wurden 2001 durch die überarbeitete Version IEEE Std 1003.1-2001 des IEEE und Open Group abgelöst. 2004 wurde eine leicht korrigierte Version IEEE Std 1003.1, 2004 Edition[5] veröffentlicht. Eine Revision erfolgte 2008,[6] diese erhielt 2013[7] und 2016[8] eine neue Edition. Im Jahr 2017 erfolgte wiederum eine Revision.[9]

Spezifikation

Die Spezifikation der Benutzer- und Software-Schnittstelle des Betriebssystems ist in vier Teile gegliedert, die zusammen den Standard IEEE Std 1003.1-2008 bilden:

Basis-Definitionen
Eine Liste der im Standard benutzten Konventionen, Definitionen und Konzepte.
System-Schnittstelle
Die C-Systemaufrufe und dazugehörige Header-Dateien.
Kommandozeileninterpreter und Hilfsprogramme
Eine Liste der Hilfsprogramme und der Kommandozeileninterpreter.
Erklärungen
Erläuterungen über den Standard.

Weitere Hilfsprogramme wie awk, vi oder echo sind ebenfalls Teil des POSIX-Standards. Die C-Funktionen stellen unter anderem Ein- bzw. Ausgabe (für Dateien, Terminals und Netzwerkdienste) zur Verfügung und stellen Kontrolle über Prozesse sowie die Benutzer- und Gruppenverwaltung her.

POSIX-kompatible Betriebssysteme

Betriebssysteme können vollständig oder teilweise POSIX-kompatibel sein – dies hängt davon ab, ob sie die POSIX-Standards gänzlich oder nur teilweise umsetzen. Die (meist minimalen) Abweichungen vom Standard sind heutzutage primär eine bewusste Entscheidung zugunsten anderer Kompatibilität und weniger ein Mangel an Umsetzbarkeit. POSIX-konforme Betriebssysteme werden von der Open-Group mit dem Unix-Zeichen versehen.[10]

Vollständig POSIX-konform

Folgende Betriebssysteme sind zum gesamten Standard vollständig kompatibel und somit POSIX-konform:

Weitgehend POSIX-kompatibel

Diese Betriebssysteme sind größtenteils kompatibel, aber nicht gänzlich konform zu den Standards:

POSIX-Kompatibilitätserweiterungen

Diese Betriebssysteme sind gewöhnlich nicht POSIX-kompatibel, es können aber Kompatibilitätserweiterungen eingesetzt werden. POSIX-Unterstützung wird in der Regel mittels Übersetzungs­bibliotheken oder einer Zwischenschicht „über“ dem Kernel umgesetzt. Volle POSIX-Konformität ist meist nicht gegeben.

Siehe auch

Einzelnachweise

Literatur

Weblinks