Hauptmenü öffnen

Portable Operating System Interface

für Unix entwickeltes standardisiertes Application Programming Interface

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. Die internationale Norm trägt die Bezeichnung ISO/IEC/IEEE 9945.

POSIX
ISO/IEC/IEEE 9945
Basisdaten

Entwickler Portable Application Standards Committee
Aktuelle Version IEEE Std 1003.1-2008
Betriebssystem Betriebssystem-unabhängig
Kategorie Programmierschnittstelle
deutschsprachig nein
PASC Committee

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

Inhaltsverzeichnis

EntwicklungBearbeiten

Der heutige Standard ist eine Weiterentwicklung aus einem Projekt von 1985. Der Begriff POSIX wurde von Richard Stallman vorgeschlagen und kommt der Bitte des IEEE nach einem einprägsamen Namen nach;[2] 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[3] veröffentlicht. Die aktuelle Version ist eine Überarbeitung aus dem Jahr 2008.[4] Seit es die Möglichkeit gibt, ein Produkt zertifizieren zu lassen, werben einige Linux-Distributoren damit, ein POSIX-konformes Betriebssystem zu vertreiben.

SpezifikationBearbeiten

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 BetriebssystemeBearbeiten

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.

Vollständig POSIX-konformBearbeiten

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

Weitgehend POSIX-kompatibelBearbeiten

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

POSIX-KompatibilitätserweiterungenBearbeiten

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 auchBearbeiten

EinzelnachweiseBearbeiten

  1. https://publications.opengroup.org/standards/unix/t101
  2. POSIX.1 FAQ (englisch) – Frequently Asked Questions zu POSIX® 1003.1 (Version 1.12) bei The Open Group; vom 2. Februar 2006
  3. The Open Group Base Specifications Issue 6 (englisch) – IEEE-Standard 1003.1-2004
  4. The Open Group Base Specifications Issue 7 (englisch) – IEEE-Standard 1003.1-2008
  5. Zur POSIX-Konformität von BSD/OS (Memento vom 14. Juli 2011 im Internet Archive) (im Internetarchiv)
  6. Zur POSIX-Konformität von FreeBSD
  7. Erläuterung von Microsoft zu SFU. Abgerufen am 2. Januar 2011.
  8. Pthreads-w32: Open Source POSIX Threads for Win32
  9. APE – The ANSI/POSIX Environment. plan9.bell-labs.com, abgerufen am 21. Juli 2009 (englisch).

LiteraturBearbeiten

W. Richard Stevens, Stephen A. Rago: Advanced Programming in the UNIX Environment, Second Edition. Paperback Auflage. Addison-Wesley, Boston 2008, ISBN 978-0-321-52594-9.

WeblinksBearbeiten