Взаимодействующие последовательные процессы
Взаимодействующие последовательные процессы (англ. communicating sequential processes, CSP) — формальный язык для описания моделей взаимодействия в параллельных системах[1]. Относится к математическим теориям параллелизма, известных как исчисление процессов (или алгебра процессов), основанных на передаче сообщений по каналам. Оказал влияние на разработку языков Оккам[1][2], Limbo, Go[3].
Теория CSP была впервые описана в статье Энтони Хоара в 1978 году[4]. Первоначальная версия была неудачной, так как не представляла неограниченный индетерминизм . Впоследствии под влиянием идей, заимствованных из модели акторов Карла Хьюитта теория была значительно изменена. В версиях CSP Хоара от 1985 года уже используется неограниченный индетерминизм; с тех пор теория значительно развита[5] и остаётся предметом активных исследований[6].
На практике CSP применялась в качестве инструмента формальной спецификации систем с параллелизмом, таких как, например, транспьютер T9000[7] или безопасной системы электронной коммерции[8].
Примечания
Литература
- Хоар Ч. Взаимодействующие последовательные процессы. — М.: Мир, 1989. — 264 с. — ISBN 5030010432.
- Ali E. Abdallah, Cliff B. Jones, Jeff W. Sanders. Communicating Sequential Processes. The First 25 Years: Symposium on the Occasion of 25 Years of CSP, London, UK, July 7-8, 2004. Revised Invited Papers. — Springer Science & Business Media, 2005. — ISBN 978-3-540-25813-1.
- A. W. Roscoe. Understanding Concurrent Systems. — Springer Science & Business Media, 2010. — ISBN 978-1-84882-258-0.