<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Signal_%28Unix%29</id>
	<title>Signal (Unix) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Signal_%28Unix%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Signal_(Unix)&amp;action=history"/>
	<updated>2026-05-26T19:12:08Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Signal_(Unix)&amp;diff=139595&amp;oldid=prev</id>
		<title>imported&gt;Aka: Tippfehler entfernt, Kleinkram</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Signal_(Unix)&amp;diff=139595&amp;oldid=prev"/>
		<updated>2025-07-27T15:38:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php?title=Benutzer:Aka/Tippfehler_entfernt&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer:Aka/Tippfehler entfernt (Seite nicht vorhanden)&quot;&gt;Tippfehler entfernt&lt;/a&gt;, Kleinkram&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Bei Verwendung des [[Betriebssystem]]s [[Unix]] ist ein &amp;#039;&amp;#039;&amp;#039;Signal&amp;#039;&amp;#039;&amp;#039; eine Systemnachricht an einen laufenden [[Prozess (Informatik)|Prozess]]. Signale sind eine primitive Form der [[Interprozesskommunikation]]. Die meisten Signale bewirken auch eine Aktion – meist das Beenden des Prozesses. Andere hingegen dienen lediglich der Information (z.&amp;amp;nbsp;B. SIGWINCH) oder können einen Prozess anhalten (SIGSTOP). Es gibt auch vom Benutzer frei verwendbare Signale (SIGUSR1 und SIGUSR2). Einige Signale können vom Prozess abgefangen oder unterdrückt werden. So fangen z.&amp;amp;nbsp;B. manche Serverprogramme (im Unix-Jargon „[[Daemon]]“) SIGUSR1 oder SIGUSR2 ab und lesen dann ihre Konfigurationsdateien neu ein.&lt;br /&gt;
