CSP-Poster Qasem Abdullah GP04171

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 1

Communicating Sequential Process (CSP)

Theory of Automata and Programming

Introduction Example Formal Description


CSP is a formal language for describing patterns of When describing a simple vending machine, which sells Let e be an event, and x be a set of events. Then
interaction in concurrent systems.[1] It is a member of chocolates, we may be interested in the events coin, the basic syntax of CSP can be defined as:
the family of mathematical theories of concurrency representing insertion of a coin into the machine, and choc,
known as process algebras, or process calculi, based on representing the appearance of a chocolate. A machine
message passing via channels. It was developed at the which demands payment before offering a chocolate can
University of Oxford during the 1980s, principally by C. be written as:
A. R. Hoare. [1]. CSP has been practically applied in
industry as a tool for specifying and verifying the A person who might choose to use a coin or card to make
concurrent aspects of a variety of different systems, such payments could be modelled as:
as the T9000 Transputer,[2] as well as a secure
ecommerce system. These two processes can be put in parallel, so that they can
interact with each other. Thus,
Informal Definition
CSP allows the description of systems in terms of Whereas if synchronization was only required on “coin”,
component processes that operate independently, and we would obtain
interact with each other solely through message-passing
Conclusion
communication. CSP message-passing fundamentally involves a
Primitives If we abstract this latter composite process by hiding the rendezvous between the processes involved in
“coin” and “card” events, i.e. sending and receiving the message. The
relationships between different processes, and the
Primitive This is a process which either offers a “choc” event and way each process communicates with its
Events environment, are described using various process
process then stops, or just stops.
algebraic operators. Using this algebraic approach,
quite complex process descriptions can be easily
constructed from a few primitive elements. CSP
Algebraic
uses explicit channels for message passing.
Operators

References
Prefix Deterministic Non-Deterministic Interleaving Interface 1. Hoare, C. A. R. (1978). "Communicating sequential
Choice Choice Hiding processes". Communications of the ACM 21 (8): 666–67.
parallel 2. Barrett, G. (1995). "Model checking in practice: The T9000
Virtual Channel Processor". IEEE Transactions on Software
Engineering 21 (2): 69–78.

Prof. Dr. ABDULLAH BIN MOHD. ZIN Dr. BAHARI BIN IDRUS QASEM ABDULLAH QASEM AL-TASHI
GP04171

You might also like