Abstract

Concurrent C (ConcC) [1] is a relatively new language that extends the C programming language [2] by incorporating multitasking facilities. These facilities are mainly based on the bidirectional rendez-vous concept, and they offer flexible and efficient mechanisms for the specification of concurrency, communication and synchronization often required in real-time systems. However, as for most real-time and concurrent programming languages such as Ada [3], the description of multitasking facilities in ConcC is lacking a rigorous and formal semantical definition. Most existing introductory materials to ConcC by its authors are informally described, and cannot be easily understood. In this paper, we explain the semantics of multitasking facilities in ConcC using the Petri net model. As is well known, the Petri net model is a formal graphical model that can describe concurrent behaviours of systems in a natural and intuitive manner, and yet it is based on strong mathematical and semantical foundations. Timed, inhibitor arc and predicate Petri nets are extensions that are used to enhance the expressive power of the basic Petri net to model and explain all ConcC multitasking features.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.