Skip to main content

Data Flow Implementation of Generalized Guarded Commands

  • Conference paper
Parle ’91 Parallel Architectures and Languages Europe

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 505))

  • 708 Accesses

Abstract

Earlier approaches to execute generalized alternative/repetitive commands of Communicating Sequential Processes (CSP) attempt the selection of guards in a sequential order. Also, these implementations are based on either shared memory or message passing multiprocessor systems, which exploit parallelism only among the processes of a CSP program. In contrast, we propose a data flow implementation for CSP with generalized guarded commands in which both inter-process and intra-process concurrencies are exploited. A significant feature of our implementation is that it attempts the selection of guards of a process in parallel. A simulated model empirically demonstrates correctness properties, namely ‘safety’ and ‘liveness’, of our implementation. The simulation experiments are also helpful in obtaining certain efficiency and fairness parameters of the implementation.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Arvind and Gostelow, K.P., “The U Interpreter”, IEEE Computer, vol. 15, no. 2, pp. 42–49, Feb. 1982.

    Article  Google Scholar 

  2. Back, R.J.R, Ekslund, P., and Kurki-Suonia, R., “A Fair and Efficient Implementation of CSP with Output Guards”, Technical Report, Ser. A, No. 38, Abo Akademic, Finland, 1984.

    Google Scholar 

  3. Bagrodia, R., “A Distributed Algorithm to Implement the Generalized Alternative Command in CSP”, In: Proc. of the 6th International Conference on Distributed Computing Systems, pp. 422–427, 1986.

    Google Scholar 

  4. Bagrodia, R., “Synchronization of Asynchronous Processes in CSP, ACM Transactions on Programming Languages and Systems, vol. 11, no. 4, pp. 585–597, 1989.

    Article  Google Scholar 

  5. Barahona, P.M.C.C., and Gurd, J.R., “Processor Allocation in a Multi-ring Data Flow Machine,” Journal of Parallel and Distributed Computing, vol. 3, no. 3, pp. 305–327, 1986.

    Article  Google Scholar 

  6. Bernstein, A.J., “Output Guards and Nondeterminism in Communicating Sequential Processes”, ACM Transactions on Programming Language and Systems, vol. 2, no. 2, pp. 234–238, 1980.

    Article  Google Scholar 

  7. Buckley, G.N. and Silberschatz, A., “An Effective Implementation for the Generalized Input-Output Construct of CSP”, ACM Transactions on Programming Languages and Systems, vol. 5, no. 2, pp. 223–235, 1983.

    Article  Google Scholar 

  8. Davis, A.L. and Keller, R.M., “Data Flow Program Graphs”, IEEE Computer, vol. 15, no. 2, pp. 26–41, Feb. 1982.

    Article  Google Scholar 

  9. Francez, N., Fairness, Springer-Verlag, New York, 1986.

    Book  Google Scholar 

  10. Fujimoto, R.N. and Hwa-chung Feng, “A Shared Memory Algorithm and Proof for the Generalized Alternative Construct in CSP”, International Journal of Parallel Programming, vol. 16, no. 3, pp. 215–241, 1987.

    Article  MathSciNet  Google Scholar 

  11. Gottlieb, A., Grishman, R., Kruskal, C.P., McAuliffe, Rudolph, L., and Snir, M., “The NYU Ultracomputer — Designing an MIMD Shared Memory Parallel Computer”, IEEE Transactions on Computers, vol. 0–32, no. 2, pp. 175–189, 1983.

    Article  Google Scholar 

  12. Govindarajan, R. and Yu. S, “Attempting Guards in Parallel: A Data Flow Approach to Execute Generalized Guarded Commands”, Technical Report # 273, Department of Computer Science, University of Western Ontario, London, May 1990.

    Google Scholar 

  13. Gurd, J.R., Watson, I., and Kirkham, C.C., “The Manchester Prototype Data Flow Computer”, Communications of the ACM, vol. 28, no. 1, pp. 34–52, 1985.

    Article  Google Scholar 

  14. Hoare, C.A.R., “Communicating Sequential Processes”, Communications of the ACM, vol. 21, no. 8, pp. 666–677, 1978.

    Article  Google Scholar 

  15. Kieburtz, R.B. and Silberschatz, A., “Comments on Communicating Sequential Processes”, ACM Transactions on Programming Language and Systems, vol.l, no. 2, pp. 218–225, 1979.

    Article  Google Scholar 

  16. Owicki, S. and Lamport, L., “Proving Liveness Properties of Concurrent Programs”, ACM Transactions on Programming Languages and Systems, vol. 6, no. 2, pp. 455–495, 1982.

    Article  Google Scholar 

  17. Patnaik, L.M. and Basu, J., “Two Tools for Interprocess Communication in Distributed Data Flow Systems”, The Computer Journal, vol. 29, no. 6, pp. 506–521, 1986.

    Article  Google Scholar 

  18. Ramesh, S., “A New Implementation of CSP with Output Guards” In: Proc. of the 7th International Conference on Distributed Computing Systems, pp. 266–273, 1987.

    Google Scholar 

  19. Reed, D.A., Malony, A.D., and McCredie, B.D., “Parallel Discrete Event Simulation: A Shared Memory Approach”, In: Proc. of the ACM SIGMETRIC S Conference on Measuring and Modeling Computer Systems, vol. 15, no.1, pp. 36–38, May 1987.

    Google Scholar 

  20. Silberschatz, A., “Communication and Synchronization in Distributed Systems” IEEE Transactions on Software Engineering, vol.SE-5, no. 6, pp. 542–546, Nov.1979.

    Article  Google Scholar 

  21. Treleaven, P.C., Brownbridge, D.R., and Hopkins, R.P., “Data-Driven and Demand-Driven Architecture”, Computing Surveys, vol. 14, no. 1, pp. 93–143, Mar. 1982.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Govindarajan, R., Yu, S. (1991). Data Flow Implementation of Generalized Guarded Commands. In: Aarts, E.H.L., van Leeuwen, J., Rem, M. (eds) Parle ’91 Parallel Architectures and Languages Europe. Lecture Notes in Computer Science, vol 505. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-25209-3_25

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-25209-3_25

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-23206-4

  • Online ISBN: 978-3-662-25209-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics