POSIX Signale (engl. „Signals“) sind Nachrichten die von einem zu anderen Prozess gesendet werden (um Statusänderungen anzuzeigen).
Wichtigere/oft benutzte Signale sind fett markiert, angegeben sind ist die Standverwendung, Programm können diese möglicherweise ignorieren oder anders verwenden.
SIGHUP - Signal: Hangup (Programme bekommen dieses Signal wenn das Terminal geschlossen wird, daemons reagieren meist wird dem Neulesen der Konfiguration)
SIGINT - Signal: Interrupt (beendet ein Programm, wird im Terminal normalerweise mit Tastenkombination „STRG“ + „C“ ausgelöst)
SIGQUIT - Signal: Quit (beendet ein Programm und verlanlasst dieses eine Core-Dump (eine Speicherabbild zur Fehleranalyse) zu schreiben, im Terminal ist die Tastenkombination üblichweise „STRG“ + „\“)
SIGILL - Signal: Illegal Instruction (illegale Anwendung oder CPU-Code, beendet ein Programm und erstellt einen Core-Dump)
SIGTRAP - Signal: Breakpoint/Trace Trap (zum debuggen von Programmen)
SIGABRT (aka SIGIOT): Signal: Abort (oder: „Signal: IOT Trap“; ein Programm beendet sich weil es eine illegalen Zustand festgestellt hat und erstellt eine Core-Datei)
SIGBUS: Signal: Bus Error (ein Speicherzugriff wurd auf eine unzulässige Weise versucht, beendet ein Programm und erstellt eine Core-Datei)
SIGFPE: Signal: FloatingPoint Exception (beendet ein Programm und erstellt eine Core-Datei weil ein Fließkommafehler „floating point error“ auftrat:
Integer divide by zero
Integer overflow
FloatingPoint divide by zero
FloatingPoint overflow
FloatingPoint underflow
FloatingPoint inexact result
FloatingPoint invalid operation
Subscript out of range
SIGKILL - Signal: KILL (beendet ein Programm radikal und sofort ohne Möglichkeit dieses Signal abzufangen oder zu ignorieren. Es hat auf allen Systemen die Nummer 9 und sollte nur als letzte Maßnahme angewandt werden)
SIGUSR1 - Signal: User defined Signal 1 (Benutzerdefiniertes Signal, dd reagiert z. B. mit dem aktuellen Kopierfortschritt; Standardmäßig beendet sich ein Programm nach diesem Signal)
SIGSEGV - Signal: Segmentation Violation (bzw. SegmentationFault; dieses Signal tritt bei falschen Referenzen auf Speicher auf, das Programm wird beendet und eine Core-Datei erstellt. Ursache sind fast immer Programmierfehler:
ein „pointer“ ist „NULL“ (unreferenziert, uninitialisiert oder bereits freigegeben)
eine Adresse ist nicht zum Objekt zugeordnet (z. B. unbenutzter oder bereits durch das Betriebssysten freigegebener Speicher)
ungültige Zugriffsrechte
SIGUSR2 - Signal: User defined signal 2 (reserviert für IPC oder andere Mechanismen, normalerweise beendet sich ein Programm nach diesem Signal)
SIGPIPE - Signal: Pipe (ausgelöst wenn ein Programm auf einen Socket oder fifo schreibt, der keinen Empfänger hat. Standardmäßig beendet sich ein Programm nach diesem Signal)
SIGALRM - Signal: Alarm (wird nach einer bestimmten Anzahl von Sekunden nach dem Aufruf des alarm(2)-Systembefehls ausgelöst. Wird oft für die Erkennung von timeouts bei Systembefehlen benutzt, standardmäßig beendet sich ein Programm nach diesem Signal)
SIGTERM - Signal: Terminate (ein Programm bekommt die Möglichkeit sich sauber zu beenden indem es das Signal abfängt. Standardmäßig beendet sich ein Programm nach diesem Signal)
SIGSTKFLT - Signal: Stack fault on coprocessor (Standardmäßig beendet sich ein Programm nach diesem Signal)
SIGCHLD - Signal: Child process (Ein abgeleiteter Kindprozeß hat seinen Status geändert, z. B. ein Signal empfangen oder sich beendet. Durch das Abfangen dieses Signals können Zombie-Prozesse erkannt und vermieden werden. Wird Standardmäßig ignoriert - SIG_DFL.)
SIGCONT - Signal: Continue (Ein Prozeß kann von einem vorherigen SIGSTOP weiter machen. Im Gegensatz zu SIGSTOP kann SIGCONT abgefangen werden.)
SIGSTOP - Signal: Stop (Hält einen Prozeß an bis ein SIGCONT empfangen wird, kann nicht abgefangen oder ignoriert werden.)
SIGTSTP - Signal: Terminal Stop (Die STOP-Tastenkomination „STRG“ + „Z“ wurde an ein Terminal gesendet. Standardmäßig hält dies einen Prozeß wie bei SIGSTOP an.)
SIGTTIN - Signal: Terminal Input on Background Process (Ein Prozeß versucht von einem Terminal zu lesen, das er nicht mehr kontrolliert. Das Programm wird angehalten bis SIGCONT gesendet wird.)
SIGTTOU - Signal: tty output on background process (Ein Hintergrund-Prozeß hat versucht auf ein Terminal auszugeben, das Programm wird angehalten bis SIGCONT gesendet wird. Das Signal kann abgefangen oder ignoriert werden, siehe SIGTTIN.)
SIGURG - Signal: Urgent (wird vom Betriebssystem gesendet wenn eilige Daten auf einem socket warten, wird standardmäßig ignoriert.
SIGXCPU - Signal: CPU Time limit exceeded (ein mit ulimit(1) gesetztes CPU-Zeitlimit wurde überschritten, beendet ein Programm und erstellt einen Core-Dump)
SIGXFSZ - Signal: File size limit exceeded (ein mit ulimit(1) gesetzte maximale Dateigröße wurde überschritten, beendet ein Programm und erstellt einen Core-Dump)
SIGVTALRM - Signal: Virtual Alarm Clock (User-mode Signal das ein Programm beendet)
SIGPROF - Signal: Profiling Timer Expired (benutzt für statistische Leistungsanalyse/Profiling, beendet den Prozeß)
SIGWINCH - Signal: Window size Change (Wird an einen Prozeß gesendet wenn sich die Größe des Terminalfensters ändert. Standardmäßig wird das Signal ignoriert.)
SIGIO - Signal: Input/Output now possible (Ein Programm bekommt dieses Signal wenn ein E/A möglich wurde. Siehe fcntl(2); Standardmäßig wird das Programm geschlossen.)
SIGPWR - Signal: Powerfail (Wird ausschließlich an Init gesendet wenn der
Kernel einen Spannungsausfall erkannt hat und an einer USVB läuft.)
SIGSYS - Signal: Bad argument to routine (Falsches Argument an eine Routine, Standardmäßig wird das Programm geschlossen.)