Взаимодействующие последовательные процессы

Взаимодействующие последовательные процессы (англ. communicating sequential processes, CSP) — формальный язык для описания моделей взаимодействия в параллельных системах[1]. Относится к математическим теориям параллелизма, известных как исчисление процессов (или алгебра процессов), основанных на передаче сообщений по каналам. Оказал влияние на разработку языка Оккам[1][2], Limbo, Go[3].

Теория CSP была впервые описана в статье Чарльза Э. Хоара в 1978 году[4] . Эта первоначальная версия была неудачной, так как не представляла неограниченный индетерминизм. Впоследствии под влиянием идей, заимствованных из модели Акторов Карла Хьюитта, теория была значительно изменена. (В современных CSP Хоара от 1985 года используется неограниченный индетерминизм). C тех пор значительно развита[5]. На практике CSP применялась в качестве инструмента формальной спецификации систем с параллелизмом (concurrency), таких как, например, транспьютера T9000[6] или безопасной системы электронной коммерции[7]. Теория CSP до сих пор является предметом активных исследований в плане расширения практической применимости, в частности, увеличения размеров анализируемых систем[8].

Примечания

  1. Roscoe, A. W. The Theory and Practice of Concurrency (неопр.). Prentice Hall, 1997. — ISBN 0-13-674409-5.
  2. INMOS occam 2.1 Reference Manual (неопр.). — SGS-THOMSON Microelectronics Ltd., 1995., INMOS document 72 occ 45 03
  3. Language Design FAQ: Why build concurrency on the ideas of CSP?.
  4. Hoare, C. A. R. Communicating sequential processes (англ.) // Communications of the ACM : journal. — 1978. Vol. 21, no. 8. P. 666—677. doi:10.1145/359576.359585.
  5. Abdallah, Ali E.; Jones, Cliff B.; Sanders, Jeff W. Communicating Sequential Processes: The First 25 Years (англ.). — Springer, 2005. — Vol. 3525. — (LNCS).
  6. Barrett, G. Model checking in practice: The T9000 Virtual Channel Processor (англ.) // Институт инженеров электротехники и электроники Transactions on Software Engineering : journal. — 1995. Vol. 21, no. 2. P. 69—78. doi:10.1109/32.345823.
  7. Hall, A; Chapman, R. Correctness by construction: Developing a commercial secure system (англ.) // Институт инженеров электротехники и электроники Software : journal. — 2002. Vol. 19, no. 1. P. 18—25. doi:10.1109/52.976937.
  8. Creese, S. Data Independent Induction: CSP Model Checking of Arbitrary Sized Networks (англ.) : journal. Оксфордский университет, 2001. Vol. D. Phil..

Литература

  • Хоар Ч. Взаимодействующие последовательные процессы. М.: Мир, 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.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.