Procese secvențiale care interacționează

Interacting sequential processes ( în engleză  communicating sequential processes , CSP ) este un limbaj formal pentru descrierea modelelor de interacțiune în sisteme paralele [1] . Se referă la teoriile matematice ale concurenței cunoscute sub numele de calcul al procesului (sau algebră a proceselor) bazate pe transmiterea de mesaje pe canale. A influențat dezvoltarea limbilor Ockham [1] [2] , Limbo , Go [3] .

Teoria CSP a fost descrisă pentru prima dată într-o lucrare de Anthony Hoare în 1978 [4] . Versiunea originală nu a avut succes deoarece nu a reprezentat indeterminism nerestricționat . Ulterior, sub influența ideilor împrumutate din modelul de actor al lui Carl Hewitt , teoria a fost modificată semnificativ. Versiunile lui Hoare din 1985 ale CSP folosesc deja indeterminismul nerestricționat; de atunci, teoria a fost dezvoltată semnificativ [5] și rămâne subiect de cercetare activă [6] .

În practică, CSP a fost folosit ca instrument formal de specificare pentru sisteme de concurență, cum ar fi transputerul T9000 [7] sau un sistem de comerț electronic securizat [8] .

Note

  1. 1 2 Bill Roscoe. Teoria și practica concurenței . - Prentice Hall , 1997. - ISBN 0-13-674409-5 .
  2. INMOS Manual de referință occam 2.1  (nedefinit) . - SGS-Thompson Microelectronics Ltd., 1995. , document INMOS 72 occ 45 03
  3. Întrebări frecvente despre design lingvistic: De ce să construim concurență pe ideile CSP? . Data accesului: 7 noiembrie 2015. Arhivat din original pe 2 ianuarie 2013.
  4. CAR Hoare. Comunicarea proceselor secvențiale  // Comunicațiile  ACM . - 1978. - Vol. 21 , nr. 8 . - P. 666-677 . - doi : 10.1145/359576.359585 .
  5. Abdallah, Ali E.; Jones, Cliff B.; Sanders, Jeff W. Comunicarea proceselor secvențiale : primii 25 de ani  . - Springer, 2005. - Vol. 3525. - ( LNCS ).
  6. Creese, S. Data Independent Induction: CSP Model Checking of Arbitrary Sized Networks   : journal . - Universitatea Oxford, 2001. - Vol. D. Phil. .
  7. Barrett, G. Verificarea modelului în practică: The T9000 Virtual Channel Processor  //  IEEE Transactions on Software Engineering: journal. - 1995. - Vol. 21 , nr. 2 . - P. 69-78 . - doi : 10.1109/32.345823 .
  8. Sala, A; Chapman, R. Corectitudine prin construcție: Dezvoltarea unui sistem comercial securizat  (engleză)  // IEEE Software : jurnal. - 2002. - Vol. 19 , nr. 1 . - P. 18-25 . - doi : 10.1109/52.976937 .

Literatură