Skip to main content

Path Expressions

  • Reference work entry
  • 152 Accesses

Synonyms

Coordination; Concurrency control; Mutual exclusion; Process synchronization

Definition

A path expression is a declaration of the permitted sequences of operations on an object that is shared by parallel processes.

For example, consider a path expression based on a regular expression notation for a shared buffer. The shared buffer may have operations read and write that may only occur in a sequence specified by the regular expression (write; read) where a write to the buffer may be followed by a read before it can be repeated. The reads and writes are mutually exclusive. The expression indicates the sequence of actions that may occur independent of the number of processes or the order in which the processes invoke the operations.

Discussion

Path expressions provide a declarative specification of synchronization and coordination of parallel processes performing operations on an object in parallel computing systems [4]. They provide a language mechanism to separate the...

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   1,600.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD   1,799.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Bibliography

  1. Anantharaman TS, Clarke EM, Mishra B (1986) Compiling path expressions into VLSI circuits. Distrib Comput 1:150–166

    Google Scholar 

  2. Andler S (1979) Predicate path expressions. In: POPL’79 proceedings of the 6th ACM SIGACT-SIGPLAN symposium on principles of programming languages. ACM Press, New York, pp 226–236

    Google Scholar 

  3. Bruegge B, Hibbard P (1983) Generalized path expressions: a high-level debugging mechanism. J Syst Softw 3:265–276 (Elsevier Science Publishing)

    Google Scholar 

  4. Campbell RH (1976) Path expressions: a technique for specifying process synchronization. PhD. Thesis, The University of Newcastle Upon Tyne

    Google Scholar 

  5. Campbell RH, Habermann AN (1974) The specification of process synchronization by path expressions. In: Gelenbe E, Kaiser C (eds) Operating systems. Lecture notes in computer science, vol 16. Springer, Berlin, pp 89–102

    Google Scholar 

  6. Lauer PE, Campbell RH (1979) Formal semantics of a class of high-level primitives for coordinating concurrent processes, Acta Informatica, 5(4):297–332

    MathSciNet  Google Scholar 

  7. Comte D, Durrieu G, Gelly O, Plas A, Syre JC (1978) Parallelism, control and synchronization expression in a single assignment language. ACM SIGPLAN Not 13(1): 25–33

    Google Scholar 

  8. Dinning A, Mishra B (1990) A fully parallel algorithm for implementing path expressions. J Parallel Distrib Comput 10:205–221

    Google Scholar 

  9. Dowsing RD, Elliott R (1986) Programming a bounded buffer using the object and path expression constructs of path pascal. Comput J 29(5):423–429

    MATH  Google Scholar 

  10. Heinlein C (2000) Workflow and process synchronization with interaction expressions and graphs. Ph. D. Thesis (in German), Fakultät für Informatik, Universität Ulm

    Google Scholar 

  11. Hoepner P (1992) Synchronizing the presentation of multimedia objects. Comput Commun 15(9):557–564

    Google Scholar 

  12. Kidd M-EC (1994) Ensuring critical event sequences in high integrity software by applying path expressions. Sandia Labs, Albuquerque

    Google Scholar 

  13. Kolstad RB, Campbell RH (1980) Path Pascal user manual. SIGPLAN Not 15(9):15–24

    Google Scholar 

  14. Laure E (1999) ParBlocks – a new methodology for specifying concurrent method executions in opus. In: Amestoy P, Berger P, Dayde M, Ruiz D, Duff I, Fraysse V, Giraud L (eds) Euro-Par’99. Lecture notes in computer science, vol 1685. Springer, Berlin, pp 925–929

    Google Scholar 

  15. Preiss O, Shah AP, Wegmann A (2003) Generating synchronization contracts for web services. In: Khosrow-Pour M (ed) Information technology and organizations: trends, issues, challenges & solutions, vol 1. Idea Group Publishing, Hershey, pp 593–596

    Google Scholar 

  16. Rees O (1993) Using path expressions as concurrency guards. Technical report, ANSA

    Google Scholar 

  17. Schoute AL, Luursema JJ (1990) Realtime system control by means of path expressions. In: Proceedings Euromicro ’90 Workshop on Real Time, Horsholm, Denmark, pp 79–86

    Google Scholar 

  18. Shaw AC (1978) Software description with flow expressions. IEEE Trans Softw Eng SE-4(3):242–254

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer Science+Business Media, LLC

About this entry

Cite this entry

Campbell, R.H. (2011). Path Expressions. In: Padua, D. (eds) Encyclopedia of Parallel Computing. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-09766-4_283

Download citation

Publish with us

Policies and ethics