Summary


This chapter has introduced the concept of a process, explained how we model processes and described Java threads as implementations of processes. In particular:

  • The execution of a program (or subprogram) is termed a process. Processes are the units of concurrent activity used in concurrent programming.

  • A process can be modeled as a state machine in which the transitions are atomic or indivisible actions executed by the process. We use LTS, Labeled Transition Systems, to represent state machines.

  • State machines are described concisely using FSP, a simple process algebra. The chapter introduced the action prefix, “-> ”, and choice, “|”, operators in addition to the use of recursion, index sets and guards.

  • Our notations do not distinguish input actions from outputs. However, inputs usually form part of a choice offered to the environment of a process while outputs do not.

  • We have used Java threads to show how processes are implemented and how they are used in programs. Java threads are an example of lightweight processes, in the terminology of operating systems.




Concurrency(c) State Models & Java Programs
Concurrency: State Models and Java Programs
ISBN: 0470093552
EAN: 2147483647
Year: 2004
Pages: 162

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net