&lt;br /&gt;
== Gängige UNIX-Signale ==&lt;br /&gt;
Im Folgenden werden die üblichen Signale mit ihren Nummern aufgelistet. Die unterstützten Signale und deren Werte können sich von System zu System unterscheiden. Der POSIX.1-Standard sieht hierbei unterschiedliche numerische Werte abhängig von der verwendeten Hardwarearchitektur vor.&lt;br /&gt;
&lt;br /&gt;
Beim [[Präfix]] SIG handelt es sich jeweils um die [[Kurzwort|Kurzform]] von Signal.&lt;br /&gt;
&lt;br /&gt;
Mit dem Befehl &amp;lt;code&amp;gt;kill -l&amp;lt;/code&amp;gt; werden gewöhnlich alle unterstützten Signalnummern mit den zugehörigen Namen ausgegeben. Die Tabelle unten enthält beispielhaft die folgenden Werte:&lt;br /&gt;
* Spalte A: GNU-C-Bibliothek&lt;br /&gt;
* Spalte B: Linux, Architekturen [[Alpha-Prozessor|Alpha]] und [[SPARC-Architektur|SPARC]]&lt;br /&gt;
* Spalte C: Linux, [[IA-32|x86]], [[x64|AMD64]], [[Arm-Architektur|ARM]] und die meisten anderen [[Prozessorarchitektur]]en&lt;br /&gt;
* Spalte D: Linux, [[MIPS-Architektur|MIPS]]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Signal&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot;|Werte, Synonym&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Bedeutung (englisch)&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Bedeutung (übersetzt)&lt;br /&gt;
! rowspan=&amp;quot;2&amp;quot;|Ursprüngliche Verwendung, Standards&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:center&amp;quot;|A&lt;br /&gt;
! style=&amp;quot;text-align:center&amp;quot;|B&lt;br /&gt;
! style=&amp;quot;text-align:center&amp;quot;|C&lt;br /&gt;
! style=&amp;quot;text-align:center&amp;quot;|D&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGHUP]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|1&lt;br /&gt;
|Hangup detected on controlling terminal or death of controlling process&lt;br /&gt;
|Unterbrechung der Verbindung zum [[Terminal (Computer)|Terminal]]&lt;br /&gt;
|[[System V]];&amp;lt;ref&amp;gt;https://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/signals.html&amp;lt;/ref&amp;gt; [[Portable Operating System Interface|POSIX]] (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGINT (Signal)|SIGINT]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|2&lt;br /&gt;
|Interrupt from keyboard; interactive attention signal.&lt;br /&gt;
|[[Interrupt]] durch die Tastatur; interaktives Warnsignal.&lt;br /&gt;
|[[Varianten der Programmiersprache C|C89]]; POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGQUIT]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|3&lt;br /&gt;
|Quit from keyboard.&lt;br /&gt;
|Beenden durch die Tastatur.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGILL]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|4&lt;br /&gt;
|Illegal instruction.&lt;br /&gt;
|Ungültige Anweisung.&lt;br /&gt;
|C89; POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGTRAP]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|5&lt;br /&gt;
|Trace/breakpoint trap.&lt;br /&gt;
|Haltemarke erreicht.&lt;br /&gt;
|[[Single UNIX Specification|SUSv2]]; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGABRT]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|6&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Abnormal termination; abort signal from abort(3).&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[Prozess (Informatik)#Prozessbeendigung|abnormale Beendigung]].&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |C89; POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGIOT&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGIOT]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|6&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|IOT trap; abort() on a PDP11.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[Berkeley Software Distribution|4.2BSD]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGABRT&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGEMT]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|7&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|7&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGBUS]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|10&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|10&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|7&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|10&lt;br /&gt;
|BUS error (bad memory access).&lt;br /&gt;
|BUS Fehler ([[Speicherzugriffsfehler]]).&lt;br /&gt;
|4.2BSD; SUSv2; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGFPE]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|8&lt;br /&gt;
|„Floating-point exception“: erroneous arithmetic operation.&lt;br /&gt;
|„[[Gleitkommaoperation]] [[Ausnahmefehler]]“: fehlerhafte arithmetische Operation.&lt;br /&gt;
|C89; POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGKILL]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|9&lt;br /&gt;
|Kill, unblockable.&lt;br /&gt;
|Unblockbares Beenden.&lt;br /&gt;
|POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGUSR1]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|30&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|30&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|10&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|16&lt;br /&gt;
|User-defined signal 1.&lt;br /&gt;
|Benutzerdefiniertes Signal 1.&lt;br /&gt;
|POSIX&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGSEGV]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|11&lt;br /&gt;
|„Segmentation violation“: invalid memory reference.&lt;br /&gt;
|„[[Schutzverletzung]]“: ungültige Speicherreferenz.&lt;br /&gt;
|C89; POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGUSR2]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|31&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|31&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|12&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|17&lt;br /&gt;
|User-defined signal 2.&lt;br /&gt;
|Benutzerdefiniertes Signal 2.&lt;br /&gt;
|POSIX&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGPIPE]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|13&lt;br /&gt;
|„Broken pipe“: write to pipe with no readers.&lt;br /&gt;
|„Broken [[Pipe (Informatik)|pipe]]“: Schreiben auf eine Pipe ohne Empfänger.&lt;br /&gt;
|POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGALRM]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|14&lt;br /&gt;
|Alarm clock timer signal: alarm(2).&lt;br /&gt;
|Wecker Signal: Alarm(2).&lt;br /&gt;
|POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGTERM]]&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|15&lt;br /&gt;
|Termination request.&lt;br /&gt;
|[[Prozess (Informatik)#Prozessbeendigung|Beendigungsanfrage]].&lt;br /&gt;
|C89; POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGSTKFLT]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|16&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|Stack fault on coprocessor (unused).&lt;br /&gt;
|[[Stapelspeicher|Stapelfehler]] auf Coprozessor (unbenutzt).&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGCHLD]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|20&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|20&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|17&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|18&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Child status has changed (stopped or terminated).&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[Prozess (Informatik)#Programmbeispiele|Kindstatus]] wurde geändert (angehalten oder beendet).&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |POSIX (1990)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGCLD&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGCLD]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|20&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Old System V name; child status has changed.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Alte [[System V]] Bezeichnung; Kindstatus wurde geändert.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|System V&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGCHLD&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGCONT]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|19&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|19&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|18&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|25&lt;br /&gt;
|Continue stopped process.&lt;br /&gt;
|Fahre angehaltenen Prozess fort.&lt;br /&gt;
|POSIX&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGSTOP]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|17&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|17&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|19&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|23&lt;br /&gt;
|Stop process, unblockable.&lt;br /&gt;
|Halte Prozess an, unblockierbar.&lt;br /&gt;
|POSIX&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGTSTP]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|18&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|18&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|20&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|24&lt;br /&gt;
|Stop typed at keyboard.&lt;br /&gt;
|Eingabe von Stop durch die Tastatur.&lt;br /&gt;
|POSIX&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGTTIN]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|21&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|21&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|21&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|26&lt;br /&gt;
|Background read from tty.&lt;br /&gt;
|Lesen vom [[Terminal (Computer)|Terminal]] im Hintergrund&lt;br /&gt;
|POSIX&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGTTOU]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|22&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|22&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|22&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|27&lt;br /&gt;
|Background write to tty&lt;br /&gt;
|Schreiben auf ein Terminal im Hintergrund.&lt;br /&gt;
|POSIX&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGURG]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|16&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|16&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|23&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|21&lt;br /&gt;
|Urgent condition on socket: high bandwidth data is available.&lt;br /&gt;
|Wichtiger Zustand auf Socket: Daten mit hoher Bandbreite sind verfügbar.&lt;br /&gt;
|4.2BSD; SUSv2; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGXCPU]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|24&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|24&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|24&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|30&lt;br /&gt;
|CPU time limit exceeded.&lt;br /&gt;
|Prozessorzeitbegrenzung überschritten.&lt;br /&gt;
|4.2BSD; SUSv2; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGXFSZ]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|25&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|25&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|25&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|31&lt;br /&gt;
|File size limit exceeded.&lt;br /&gt;
|Dateigrößenbeschränkung überschritten.&lt;br /&gt;
|4.2BSD; SUSv2; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGVTALRM]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|26&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|26&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|26&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|28&lt;br /&gt;
|Virtual alarm clock.&lt;br /&gt;
|Virtueller Wecker.&lt;br /&gt;
|4.2BSD; SUSv2; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGPROF]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|27&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|27&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|27&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|29&lt;br /&gt;
|Profiling alarm clock timer expired.&lt;br /&gt;
|&lt;br /&gt;
|4.2BSD; SUSv2; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGWINCH]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|28&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|28&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|20&lt;br /&gt;
|Window size change.&lt;br /&gt;
|Fenstergröße änderte sich.&lt;br /&gt;
|4.3BSD; Sun&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGPOLL]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|23&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|23/–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|29/–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|23/–&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Pollable event occurred.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Abfragbares Ereignis aufgetreten.&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |System V; SUSv2; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGIO&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGIO]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|23&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|23&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|29&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|23&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|I/O now possible.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[Eingabe und Ausgabe|I/O]] jetzt möglich.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|4.2BSD&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGPOLL&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGINFO]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|(29)&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Status request from keyboard.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Statusanfrage durch die Tastatur.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[macOS]]&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGPWR&lt;br /&gt;
|-&lt;br /&gt;
|[[SIGLOST]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|(29)/–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|Unused; only on Sparc: file lock lost.&lt;br /&gt;
|Unbenutzt; nur unter Sparc: Dateisperre verloren.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGPWR]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|(29)&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|30&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|19&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Power failure restart.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Stromausfall bedingter Neustart.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|System V&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGINFO&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGSYS]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|12&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|12&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|31&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|12&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Bad system call.&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|ungültiger [[Systemaufruf]].&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |System Vr4; SUSv2; POSIX (2001)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGUNUSED&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|[[SIGUNUSED]]&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|12&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|31/–&lt;br /&gt;
|style=&amp;quot;text-align:center&amp;quot;|–&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align:center&amp;quot;|SIGSYS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Neuere [[Linux]]-Versionen verwenden neben den üblichen 31 Signalnummern noch bis zu 32 weitere Signale als Echtzeit (&amp;#039;&amp;#039;R&amp;#039;&amp;#039;eal-&amp;#039;&amp;#039;T&amp;#039;&amp;#039;ime) Signale: von [[SIGRTMIN]], je nach C-Bibliothek 33, 34 oder 35, bis [[SIGRTMAX]] (64).&lt;br /&gt;
&lt;br /&gt;
== Aktionen ==&lt;br /&gt;
Durch ein Signal kann jeweils eine der folgenden Aktionen ausgelöst werden:&lt;br /&gt;
* Anhalten (nicht beenden) des [[Prozess (Informatik)|Prozesses]].&lt;br /&gt;
* Fortsetzen des zuvor angehaltenen Prozesses.&lt;br /&gt;
* Beenden des Prozesses ohne einen [[Dump|Speicherauszug]]. Der Elternprozess kann die Signalnummer ermitteln. In den Ergebnissen der Funktionen &amp;lt;code&amp;gt;wait&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;waitpid&amp;lt;/code&amp;gt; usw. ist die Nummer enthalten.&amp;lt;ref&amp;gt;https://manpages.ubuntu.com/manpages/kinetic/man2/waitpid.2.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Beenden des Prozesses mit Schreiben eines [[Dump|Speicherauszugs]].&lt;br /&gt;
:Bei vielen Systemen kann der Speicherauszug begrenzt werden (z.&amp;amp;nbsp;B. in der [[Bash (Shell)|&amp;lt;code&amp;gt;bash&amp;lt;/code&amp;gt;]] durch &amp;lt;code&amp;gt;ulimit -c&amp;lt;/code&amp;gt;).&lt;br /&gt;
:Die Signalnummer ist im Speicherauszug enthalten. Der Elternprozess kann die Signalnummer genauso wie beim Beenden ohne Speicherauszug ermitteln.&lt;br /&gt;
* Ignorieren des Signals.&lt;br /&gt;
* Aufrufen eines [[Unterprogramm]]s (Signalhandler) zum Bearbeiten des Signals, dies wird &amp;#039;&amp;#039;abfangen&amp;#039;&amp;#039; genannt. Der Signalhandler muss vom Prozess eingestellt werden, bevor signalisiert wird. Der Signalhandler läuft innerhalb des Prozesses und kann auf die Daten des Prozesses zugreifen.&lt;br /&gt;
&lt;br /&gt;
Bis auf die letzte Aktion (Signalhandler) kommen die Aktionen als standard (default) Aktion vor.&lt;br /&gt;
&lt;br /&gt;
== Aktion ändern ==&lt;br /&gt;
Außer bei den Signalen SIGKILL und SIGSTOP ist die Reaktion auf ein Signal durch den Prozess einstellbar. Dazu gibt es mehrere Möglichkeiten. Ein Verfahren ist in [[System&amp;amp;nbsp;V]] und [[ANSI C]] durch die Funktion &amp;lt;code&amp;gt;signal&amp;lt;/code&amp;gt;&amp;lt;ref&amp;gt;https://manpages.org/signal/2&amp;lt;/ref&amp;gt; implementiert.&lt;br /&gt;
Diese Funktion ist aus vielen Programmumgebungen erreichbar, z.&amp;amp;nbsp;B. &amp;lt;code&amp;gt;trap&amp;lt;/code&amp;gt; bei den üblichen Shells oder die Funktion &amp;lt;code&amp;gt;signal&amp;lt;/code&amp;gt; im gleichnamigen Modul der Programmiersprache [[Python (Programmiersprache)|Python]].&amp;lt;ref&amp;gt;https://docs.python.org/3/library/signal.html&amp;lt;/ref&amp;gt; Daneben gibt es in der [[Berkeley Software Distribution]] (BSD) Möglichkeiten, Signale zu blockieren und später zu verarbeiten (&amp;lt;code&amp;gt;sigvec&amp;lt;/code&amp;gt; usw.).&amp;lt;ref&amp;gt;https://linux.die.net/man/3/sigvec&amp;lt;/ref&amp;gt; Weiterhin gibt es den [[POSIX]] Standard (&amp;lt;code&amp;gt;sigaction&amp;lt;/code&amp;gt;).&amp;lt;ref&amp;gt;https://manpages.ubuntu.com/manpages/trusty/man2/sigaction.2.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Signal wird durch einen einfachen Datentyp, eine Nummer, repräsentiert, die üblicherweise als [[Symbolische Konstante]] angegeben wird. Der [[Compiler|Übersetzer]] oder [[Interpreter]] ermittelt zum Symbol die Nummer. Das ermöglicht die Übertragung von Programmen auf anderen (Unix-)Plattformen, ohne die Symbole zu ändern. POSIX gibt für verschiedene Hardwareplattformen unterschiedliche Zahlen für die Signale an. Die Signalnummern werden durch Dateien wie &amp;lt;code&amp;gt;signal.h&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;signal.py&amp;lt;/code&amp;gt; und ähnlichen bekannt gemacht.&lt;br /&gt;
&lt;br /&gt;
Der Signalhandler ist eine einfache Funktion, die die Signalnummer als [[Parameter (Informatik)|Parameter]] bekommt. Bei BSD und POSIX gibt es weitere Parameter. Der Signalhandler kann im Programm Variablen setzen und Funktionen aufrufen (z.&amp;amp;nbsp;B. &amp;lt;code&amp;gt;exit&amp;lt;/code&amp;gt; um den Prozess zu beenden).&lt;br /&gt;
&lt;br /&gt;
Die oben genannten Funktionen kennen als Signalhandler besondere symbolische Konstanten:&lt;br /&gt;
* SIG_DFL stellt die normale, default Aktion des Signals ein.&lt;br /&gt;
* SIG_IGN führt zum Ignorieren des Signals.&lt;br /&gt;
&lt;br /&gt;
== Signalquellen ==&lt;br /&gt;
&lt;br /&gt;
Die Quelle eines Signals kann in verschiedenen Schichten des Systems liegen, sei es Hardware, Kernel, Gerätetreiber oder Anwendungssoftware.&lt;br /&gt;
Hardware und Software ändern sich mit dem technischen Fortschritt.&lt;br /&gt;
Trotz Standardisierungen ist manches uneinheitlich.&lt;br /&gt;
Der POSIX Standard sieht Abweichungen vor.&lt;br /&gt;
&lt;br /&gt;
* [[CPU]] (englisch Central Processing Unit) zentrale Arbeitseinheit.&lt;br /&gt;
:Hier entstehen Signale wie [[SIGILL]] (ungültiger Opcode) und [[SIGTRAP]].&lt;br /&gt;
&lt;br /&gt;
* CPU / [[Gleitkommaeinheit|FPU]] (englisch Floating Point Unit) Recheneinheit.&lt;br /&gt;
:Hier entstehen Signale wie [[SIGFPE]] (englisch Floating Point Error, Rechenfehler).&lt;br /&gt;
:Ein leicht zu reproduzierende Rechenfehler ist die Division durch Null.&lt;br /&gt;
&lt;br /&gt;
* CPU / [[Memory Management Unit|MMU]] (englisch Memory Management Unit) Speicherverwaltungseinheit.&lt;br /&gt;
:Hier entstehen Signale wie [[SIGBUS]] und [[SIGSEGV]].&lt;br /&gt;
&lt;br /&gt;
* [[Gerätetreiber]]&lt;br /&gt;
:Die ersten drei Signale mit den Nummern eins bis drei sind SIGHUP, SIGINT, SIGQUIT. Sie kommen ursprünglich aus dem Gerätetreiber für [[Terminal (Computer)|Terminals]]. Historisch waren das Treiber für serielle Schnittstellen, heute sind es meist Pseudoterminals.&lt;br /&gt;
&lt;br /&gt;
* [[Kernel (Betriebssystem)|Kernel]].&lt;br /&gt;
:Der Kernel sendet beim Beenden eines Prozesses an den Elternprozess ein Signal [[SIGCLD]] (oder SIGCHLD). Das Erreichen von Ressourcengrenzen signalisiert er mit ([[SIGXCPU]], [[SIGXFSZ]]). Probleme mit einer Pipe signalisiert [[SIGPIPE]]...&lt;br /&gt;
&lt;br /&gt;
* [[Teilsystem|Subsysteme]].&lt;br /&gt;
:In Subsystemen wie Netzwerk oder grafischer Bedienoberfläche entstehen Signale wie [[SIGURG]] (besondere (urgent) Bedingung an einer Netzwerkverbindung) oder [[SIGWINCH]] (Größe eines [[Fenster (Computer)|Fensters]] geändert).&lt;br /&gt;
&lt;br /&gt;
* [[Software]].&lt;br /&gt;
:Soweit der Hersteller das vorsieht, kann Software Signale an andere Prozesse senden und diese können auf das Signal reagieren.&lt;br /&gt;
:Ein Beispiel ist das erneute Auswerten der Konfiguration. Dafür gibt es kein einheitliches Signal, meist wird SIGHUP, SIGUSR1 oder SIGUSR2 verwendet.&lt;br /&gt;
&lt;br /&gt;
Das Beispiel [[SIGHUP]] zeigt, dass Signale (bzw. Signalnummern) unterschiedlich verwendet werden können. Wenn ein Signal normalerweise von einem Gerät erzeugt wird und sicher ist, dass kein Gerät benutzt wird, kann das Signal zu einem anderen Zweck genutzt werden.&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Jürgen Gulbins: &amp;#039;&amp;#039;UNIX&amp;#039;&amp;#039;. Springer Verlag, Berlin / Heidelberg / New York, 3. Auflage 1988, ISBN 3-540-19248-4. (Seite 106 &amp;#039;&amp;#039;Kommandos, Programme, Prozesse&amp;#039;&amp;#039;, Seite 575 &amp;#039;&amp;#039;Systemanschlüsse und C-Bibliotheksfunktionen&amp;#039;&amp;#039;)&lt;br /&gt;
* W. Richard Stevens: &amp;#039;&amp;#039;Programmieren von UNIX-Netzen&amp;#039;&amp;#039;. Aus dem Englischen von Michael Fuese, Werner Maisch, Eberhard Trautwein. Carl Hanser Verlag, München / Wien 1992, ISBN 3-446-16318-2, Kapitel &amp;#039;&amp;#039;2.4 Signale&amp;#039;&amp;#039; Seite 54. (Englische Originalausgabe von Prentice-Hall, ISBN 0-13-928748-5)&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
Das [[Unix-Kommando]] [[Kill (Unix)|kill]] kann verwendet werden, um beliebige Signale unter Unix zu senden.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://wiki.wlug.org.nz/Signal Auflistung und Beschreibung gängiger Signale (englisch)]&lt;br /&gt;
* [http://man7.org/linux/man-pages/man7/signal.7.html Handbuchseite des Betriebssystems Linux]&lt;br /&gt;
* [http://sourceware.org/git/?p=glibc.git;a=blob;f=bits/signum.h;h=1a3e54bfe2e3d795831d717421c55c32aa3e31f0;hb=HEAD Datei „signum.h“ der GNU-C-Bibliothek]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Navigationsleiste Befehle der GNU core utilities}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Unix-Betriebssystemkomponente]]&lt;br /&gt;
[[Kategorie:POSIX-Signal| ]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Aka</name></author>
	</entry>
</feed>