Home

POSIXSystemaufrufe

POSIX-Systemaufrufe bezeichnen eine standardisierte Sammlung von Funktionen, die dem POSIX-Standard (Portable Operating System Interface) zugeordnet sind und den Zugriff auf zentrale Kernel-Dienste eines Betriebssystems ermöglichen. POSIX beschreibt eine portierbare API für Unix-ähnliche Systeme, einschließlich Parameter, Verhalten und Fehlerbehandlung. In der Praxis werden POSIX-Systemaufrufe üblicherweise durch die C-Standardbibliothek libc bereitgestellt, die Wrapper um die eigentlichen Kernel-Funktionen bildet. Die konkrete Implementierung kann je nach System variieren, doch POSIX-konforme Programme bleiben portierbar.

Zu den typischen Systemaufrufen gehören Datei- und Verzeichnisoperationen wie open, read, write, close, lseek, sowie Funktionen

Fehlerbehandlung beruht zumeist auf Rückgabewerten mit errno als Fehlerfeld; Programme prüfen typischerweise negative Rückgaben und setzen

zur
Abfrageschlüssel
von
Dateien
wie
stat,
fstat
und
lstat.
Prozesssteuerung
umfasst
fork,
execve
und
waitpid;
Speicher-
und
Adressraumverwaltung
erfolgt
über
mmap,
munmap
und
mprotect.
Weitere
Bereiche
decken
Pipe-
und
Dateikontrolle
ab
(pipe,
dup,
dup2,
access,
chmod,
chown)
sowie
Signale
und
Zeitfunktionen
(kill,
sigaction,
nanosleep,
timer_create,
timer_settime).
POSIX
schließt
außerdem
Thread-Unterstützung
(POSIX
Threads)
und
weitere
Systemfeatures
in
die
API
ein.
errno
entsprechend.
Unterschiede
zwischen
Systemen
können
bestehen
in
der
Verfügbarkeit
einzelner
Aufrufe
oder
in
kleinstem
Verhaltensdetail,
weshalb
echte
Portabilität
oft
erfordert,
POSIX-konforme
Wege
zu
nutzen
statt
plattform-spezifischer
Erweiterungen.
POSIX-Standards
wurden
weiterentwickelt
(z.
B.
POSIX.1-2001,
-2008,
-2017),
um
Kompatibilität
und
Sicherheit
zu
erhöhen.
Breite
Unterstützung
findet
sich
in
vielen
UNIX-Varianten,
Linux-Distributionen
und
macOS;
Windows-Systeme
bieten
POSIX-ähnliche
Layer
wie
Cygwin
oder
Windows
Subsystem
for
Linux,
um
Portabilität
zu
erleichtern.