Versteckte Risiken beim Kompilieren von Embedded Software

Seite 3: Augen auf die Embedded-Entwicklung

Inhaltsverzeichnis

Entwickler führen Code häufig auf dem Entwicklungsrechner aus, um die mit der On-Target-Ausführung verbundenen langen Feedbackschleifen abzukürzen. Allerdings ist diese Abkürzung nur mit Bedacht zu wählen.

Der Compiler ist einer der wichtigsten Faktoren für die strukturellen Unterschiede zwischen On- und Off-Target-Ausführung. Unspezifiziertes, implementierungsabhängiges und undefiniertes Verhalten sind wichtige Aspekte von C und C++. Compiler bekommen durch den jeweiligen Standard Freiheitsgrade und Interpretationsspielraum.

Zusammen mit anderen Einflussfaktoren arbeitet Code auf dem Zielsystem womöglich nicht korrekt, obwohl die Entwickler ihn im Off-Target-Verfahren verifiziert haben. Teams sollten Code daher immer mit dem für das Endprodukt eingesetzten Compiler testen. Ohne eine On-Target-Ausführung auf dem realen Zielsystem drohen versteckte Risiken und eine Sicherheit, die sich als nur gefühlt entpuppt.

Daniel Penning
ist Gründer und Geschäftsführer der embeff GmbH in Lübeck. Sein Ziel ist robuste Embedded Software. Er arbeitet an einem Test-Tool für Mikrocontroller, mit dem Kunden diesem Ziel ein Stück näherkommen.

(rme)