Communicating sequential processes
Communicating sequential processes
An introduction to LOTOS: learning by examples
Computer Networks and ISDN Systems - Formal description technique (FDT) languages for protocols
Analysis of inheritance anomaly in object-oriented concurrent programming languages
Research directions in concurrent object-oriented programming
Specification and design of embedded systems
Specification and design of embedded systems
A classical mind
Software engineering (5th ed.)
Software engineering (5th ed.)
Communication and concurrency
Object-oriented application frameworks
Communications of the ACM
Multithreaded programming with Pthreads
Multithreaded programming with Pthreads
Implementing application frameworks: object-oriented frameworks at work
Implementing application frameworks: object-oriented frameworks at work
Concurrent Systems: Formal Development in CSP
Concurrent Systems: Formal Development in CSP
Concurrent Programming in Java: Design Principles and Patterns
Concurrent Programming in Java: Design Principles and Patterns
The Theory and Practice of Concurrency
The Theory and Practice of Concurrency
Specification of Software Systems
Specification of Software Systems
Concurrent and Real Time Systems: The CSP Approach
Concurrent and Real Time Systems: The CSP Approach
Operating System Concepts, 4th Ed.
Operating System Concepts, 4th Ed.
Formal Methods: Promises and Problems
IEEE Software
Partitioning and Exploration Strategies in the TOSCA Co-Design Flow
CODES '96 Proceedings of the 4th International Workshop on Hardware/Software Co-Design
A Co-Design Methodology Based on Formal Specification and High-level Estimation
CODES '96 Proceedings of the 4th International Workshop on Hardware/Software Co-Design
Bridging CSP and C++ with Selective Formalism and Executable Specifications
MEMOCODE '03 Proceedings of the First ACM and IEEE International Conference on Formal Methods and Models for Co-Design
Csp++: an object-oriented application framework for software synthesis from csp specifications
Csp++: an object-oriented application framework for software synthesis from csp specifications
Portable multithreading: the signal stack trick for user-space thread creation
ATEC '00 Proceedings of the annual conference on USENIX Annual Technical Conference
Synthesis of C++ software for automated teller from CSPm specifications
Proceedings of the 2005 ACM symposium on Applied computing
CSP as a coordination language
COORDINATION'11 Proceedings of the 13th international conference on Coordination models and languages
Hi-index | 0.00 |
CSP (communicating sequential processes) is a useful algebraic notation for creating a hierarchical behavioral specification for concurrent systems, due to its formal interprocess synchronization and communication semantics. CSP specifications are amenable to simulation and formal verification by model-checking tools. A translator has been created to synthesize C++ code from CSP for execution with an object-oriented framework called CSP++, thereby making CSP specifications directly executable. To overcome the drawback that CSP is neither a full-featured nor popular programming language, an approach called “selective formalism” allows the use of CSP to be limited to specifying the control portion of a system, while the rest of its functionality is supplied in the form of C++ modules. These are activated through association with abstract events in the CSP specification. This is a new means of bringing convergence between a formal method and a popular programming language. It is believed that this methodology can be extended to hardware/software codesign for embedded systems.