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

Поделись знанием:
Перейти к: навигация, поиск

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

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

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



Примечания

  1. 1 2 Roscoe A. W. The Theory and Practice of Concurrency. — Prentice Hall, 1997. — ISBN 0-13-674409-5.
  2. INMOS. [www.wotug.org/occam/documentation/oc21refman.pdf occam 2.1 Reference Manual]. — SGS-THOMSON Microelectronics Ltd.., INMOS document 72 occ 45 03
  3. [golang.org/doc/go_faq.html#csp Language Design FAQ: Why build concurrency on the ideas of CSP?].
  4. Hoare, C. A. R. (1978). «Communicating sequential processes». Communications of the ACM 21 (8): 666–677. DOI:10.1145/359576.359585.
  5. Abdallah Ali E. [www.springer.com/computer/theoretical+computer+science/foundations+of+computations/book/978-3-540-25813-1 Communicating Sequential Processes: The First 25 Years]. — Springer, 2005. — Vol. 3525.
  6. Barrett, G. (1995). «Model checking in practice: The T9000 Virtual Channel Processor». IEEE Transactions on Software Engineering 21 (2): 69–78. DOI:10.1109/32.345823.
  7. Hall, A (2002). «[www.anthonyhall.org/c_by_c_secure_system.pdf Correctness by construction: Developing a commercial secure system]» (PDF). IEEE Software 19 (1): 18–25. DOI:10.1109/52.976937.
  8. Creese, S. (2001). «Data Independent Induction: CSP Model Checking of Arbitrary Sized Networks» (Oxford University).

Литература

  • Хоар Ч. Взаимодействующие последовательные процессы. — М.: Мир, 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.

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

В Николин день, в именины князя, вся Москва была у подъезда его дома, но он никого не велел принимать; а только немногих, список которых он передал княжне Марье, велел звать к обеду.
Метивье, приехавший утром с поздравлением, в качестве доктора, нашел приличным de forcer la consigne [нарушить запрет], как он сказал княжне Марье, и вошел к князю. Случилось так, что в это именинное утро старый князь был в одном из своих самых дурных расположений духа. Он целое утро ходил по дому, придираясь ко всем и делая вид, что он не понимает того, что ему говорят, и что его не понимают. Княжна Марья твердо знала это состояние духа тихой и озабоченной ворчливости, которая обыкновенно разрешалась взрывом бешенства, и как перед заряженным, с взведенными курками, ружьем, ходила всё это утро, ожидая неизбежного выстрела. Утро до приезда доктора прошло благополучно. Пропустив доктора, княжна Марья села с книгой в гостиной у двери, от которой она могла слышать всё то, что происходило в кабинете.
Сначала она слышала один голос Метивье, потом голос отца, потом оба голоса заговорили вместе, дверь распахнулась и на пороге показалась испуганная, красивая фигура Метивье с его черным хохлом, и фигура князя в колпаке и халате с изуродованным бешенством лицом и опущенными зрачками глаз.
– Не понимаешь? – кричал князь, – а я понимаю! Французский шпион, Бонапартов раб, шпион, вон из моего дома – вон, я говорю, – и он захлопнул дверь.
Метивье пожимая плечами подошел к mademoiselle Bourienne, прибежавшей на крик из соседней комнаты.
– Князь не совсем здоров, – la bile et le transport au cerveau. Tranquillisez vous, je repasserai demain, [желчь и прилив к мозгу. Успокойтесь, я завтра зайду,] – сказал Метивье и, приложив палец к губам, поспешно вышел.
За дверью слышались шаги в туфлях и крики: «Шпионы, изменники, везде изменники! В своем доме нет минуты покоя!»
После отъезда Метивье старый князь позвал к себе дочь и вся сила его гнева обрушилась на нее. Она была виновата в том, что к нему пустили шпиона. .Ведь он сказал, ей сказал, чтобы она составила список, и тех, кого не было в списке, чтобы не пускали. Зачем же пустили этого мерзавца! Она была причиной всего. С ней он не мог иметь ни минуты покоя, не мог умереть спокойно, говорил он.
– Нет, матушка, разойтись, разойтись, это вы знайте, знайте! Я теперь больше не могу, – сказал он и вышел из комнаты. И как будто боясь, чтобы она не сумела как нибудь утешиться, он вернулся к ней и, стараясь принять спокойный вид, прибавил: – И не думайте, чтобы я это сказал вам в минуту сердца, а я спокоен, и я обдумал это; и это будет – разойтись, поищите себе места!… – Но он не выдержал и с тем озлоблением, которое может быть только у человека, который любит, он, видимо сам страдая, затряс кулаками и прокричал ей:
– И хоть бы какой нибудь дурак взял ее замуж! – Он хлопнул дверью, позвал к себе m lle Bourienne и затих в кабинете.