Statische Analyse von C-Programmen für Mikrocontroller


Ziel dieses Projekts ist die Entwicklung eines Tools zur statischen Analyse von Mikrocontroller-C-Programmen. Der Fokus des Projekts liegt auf der Entwicklung von Techniken und Algorithmen, welche die Charakteristiken von Mikrocontrollerprogrammen geeignet berücksichtigen, so dass präzise Aussagen über die Programme getroffen werden können.

Das Tool wird als Eclipse-Plugin basierend auf dem Eclipse CDT Front-End entwickelt. Dieses stellt dem Entwickler den abstrakten Syntaxbaum (abstract syntax tree, AST) der kompilierten C-Unit zur Verfügung, welcher als Ausgangspunkt aller Analysen genutzt wird.

Im ersten Schritt wurde ein Kontrollflussgraph aufgebaut, der es einerseits ermöglicht bestimmte Fehler, wie zum Beispiel sogenannten toten Code, unmittelbar zu erkennen. Andererseits dient er als Basis für Datenflussanalysen.

Im Rahmen eines MATSE-Ausbildungsprojekts wurde das Tool um die Möglichkeit erweitert, einen Teil der MISRA-C Überprüfungen durchzuführen. MISRA-C definiert eine Untermenge der Programmiersprache C wie es in gängigen Normen zur Entwicklung sicherheitskritischer Systeme (z.B. IEC 61508, ISO 26262) gefordert wird.

Kontakt:
beckschulze

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Wenn Sie nicht einverstanden sind, verlassen Sie bitte die Website.Weitere Information

RWTH Aachen - Lehrstuhl Informatik 11 - Ahornstr. 55 - 52074 Aachen - Deutschland