POSIX erweitert den plattformübergreifenden ANSI C Standard um Schnittstellen zum Betriebsystem. Dessen essentielle Objekte sind: Benutzer, Dateien und Prozesse.
Plattformspezifische Erweiterungen sind im Folgenden farblich gekennzeichnet. Grundsätzlich gilt: Je heller desto älter desto portabler.
Obsolete und unsicher Funktionen sind markiert:
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
libm.so
libdl.so
librt.so
libpthread.so
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 |