Extending CADP for Analyzing C Code

M. Mar Gallardo, P. Merino, D. Sanan

2007

Abstract

Many existing open source projects are written with the classic programming language C. Due to the size and complexity of such projects this applications require C-oriented methods and tools to increase their reliability. For instance, advanced reachability analysis techniques like model checking, that traditionally have been applied to software models, are now being considered as very promising methods to detect execution failures in final code. This paper focuses on extending the well known toolbox CADP in order to make it easier to analyze realistic concurrent C programs that make use of external functionality provided via well defined application programming interfaces (A P Is). Our approach consists in constructing a tool to convert the C code into the usual formats expected by the set of tools integrating CADP (Construction and Analysis of Distributed Processes). The new module allows us to exploit all the functionalities of CADP to assist software reliability: model checking, equivalence checking, testing, distributed verification or performance evaluation.

References

  1. Thomas Ball, Byron Cook, Vladimir Levin, and Sriram K. Rajamani. Slam and static driver verifier: Technology transfer of formal methods inside microsoft. In IFM, pages 1-20, 2004.
  2. M. Camara, M.M. Gallardo, P. Merino, and D. Sanan. Model checking software with welldefined apis: The socket case. In M. Massink. T. Margaria, editor, Proc. of the Tenth International Workshop on Formal Methods for Industrial Critical Systems (FMICS05), pages 17-26. ACM SIGSOFT, 2005.
  3. M.M Gallardo, C. Joubert, and P. Merino. Implementing influence analysis using parameterised boolean equation systems. In Nicolas Halbwachs and Lenore Zuck, editors, Proceedings of the 2nd International Symposium on Leveraging Applications of Formal Methods, Verification and Validation ISOLA'06 (Paphos, Cyprus), volume 3440 of Lecture Notes in Computer Science, pages 581-585. IEEE Computer Society Press, November 2006.
  4. M.M. Gallardo, P. Merino, and D. Sanan. Towards model checking c code with open/caesar. In Proc. of MSVVEIS'06, pages 198-201, 2006.
  5. H. Garavel. OPEN/CAESAR: An open software architecture for verification, simulation, and testing. In Bernhard Steffen, editor, Proceedings of the First International Conference on Tools and Algorithms for the Construction and Analysis of Systems TACAS'98, volume 1384, pages 68-84, 1998.
  6. Garavel, H., Lang, F., and Mateescu, R. An overview of cadp 2001. In EASST Newsletter, number 4.
  7. http://sourceware.org/gdb/. GDB, the GNU project debbuger.
  8. I. Manataki and K. Zografos. A system dynamics approach for airport terminal performance evaluation. In Proc. of MSVVEIS'06, pages 206-209, 2006.
  9. Gallardo M.M, Martnez J., Merino P., Nuez P., and Pimentel E. Pixl: Applying xml standards to support the integration of analysis tools for protocols. Science of Computer Programming, 65:57-69, March 2007.
  10. Madanlal Musuvathi, David Y. W. Park, Andy Chou, Dawson R. Engler, and David L. Dill. Cmc: a pragmatic approach to model checking real code. SIGOPS Oper. Syst. Rev., 36(SI):75-88, 2002.
  11. Michel Raynal. Algorithmique du parallelisme : le probleme de l'exclusion mutuelle. 1984.
  12. W. Visser, K. Havelund, G. Brat, and S. Park. Model checking programs. In IEEE Computer Society, pages 3-12, Grenoble,France, sep 2000.
  13. Yeung W., Leung K., Wang J., and Dong W. Modelling and model checking suspendible business processes via statechart diagrams and csp. Science of Computer Programming, 65:14-29, March 2007.
Download


Paper Citation


in Harvard Style

Mar Gallardo M., Merino P. and Sanan D. (2007). Extending CADP for Analyzing C Code . In Proceedings of the 5th International Workshop on Modelling, Simulation, Verification and Validation of Enterprise Information Systems - Volume 1: MSVVEIS, (ICEIS 2007) ISBN 978-972-8865-95-5, pages 104-113. DOI: 10.5220/0002430001040113


in Bibtex Style

@conference{msvveis07,
author={M. Mar Gallardo and P. Merino and D. Sanan},
title={Extending CADP for Analyzing C Code},
booktitle={Proceedings of the 5th International Workshop on Modelling, Simulation, Verification and Validation of Enterprise Information Systems - Volume 1: MSVVEIS, (ICEIS 2007)},
year={2007},
pages={104-113},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0002430001040113},
isbn={978-972-8865-95-5},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 5th International Workshop on Modelling, Simulation, Verification and Validation of Enterprise Information Systems - Volume 1: MSVVEIS, (ICEIS 2007)
TI - Extending CADP for Analyzing C Code
SN - 978-972-8865-95-5
AU - Mar Gallardo M.
AU - Merino P.
AU - Sanan D.
PY - 2007
SP - 104
EP - 113
DO - 10.5220/0002430001040113