<?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=Prozesssynchronisation</id>
	<title>Prozesssynchronisation - 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=Prozesssynchronisation"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Prozesssynchronisation&amp;action=history"/>
	<updated>2026-05-25T23:07:02Z</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=Prozesssynchronisation&amp;diff=264640&amp;oldid=prev</id>
		<title>imported&gt;PerfektesChaos: tk k</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Prozesssynchronisation&amp;diff=264640&amp;oldid=prev"/>
		<updated>2016-09-24T13:23:49Z</updated>

		<summary type="html">&lt;p&gt;tk k&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;In der [[Programmierung]] versteht man unter &amp;#039;&amp;#039;&amp;#039;Prozesssynchronisation&amp;#039;&amp;#039;&amp;#039; (oder kurz einfach &amp;#039;&amp;#039;Synchronisation&amp;#039;&amp;#039;) die Koordinierung des zeitlichen Ablaufs mehrerer [[Nebenläufigkeit|nebenläufiger]] [[Prozess (Computer)|Prozesse]] bzw. [[Thread (Informatik)|Threads]]. Dabei ist es unerheblich, ob es sich um Threads in einem Programm, um Programme auf einem [[Computer]] oder um Prozesse in einem [[Verteiltes System|Verteilten System]] handelt, die über ein [[Rechnernetz|Netzwerk]] kommunizieren.&lt;br /&gt;
&lt;br /&gt;
Der Zweck der Koordinierung ist zumeist einer der folgenden:&lt;br /&gt;
* Gemeinsamer Zugriff auf [[Daten]]. Dabei muss verhindert werden, dass durch gleichzeitigen Zugriff [[Konsistenz (Datenspeicherung)|Inkonsistenzen]] in den Daten entstehen. Dies wird durch [[Mutex]]-Verfahren zum gegenseitigen Ausschluss realisiert.&lt;br /&gt;
* Gemeinsame Nutzung beschränkter [[Betriebsmittel (Informatik)|Betriebsmittel]] wie zum Beispiel von [[Peripheriegerät]]en. Hierbei können ebenfalls [[Mutex]]-Verfahren eingesetzt werden, häufig werden aber komplexere Methoden des [[Scheduling]]s benötigt.&lt;br /&gt;
* Übergabe von [[Daten]] bzw. [[Nachricht]]en von einem Prozess an einen Anderen, also [[Interprozesskommunikation]].&lt;br /&gt;
* Steuerung von Unterprozessen durch [[Signal (Computer)|Signale]], insbesondere das Abbrechen von Prozessen oder das Warten darauf, dass sie terminieren.&lt;br /&gt;
&lt;br /&gt;
Die [[Synchronisation]] der Prozesse besteht nun darin, dass im Allgemeinen ein Prozess auf ein [[Ereignis]] warten muss, das von einem anderen ausgelöst wird. Es ist Aufgabe des [[Prozess-Scheduler|Schedulers]], die sich daraus ergebenden [[Kausalität|kausalen Abhängigkeiten]] so umzusetzen, dass ein Prozess immer nur dann [[Rechenzeit]] bekommt, wenn alle dafür notwendigen Bedingungen erfüllt sind. Konkret wird dies meist durch die klassischen Kontrollmechanismen wie [[Lock]]s, [[Semaphor (Informatik)|Semaphore]] und [[Monitor (Informatik)|Monitore]] gelöst.&lt;br /&gt;
&lt;br /&gt;
Die Abhängigkeiten zwischen den Prozessen lassen sich formal zum Beispiel durch ein [[Petri-Netz]] modellieren. Ein typisches Problem ist in diesem Zusammenhang, dass sich Prozesse [[Verklemmung|verklemmen]] können, wenn sich [[zirkuläre Abhängigkeiten]] bilden – das wird zum Beispiel bei dem Problem der [[Speisende Philosophen|speisenden Philosophen]] deutlich. Ein anderes prototypisches Problem ist die Steuerung eines [[Erzeuger-Verbraucher-Problem|Producer/Consumer-Systems]].&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Paralleler Algorithmus]]&lt;br /&gt;
* [[Nichtsequentielle Programmierung]]&lt;br /&gt;
* [[Parallelisierung]]&lt;br /&gt;
* [[Multithreading]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* {{Literatur&lt;br /&gt;
   |Autor=James H. Anderson, Yong-Jik Kim, Ted Herman&lt;br /&gt;
   |Titel=Shared-memory mutual exclusion: major research trends since 1986&lt;br /&gt;
   |Sammelwerk=Distrib. Comput.&lt;br /&gt;
   |Band=16&lt;br /&gt;
   |Nummer=2-3&lt;br /&gt;
   |Verlag=Springer-Verlag&lt;br /&gt;
   |Ort=London&lt;br /&gt;
   |Datum=2003-09&lt;br /&gt;
   |ISSN=0178-2770&lt;br /&gt;
   |Seiten=75–110&lt;br /&gt;
   |DOI=10.1007/s00446-003-0088-6}}&lt;br /&gt;
* {{Literatur&lt;br /&gt;
   |Autor=M. Raynal, D. Beeson&lt;br /&gt;
   |Titel=Algorithms for mutual exclusion&lt;br /&gt;
   |Verlag=MIT Press&lt;br /&gt;
   |Ort=Cambridge MA&lt;br /&gt;
   |Datum=1986&lt;br /&gt;
   |ISBN=0-262-18119-3}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Parallelverarbeitung]]&lt;/div&gt;</summary>
		<author><name>imported&gt;PerfektesChaos</name></author>
	</entry>
</feed>