<?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=Communicating_Sequential_Processes</id>
	<title>Communicating Sequential Processes - 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=Communicating_Sequential_Processes"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Communicating_Sequential_Processes&amp;action=history"/>
	<updated>2026-05-18T20:09:18Z</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=Communicating_Sequential_Processes&amp;diff=188375&amp;oldid=prev</id>
		<title>imported&gt;T. Wirbitzki: /* Anwendungen */ wl</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Communicating_Sequential_Processes&amp;diff=188375&amp;oldid=prev"/>
		<updated>2026-02-15T22:15:46Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Anwendungen: &lt;/span&gt; wl&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Communicating Sequential Processes&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;CSP&amp;#039;&amp;#039;&amp;#039;) ist eine von [[Tony Hoare]] an der [[Universität Oxford]] entwickelte [[Prozessalgebra]] zur Beschreibung von [[Interaktion]] zwischen kommunizierenden [[Prozess (Computer)|Prozessen]]. Die Idee wurde als [[imperative Sprache]] 1978 von Tony Hoare vorgestellt, dann von ihm zu einer formalen Algebra ausgebaut und 1985 mit der Veröffentlichung des Buchs mit dem gleichnamigen Titel &amp;#039;&amp;#039;Communicating Sequential Processes&amp;#039;&amp;#039; berühmt. Dieses Buch war 2003 laut [[CiteSeer]] bereits das dritthäufigst zitierte Werk der [[Informatik]].&amp;lt;ref&amp;gt;[http://citeseer.ist.psu.edu/articles.html CiteSeer Statistik]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Als Abgrenzung zur ursprünglichen imperativen Sprache&amp;amp;nbsp;CSP wird die Prozessalgebra teilweise auch als &amp;#039;&amp;#039;&amp;#039;Theoretical Communicating Sequential Processes&amp;#039;&amp;#039;&amp;#039;&amp;amp;nbsp;(&amp;#039;&amp;#039;&amp;#039;TCSP&amp;#039;&amp;#039;&amp;#039;) bezeichnet.&lt;br /&gt;
&lt;br /&gt;
== Anwendungen ==&lt;br /&gt;
* Die [[Programmiersprache]]n [[Go (Programmiersprache)|Go]]&amp;lt;ref&amp;gt;{{Internetquelle | url=https://godoc.org/github.com/thomas11/csp | titel=Google Go package csp | sprache=en | datum= | abruf=2019-06-26}}&amp;lt;/ref&amp;gt;, [[Occam]] und [[Crystal (Programmiersprache)|Crystal]] beinhalten praktische [[Implementierung]]en der&amp;amp;nbsp;CSP.&lt;br /&gt;
* [[JCSP]] (Communicating Sequential Processes for Java) ist die Verbindung von&amp;amp;nbsp;CSP- und Occam-Konzepten in einer [[Java (Programmiersprache)|Java]]-[[Application Programming Interface|API]].&lt;br /&gt;
* Mit C++CSP2 ist eine entsprechende [[Implementierung]] für&amp;amp;nbsp;[[C++]] verfügbar.&lt;br /&gt;
* das [[Message Passing Interface]]&lt;br /&gt;
* die [[Parallele Virtuelle Maschine|Parallel Virtual Machine]].&lt;br /&gt;
&lt;br /&gt;
== Auszug aus der Syntax und Semantik ==&lt;br /&gt;
* CSP verwendet Großbuchstaben für [[Automat (Informatik)|Zustände des Automaten]] sowie Kleinbuchstaben für [[Ereignis]]se. Die durch Ereignisse ausgelösten [[Transitionssystem|Zustandsübergänge]] werden durch einen Pfeil&amp;amp;nbsp;(→) gekennzeichnet.&lt;br /&gt;
** &amp;lt;code&amp;gt;(x → B)&amp;lt;/code&amp;gt; &amp;amp;nbsp; Auf das Ereignis&amp;amp;nbsp;x folgt der Zustand&amp;amp;nbsp;B&lt;br /&gt;
** &amp;lt;code&amp;gt;(x → y → B)&amp;lt;/code&amp;gt; &amp;amp;nbsp; Auf die Ereignisfolge x und dann&amp;amp;nbsp;y folgt Zustand&amp;amp;nbsp;B&lt;br /&gt;
&lt;br /&gt;
* In CSP werden bedingte Ereignisse durch Angabe des Auswahloperators | definiert.&lt;br /&gt;
** &amp;lt;code&amp;gt;(x → A | y → B)&amp;lt;/code&amp;gt; &amp;amp;nbsp; Wenn Ereignis x, dann Zustand A. Wenn Ereignis y, dann Zustand B&lt;br /&gt;
&lt;br /&gt;
* Die Menge der Zustände und Ereignisse, die ein über CSP definierter Automat akzeptiert, wird durch das [[Alphabet]] αP angegeben. Jeder Automat enthält einen zusätzlichen Zustand STOP in αP, aus dem ein weiterer Zustandsübergang per Definition nicht mehr erlaubt ist.&lt;br /&gt;
&lt;br /&gt;
* Sequentielle [[Komposition (Mathematik)|Komposition]] wird durch das Einführen von Zwischenzuständen ermöglicht.&lt;br /&gt;
** &amp;lt;code&amp;gt;P = (x → A), A = (y → B)&amp;lt;/code&amp;gt; &amp;amp;nbsp; ist äquivalent zu&lt;br /&gt;
** &amp;lt;code&amp;gt;P = (x → y → B)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Die Parallelschaltung von Prozessen, die dieser Prozessalgebra den Namen gab, wird durch die Angabe des Symbols || erreicht.&lt;br /&gt;
** &amp;lt;code&amp;gt;P = (a → (b → P | x →  b → P))&amp;lt;/code&amp;gt; &amp;amp;nbsp; mit &amp;amp;nbsp; αP = {a, b, x}&lt;br /&gt;
** &amp;lt;code&amp;gt;Q = (a → b → Q | y → b → Q)&amp;lt;/code&amp;gt; &amp;amp;nbsp; mit &amp;amp;nbsp; αQ = {a, b, y}&lt;br /&gt;
** &amp;lt;code&amp;gt;P || Q&amp;lt;/code&amp;gt; &amp;amp;nbsp; akzeptiert alle Zeichenfolgen {ab, axb, yb} sowie beliebige sequentielle Kombinationen&lt;br /&gt;
&lt;br /&gt;
* [[Rekursion]]en sind möglich.&lt;br /&gt;
** &amp;lt;code&amp;gt;P = (x → y → P)&amp;lt;/code&amp;gt; &amp;amp;nbsp; generiert die unendliche Abfolge der Ereignisse xyxyxy…&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.usingcsp.com/ Elektronische Version des Originalbuchs zu CSP von Tony Hoare]&lt;br /&gt;
* [http://www.cs.kent.ac.uk/projects/ofa/c++csp C++CSP2 der University of Kent]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Theoretische Informatik]]&lt;br /&gt;
[[Kategorie:Parallelverarbeitung]]&lt;br /&gt;
[[Kategorie:Logikkalkül]]&lt;/div&gt;</summary>
		<author><name>imported&gt;T. Wirbitzki</name></author>
	</entry>
</feed>