180 likes | 466 Views
Time + CSP=TCSP ( Timed Communication Sequential Processes ). By Sarah Javanmardi S_javanmardi@ce.sharif.edu. Complex large software systems:. They have intricate state and process control - Concurrency - real time interaction Problem:
E N D
Time + CSP=TCSP(TimedCommunication Sequential Processes) By Sarah Javanmardi S_javanmardi@ce.sharif.edu
Complex large software systems: • They have intricate state and process control - Concurrency - real time interaction Problem: To be able initially characterize precisely what is to be built Solution: Developing methods based on math and logic (formal specification) Aim: To construct the model of the system that is in the designers mind
Role of formal specification: • To provide - Unambiguous - Precise description of state, process and timing properties of a computer system.
Introduction to CSP: • CSP designed for describing systems of interacting components.( won Queen’s award in 1990,Tony Hoar’s leadership, Oxford university) • CSP: Event based notation aimed at describing process behavior by sequencing of events (trace) and synchronization of behavior (or communication) between processes. • TCSP extends CSP with timing primitives. (Alfred North Whitehead,Jim Daviies)
CSP Example: TICKET= cash -> ticket -> TICKET CHANGE=cash -> change -> CHANGE MACHINE= TICKET || CHNAGE
The Timed Language: • Goal: Modeling timed sensitive processes TCSP provides facilities for : - Timing behavior in processes - Analyzing real-time behavior - Expecting execution times - Checking time conditions for scheduling
Timed Transitions: • Transition: An execution step • Timed transitions : to describe execution steps of TCSP processes in terms of event transitions and delay transitions. • Evolution transitions
Timed Computational Model: (assumptions) • Instantaneous events (possible instantaneous occurrences, CSP is designed to consider systems in terms of synchronization processes.) • Newtonian time (Global time, Same rate progress) • Real time (non-negative real numbers, no minimal level of granularity) • Maximal parallism (dedicated processes, sufficient resources) • Maximal progress (An event occurs when all participants are ready)
TCSP Syntax and Semantic: • TCSP grammar :
Continued (syntax and semantic): • Timeout • A timed printer TPRINTER = (accept -> print -> STOP) shutdown ->STOP
Continued (syntax and semantic): • Delay: Timeout operator can be used to introduce delays into process description. WAITER= coat order meal bill tip coat STOP NOTE: Events in description of WAITER are synchronization between him and the customer.
Continued (syntax and semantic): • Timed interrupt If the process is permitted for no more than a particular length of time. A party which must be closed down after n hours: PARTYSKIP
Tools for CSP: • FDR • proBE • Deadlock Checker • Casper http://web.comlab.ox.ac.uk/oucl/publications/books/concurrency/tools/ • VisualNets (Timed CSP tool) ted.see.plymouth.ac.uk/pbrooke/ research/ifm-slides-brooke-paige.pdf
Some CSP applications: • The Modeling and Analysis of Security Protocols: the CSP Approach Peter Ryan, Steve Schneider, Michael Goldsmith, Garvin Lowe , Bill Roscoe http://www.cs.rhbnc.ac.uk/books/secprot/ • Communicating Sequential Processes for JavaTM (JCSP) http://www.cs.kent.ac.uk/projects/ofa/jcsp/
CSP archive: • OXFORD Publications university for CSP http://web.comlab.ox.ac.uk/oucl/work/bill.roscoe/pubs
Thanks for your consideration! • Any Question????????????