首页 | 本学科首页   官方微博 | 高级检索  
     


Compiling and verifying SC-SystemJ programs for safety-critical reactive systems
Affiliation:1. Escuela de Kinesiología, Facultad de Medicina, Universidad de Valparaíso, Valparaíso, Chile;2. Research Center for Industrial and Technology Management, School of Engineering, University of Minho, 4800-058 Guimarães, Portugal;3. Delft University of Technology, Faculty of Industrial Design Engineering Section Applied Ergonomics and Design, Landbergstraat 15, 2628 CE Delft, The Netherlands;1. Department of Computer Science and Engineering, Tezpur University, Tezpur 784028, India;2. School of Mathematics and Computer Applications, Thapar University, Patiala 147004, India;1. Cukurova University, Faculty of Engineering and Architecture, Computer Engineering Department, Balcali, Adana, Turkey;2. Cukurova University, Faculty of Engineering and Architecture, Biomedical Engineering Department, Balcali, Adana, Turkey;1. Computer & Telecommunication Engineering Division, Yonsei University, Wonju, Gangwon-Do 26493, Republic of Korea;2. Department of Computer Science, Sookmyung Women?s University, Seoul 04310, Republic of Korea
Abstract:Most of today's embedded systems are very complex. These systems, controlled by computer programs, continuously interact with their physical environments through network of sensory input and output devices. Consequently, the operations of such embedded systems are highly reactive and concurrent. Since embedded systems are deployed in many safety-critical applications, where failures can lead to catastrophic events, an approach that combines mathematical logic and formal verification is employed in order to ensure correct behavior of the control algorithm. This paper presents What You Prove Is What You Execute (WYPIWYE) compilation strategy for a Globally Asynchronous Locally Synchronous (GALS) programming language called Safey-Critical SystemJ. SC-SystemJ is a safety-critical subset of the SystemJ language. A formal big-step transition semantics of SC-SystemJ is developed for compiling SC-SystemJ programs into propositional Linear Temporal Logic formulas. These LTL formulas are then converted into a network of Mealy automata using a novel and efficient compilation algorithm. The resultant Mealy automata have a straightforward syntactic translation into Promela code. The resultant Promela models can be used for verifying correctness properties via the SPIN model-checker. Finally there is a single translation procedure to compile both: Promela and C/Java code for execution, which satisfies the De-Bruijn index, i.e. this final translation step is simple enough that is can be manually verified.
Keywords:SystemJ  SC-SystemJ  Safety-critical  Model-checking  Verification  Compilation
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号