The Support of MISRA C++ Analyzer for Reliability of Embedded Systems

Author:

Lin Che-Chia1,Chu Wei-Hsu1,Chang Chia-Hsuan1,Liao Hui-Hsin1,Yang Chun-Chieh1,Lee Jenq-Kuen1,You Yi-Ping2,Hsieh Tien-Yuan3

Affiliation:

1. Department of Computer Science, National Tsing Hua University, Taiwan

2. Department of Computer Science, National Yang Ming Chiao Tung University, Taiwan

3. Industrial Technology Research Institute, Taiwan

Abstract

Cyber-Physical Systems (CPS) are increasingly used in many complex applications, such as autonomous delivery drones, the automotive CPS design, power grid control systems, and medical robotics. However, existing programming languages lack certain design patterns for CPS designs, including temporal semantics and concurrency models. Future research directions may involve programming language extensions to support CPS designs. On the other hand, JSF++, MISRA, and MISRA C++ are providing specifications intended to increase the reliability of safety-critical systems. This article also describes the development of rule checkers based on the MISRA C++ specification using the Clang open-source tool, which allows for the annotation of code and the easy extension of the MISRA C++ specification to other programming languages and systems. This is potentially useful for future CPS language research extensions to work with reliability software specifications using the Clang tool. Experiments were performed using key C++ benchmarks to validate our method in comparison with the well-known Coverity commercial tool. We illustrate key rules related to class, inheritance, template, overloading, and exception handling. Open-source benchmarks that violate the rules detected by our checkers are also illustrated. A random graph generator is further used to generate diamond case with multiple inheritance testdata for our software validations. The experimental results demonstrate that our method can provide information that is more detailed than that obtained using Coverity for nine open-source C++ benchmarks. Since the Clang tool is widely used, it will further allow developers to annotate their own extensions.

Publisher

Association for Computing Machinery (ACM)

Subject

Artificial Intelligence,Control and Optimization,Computer Networks and Communications,Hardware and Architecture,Human-Computer Interaction

Reference37 articles.

1. Ali Almossawi , Kelvin Lim , and Tanmay Sinha . 2006. Analysis tool evaluation: Coverity prevent . Pittsburgh, PA : Carnegie Mellon University( 2006 ), 7–11. Ali Almossawi, Kelvin Lim, and Tanmay Sinha. 2006. Analysis tool evaluation: Coverity prevent. Pittsburgh, PA: Carnegie Mellon University(2006), 7–11.

2. Pascal Bertschi and Andreas Deicha. 2018. Safe C++ Guidelines Checkers und Quick Fixes. Ph. D. Dissertation. HSR Hochschule für Technik Rapperswil. Pascal Bertschi and Andreas Deicha. 2018. Safe C++ Guidelines Checkers und Quick Fixes. Ph. D. Dissertation. HSR Hochschule für Technik Rapperswil.

3. Enabling the Use of C++20 Unseq Execution Policy for OpenCL

4. Interprocedural Probabilistic Pointer Analysis;Chen Peng-Sheng;IEEE Transactions on Parallel and Distributed Systems 15,2004

5. Clang 2008. scan-build. Clang. Clang 2008. scan-build. Clang.

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3