Bildergalerie
Version 3.3 von Atollics Entwicklungsumgebung True Studio berechnet Code-Metriken und prüft die Übereinstimmung mit MISRA-C.
Neu hinzugekommen ist eine automatische Fehleranalyse. Damit finden Entwickler Schwachstellen im Code viel schneller.

Wer sich an die MISRA-C-Richtlinien hält, umschifft viele Klippen der Programmiersprache C. Außerdem ist der Code dann leichter zu portieren, wartungsfreundlicher und zuverlässiger. Dabei verfolgt Atollic True Studio v3.3 die MISRA-C-Programmierrichtlinien viel konsequenter als andere Werkzeuge. Weitere integrierte Analysewerkzeuge erlauben es, wichtige Statistiken wie Code-Komplexität oder Kommentierungslevel zu erfassen und zu bewerten.

Auf einen Blick

Qualitätsfrage: Wer kritische Systeme in C programmiert, kennt viele heikle Konstrukte dieser Sprache. Sie immer zu vermeiden fällt aber schwer. Dagegen gibt es Tools, die die Konformität zu MISRA-C prüfen oder Code-Metriken bestimmen, die auf strukturelle Schwächen hinweisen können.

Mit den neuen Tools können Entwickler kompetenter arbeiten: Sie haben alle Informationen zur Hand, um Schwachstellen im Programmcode zu finden und umgehend zu beheben. Zum Beispiel werden Zuverlässigkeit und Wartungsfreundlichkeit erheblich verbessert, wenn man übermäßig komplexe C-Funktionen umgestaltet oder restrukturiert oder in einen einfacheren Programmierstil umschreibt. Um die heiklen Stellen zu finden, kann der Anwender in True Studio die Analyseresultate betrachten, durch sie navigieren oder in einer Vielzahl von Dateiformaten exportieren. Dazu steht ein eigener Reportgenerator bereit.

Inspektor übernommen

Die Funktionen für Code-Metrik und Code-Analyse waren früher als separates Paket mit dem Namen True Inspector erhältlich. „Durch die standardmäßige Integration von professionellen Funktionen zur Code-Analyse innerhalb von Atollic True Studio sind wir in der Lage, das ARM-Entwicklungswerkzeug mit den meisten und umfangreichsten Funktionen auf dem Markt anzubieten“, betont Magnus Unemyr, Bereichsleiter von Vertrieb und Marketing bei Atollic, und ergänzt: „Keine andere C/C++-IDE bietet ein gleichermaßen gut integriertes Lösungskonzept mit Funktionen für Multicore-Debugging, verbesserter Codequalität, Unterstützung von Teamzusammenarbeit und verbesserter Effizienz der Softwareentwickler.“

Debugging-Hilfen

Neu in die IDE aufgenommen hat Atollic zudem eine Fehleranalysefunktion, die beim Entwickeln für ARM Cortex-M3- oder M4-Mikrocontroller in C oder C++ greift. Die Fehleranalyse ist Teil des Debuggers und hilft dabei, schwer zu findende Systemfehler und Abstürze aufzuspüren. Das Tool verwendet Informationen aus dem Cortex-M-NVIC (Nested Vector Interrupt Controller), um die Ursachen zu finden. Typische Fehlerquellen sind eine Division durch Null oder Zugriffe auf ungültige Speicherbereiche. Der Debugger zeigt daraufhin die Code-Zeile, an der der Fehler aufgetreten ist, sowie den Zustand des Exception-Stackframes just zu dem Zeitpunkt, als der Crash aufgetreten ist. Damit sind die MCU-Register sichtbar.

Bei den Ursachen kategorisiert der Debugger nach Bus-, Benutzung- und Speicherfehler. Busfehler treten auf, wenn der Code ungültige Zugriffe über den Bus versucht, etwa auf Peripherieeinheiten oder auf Speicher. Benutzungsfehler resultieren aus ungültigen Befehlen oder anderen Programmfehlern. Speicherfehler treten bei ungültigen Adressen auf oder bei Verstößen gegen die Regeln der MPU (Memory Protection Unit).

In den Kern blicken

Atollic True Studio v3.3 umfasst nun auch natives Kernel-Aware-Debugging von Embedded-Anwendungen auf dem Echtzeitbetriebssystem µC/OS-III von Micrium. Der Debugger bietet Andockfenster, welche den internen RTOS-Status während der Fehlersuche und -Beseitigung anzeigen. Die Fenster enthalten sehr viele Informationen zu Task Control Blocks (TCBs), Semaphoren, Mutexen, Timern und mehr.

„Die Einbindung von Kernel-Awareness bietet einen eindeutigen Speicherauszug des Zustandes und der Performance der Anwendung aus der Sicht des Kernels“, erklärt Jean Labrosse, Gründer, Vorsitzender und Geschäftsführer von Micrium. Er führt weiter aus: „Sie können auf einen Blick sehen, welche Prozesse ablaufen, welcher Teil des Prozessors von jedem Prozess verwendet wird, wie viel Stapelspeicherplatz von jedem Prozess beansprucht wird, welcher Prozess auf einen Semaphor wartet und vieles mehr. Kernel-Awareness hilft den Softwareentwicklern, das umfangreiche Funktionspaket unseres µC/OS-III bei der Entwicklung und Optimierung ihres Designs voll auszuschöpfen.“

Breiter Support

True Studio v3.3 unterstützt 1250 Mikrocontroller, darunter viele neue Chips von Energy Micro, ST Microelectronics, Toshiba, NXP und Infineon. Weitere Verbesserungen in der neuen Version beinhalten unter anderem mehrere Debugger-Verbesserungen wie eine neue Speicherfüllfunktion, zusätzliche Unterstützung für Multilink und OSJTAG-Debugger und Freescales OpenSDA-Schnittstelle.