Suchen

Entwicklung im System

ARM-Toolchain sorgt für die Einhaltung funktionaler Sicherheit

Seite: 2/3

Firmen zum Thema

Zertifizierte Tools entsprechen den Sicherheitsstandards

Eine externe Prüfung von Software-Entwicklungsprozessen kann Schwächen aufzeigen oder Prozessbereiche hervorheben, die während der Entwicklung vernachlässigt wurden. Beste Praktiken fördern eine unabhängige Kontrolle von Softwareentwicklungsprozessen durch einen qualifizierten Prüfer, der zertifizieren kann, dass die Tools den Anforderungen des Sicherheitsstandards entsprechen.

Bild 2: Jedes Unternehmen, das programmierbare Systeme für Automotive-Anwendungen nach IEC 61508 und ISO 26262 für die Software herstellt, muss mit einer Flut von Dokumentation und Berichterstattung rechnen
Bild 2: Jedes Unternehmen, das programmierbare Systeme für Automotive-Anwendungen nach IEC 61508 und ISO 26262 für die Software herstellt, muss mit einer Flut von Dokumentation und Berichterstattung rechnen
(Bild: ARM)

Die ARM Compiler Toolchain inkl. ARM Compiler Qualification Kit, Anwendungsrichtlinien und Validierungsdaten, wurde durch den TÜV SÜD nach IEC 61508 und ISO 26262 zertifiziert. Das Qualification Kit besteht aus folgenden Teilen:

  • Das Sicherheitshandbuch gibt Hinweise auf die Konfiguration und den Einsatz der ARM Compiler Toolchain, um das Risiko sicherheitsbezogener Fehler zu minimieren.
  • Der Testbericht zeigt Konformität zu den Sprachspezifikationen auf, für die der Compiler entwickelt wurde (C-Standard).
  • Der Mängelbericht enthält eine Liste bekannter kritischer Mängel und Anweisungen, wie diese zu vermeiden sind.
  • Die Dokumentation bietet Einblick in beste Praktiken für die Softwareentwicklung, die zur Herstellung der Kompilierungs-Toolchain verwendet wurden.

Ist diese Dokumentation griffbereit, lässt sich damit die Softwarequalität der Endanwendung verbessern und ein Prüfer erhält einen genauen Überblick und die Gewissheit, dass die Wahl der Toolchain gerechtfertigt ist.

Es ist möglich, dass ein Endanwender seine eigenen Prüfbelege erzeugt, was allerdings sehr arbeitsintensiv, zeitaufwändig und teuer ist. Dabei können allerdings Lücken auftreten, da der Anwender keinen Zugriff auf alle verfügbaren Informationen hat.

Toolchain-Anbieter finden sich in der einzigartigen Lage, Entwickler sicherheitsbezogener Software zu unterstützten, da sie Informationen und Know-how über die Softwareentwicklungstools und deren Handhabung bieten. Der typische Software­entwickler verfügt nicht über diese Informationen und kann diese auch nicht einfach erzeugen. Es obliegt also den Entwicklern, genau zu prüfen, welcher Toolchain-Anbieter was bietet.

Einhaltung von Codierungs-Richtlinien

Die Einhaltung von Codierungs-Richtlinien kann Softwarefehler erheblich verringern und wird bei der Softwareentwicklung durch die meisten funktionalen Sicherheitsstandards vorgegeben. Solche Richtlinien machen den Quellcode einfacher verständlich und vermeiden häufige Fehlerquellen, die auf Lücken im Sprachstandard zurückzuführen sind. Einige High-Level-Programmiersprachen wie C und C++ sind unter bestimmten Bedingungen unvollständig oder zweideutig spezifiziert, was bei verschiedenen Compilern zu einem unterschiedlichen Verhalten führt.

Compiler ANSI C Strikt-Modus und Sprachuntergruppen wie MISRA C/C++ sind darauf ausgelegt, den Freiheitsgrad der Programmiersprache zu beschränken. Damit werden Bereiche innerhalb der Programmiersprache vermieden, die zu einer gemeinsamen Codierung oder zu Übersetzungsfehlern führen. Die Software wird damit einfacher lesbar und lässt sich einfacher debuggen und testen.

Die ARM Toolchains unterstützen Sprach-Strikt-Modi und Sprach-Konformitätstests über Plug-ins von Partnern wie LDRA, Parasoft und Gimple.

(ID:43751225)