Автор: Nikolai Kosmatov, Virgile Prevosto, Julien Signoles
Издательство: Springer
Серия: Computer Science Foundations and Applied Logic
Год: 2024
Страниц: 708
Язык: английский
Формат: pdf (true), epub
Размер: 64.7 MB
Frama-C is a popular open-source toolset for analysis and verification of C programs, largely used for teaching, experimental research, and industrial applications.
With the growing complexity and ubiquity of modern software, there is increasing interest in code analysis tools at various levels of formalization to ensure safety and security of software products. Acknowledging the fact that no single technique will ever be able to fit all software verification needs, the Frama-C platform features a wide set of plug-ins that can be used or combined for solving specific verification tasks.
This guidebook presents a large panorama of basic usages, research results, and concrete applications of Frama-C since the very first open-source release of the platform in 2008. It covers the ACSL specification language, core verification plug-ins, advanced analyses and their combinations, key ingredients for developing new plug-ins, as well as successful industrial case studies in which Frama-C has helped engineers verify crucial safety or security properties.
The C programming language continues to be used in foundational software such as device drivers, networking software, operating systems, and controllers, and such software is of growing importance as computers are used in more and more products and cyber-physical systems. C is an attractive programming language for such systems because it provides low-level access to machine capabilities, explicit storage allocation, and pointer arithmetic. However, these same features make it difficult to use C safely and reliably. Programming safely and reliably in language such as C benefits greatly from tool support, which can record a programmer’s decisions and check that they are carried out consistently and without running into any semantic problems.
Topics and features:
* Gentle, example-based introduction to software specification and verification
* Wide panorama of state-of-the-art specification and analysis techniques
* Step-by-step guide to develop your own, tailor-made analysis on top of the platform
* Inspiring success stories of Frama-C deployment on industrial code
* More than 15 years of R&D on analysis and verification of C code
This book is firmly rooted on the practice of software analysis, with numerous examples, exercises and application guidelines. As such, it is particularly well suited for software verification practitioners wishing to deploy verification on their code, as well as for undergraduate students with little or no experience in code analysis techniques. More advanced sections on the theoretical underpinnings of the analyzers will be of interest for graduate students and researchers.
Скачать Guide to Software Verification with Frama-C: Core Components, Usages, and Applications