1. Index
  2. Shell
  3. C
  4. POSIX
  5. JavaScript

Schnittstelle zum Betriebssystem

POSIX erweitert den plattformübergreifenden ANSI C Standard um Schnittstellen zum Betriebsystem. Dessen essentielle Objekte sind: Benutzer, Dateien und Prozesse.

Module

Plattformspezifische Erweiterungen sind im Folgenden farblich gekennzeichnet. Grundsätzlich gilt: Je heller desto älter desto portabler.

Obsolete und unsicher Funktionen sind markiert:

Bibliotheken

Unter Debian stellt die GLIBC diese Funktionen zur Verfügung, es existieren aber Alternativen wie EGLIBC oder musl-libc. Aus historischen Gründen sind Funktionen, welche die Gleitkommaeinheit (FPU) des Prozessors nutzen, in eine eigene Bibliothek ausgelagert. Ebenso Echtzeit- und Threadfunktionen.

libc.so
Standard C Bibliothek
libm.so
Gleitpunkt-Bibliothek
libdl.so
Dynamischer Linker
librt.so
Echtzeit-Erweiterungen
libpthread.so
POSIX Threads

Header

Header Blibliothek Beschreibung
aio.h -lrt Asynchrone Ein- und Ausgabe
arpa/inet.h -lc Umrechnung von Netzwerk-Adressen
assert.h -lc Zusicherung von Invarianten
complex.h -lm Komplexe Arithmetik
cpio.h -lc CPIO Archivformat
ctype.h -lc ASCII Zeichenklassen
dirent.h -lc Auflistung von Verzeichnisinhalten
dlfcn.h -ldl Dynamisches Binden von Bibliotheken
errno.h -lc Fehlercodes
fcntl.h -lc Operationen auf Dateien
fenv.h -lm Gleitkomma-Umgebung
float.h -lc Extrema von Gleitkommazahlen
fmtmsg.h -lc Formatierte Nachrichten
fnmatch.h -lc Mustererkennung mit Jokerzeichen
ftw.h -lc Traversierung des Verzeichnisbaums
glob.h -lc Dateiauflistung mit Jokerzeichen
grp.h -lc Gruppendatenbank
iconv.h -lc Konvertierung von Zeichensätzen-
inttypes.h -lc Ganzzahlige Division
iso646.h -lc Makros für mnemonische Bit-Operatoren
langinfo.h -lc Konstanten für Sprachinformation
libgen.h -lc Aufspaltung von Pfadnamen
limits.h -lc Extrema von ganzzahligen Datentypen
locale.h -lc Lokalisierung
math.h -lm Arithmetische Funktionen
monetary.h -lc Landeswährungen
mqueue.h -lrt Echtzeit Nachrichten-Warteschlangen
ndbm.h -lc Name-Wert-Datenbank
net/if.h -lc Netzwerk-Schnittstellen
netdb.h -lc Auflösung von Hostnamen zu Adressen
netinet/in.h -lc Datenstruktur für Internet-Adressen
netinet/tcp.h -lc Transmission Control Protocol Flags
nl_types.h -lc Sprachkataloge
poll.h -lc Ereignisbehandlung für Ein- und Ausgabe
pthread.h -lpthread Threads
pwd.h -lc Benutzerdatenbank
regex.h -lc Reguläre Ausdrücke
sched.h -lc Scheduling von Prozessen
search.h -lc Abstrakte Datenstrukturen
semaphore.h -lpthread Semaphore
setjmp.h -lc Nicht-lokale Sprünge
signal.h -lc Verarbeitung von Signalen
spawn.h @todo: Spawn Extension
stdalign.h -lc @todo: Speicheranordnung
stdatomic.h -lc Atomare Operationen
stdarg.h -lc Variable Argumentlisten
stdbool.h -lc Wahrheitswerte
stddef.h -lc Größenberechnung von Datentypen
stdint.h -lc Ganzzahlige Typen
stdio.h -lc Gepufferte Ein- und Ausgabe
stdlib.h -lc Funktionen aus allen Bereichen
stdnoreturn.h -lc Funktionen ohne Wiederkehr
string.h -lc Operationen auf Zeichenketten
strings.h -lc Vergleich von Zeichenketten
stropts.h X/Open STREAMS
sys/ipc.h -lc System V Interprozesskommunikation
sys/msg.h -lc System V Message Queues
sys/sem.h -lc System V Semaphore
sys/shm.h -lc System V Shared Memory
sys/mman.h -lc Memory Mapping
sys/resource.h -lc Priorität von Prozessen
sys/select.h -lc Ein-/Ausgabe Ereignisbehandlung
sys/socket.h -lc Netzwerk-Kommunikation
sys/stat.h -lc Datei-Eigenschaften
sys/statvfs.h -lc Dateisystem-Informationen
sys/time.h -lc Zeitmessung
sys/times.h -lc Rechenzeitverbrauch des Prozesses
sys/types.h -lc Typdefinitionen für diverse Module
sys/uio.h -lc Parallele Ein-/Ausgabe
sys/un.h -lc Datenstruktur für Unix Domain Sockets
sys/utsname.h -lc Systemidentifikation
sys/wait.h -lc Warten auf Prozesse
syslog.h -lc System-Protokoll
tar.h -lc Bandarchiv-Formate
termios.h -lc Steuerung von Terminals
tgmath.h -lm Typunabhängig mathematische Funktionen
threads.h -lc ANSI Threads
time.h -lc Zeitdarstellung und -umrechnung
trace.h Trace Extension
ulimit.h -lc Größenbeschränkung für Dateien
utime.h -lc Zeitstempel für Dateien
unistd.h -lc Operationen für diverse Unix-Spezifikationen
utmpx.h -lc Anmeldeprotokoll
uchar.h -lc Multibyte Unicode Zeichen
wchar.h -lc Zweibyte Unicode Zeichen
wctype.h -lc Unicode Zeichenklassen
wordexp.h -lc Wort-Expansion

Literatur