iX 10/2020
S. 144
Praxis
Embedded-Software

C++-Metaprogrammierung mit Templates für eingebettete Systeme

Brückenschläger

Tobias Kotulla, Dirk Petrautzki

Hardwarenah bedeutet meist hardwarespezifisch zu programmieren. Mehr Portabilität bei gleichbleibend schlanken Binaries bietet dagegen modernes C++.

Quellcode, der auf unterschiedlichen Architekturen übersetzt werden soll, muss einfach portierbar sein. Das lässt sich in der Welt der eingebetteten Systeme aber oft nur schwer erreichen. Die Embedded-Programmierung verleitet Entwickler schnell dazu, die Grenzen klarer Strukturierungen aufzuweichen und hardwarespezifischen Code zu schreiben, da sie sich gedanklich tief in der Ebene der Hardware befinden. Das erschwert oder verhindert eine zukünftige Portierung. Modernes C++ bietet hierfür einen Ausweg, der Entwickler – beim Umsetzen eines guten Grundmodells – dazu zwingt, sich an klare Abgrenzungen zu halten und dadurch die Portierbarkeit zu gewährleisten.

Mit dem Einsatz von C++ statt C und der Schaffung zusätzlicher Abstraktionsebenen stellt sich die Frage nach eventuellem zusätzlichen Speicherbedarf und der Auswirkung auf die Performanz. Der Artikel zeigt, dass mit Metaprogrammierung unter Verwendung von C++-Templates diese Befürchtung unbegründet ist.

Alle heise-Magazine mit heise+ lesen

3,99 € / Woche

Ein Abo, alle Magazine: c't, iX, Mac & i, Make & c't Fotografie

  • Alle heise-Magazine im Browser und als PDF
  • Alle exklusiven heise+ Artikel frei zugänglich
  • heise online mit weniger Werbung lesen
  • Vorteilspreis für Magazin-Abonnenten
Jetzt unbegrenzt weiterlesen Vierwöchentliche Abrechnung.

Alle Ausgaben freischalten

2,60 € 1,49 € / Woche

Nach Testphase 2,60 € wtl.

  • Zugriff auf alle iX-Magazine
  • PDF-Ausgaben zum Herunterladen
  • Zugriff in der iX-App für unterwegs
  • Über 35% günstiger im Testzeitraum
Jetzt testen Nach Testphase jederzeit monatlich kündbar.

Ausgabe einmalig freischalten

8,90 € / Ausgabe

Diese Ausgabe lesen – ohne Abobindung

  • Sicher einkaufen im heise shop
  • Magazin direkt im Browser lesen
  • Dauerhaft als PDF behalten

Kommentare lesen (1 Beitrag)