Lua

Einsatz von Lua in Embedded Systems

(NL/1323074474) Nicht erst nach Stuxnet, Duqu und Flame oder aus dem Code Warrier bekannt

ISBN 978-3-907857-15-1, 188 Seiten, Paperback, 19,80,

Lua (portugiesisch für Mond) ist eine Skriptsprache zum Einbinden in Programme, um diese leichter
weiterentwickeln und warten zu können. Eine der besonderen Eigenschaften von Lua ist die geringe
Grösse des kompilierten Skript-Interpreters. Lua Programme werden vor der Ausführung in Bytecode
übersetzt.

Obwohl man mit Lua auch eigenständige Programme schreiben kann, ist Lua vorrangig
als Skriptsprache von C-Programmen konzipiert. Der Lua Interpreter kann über eine C-Bibliothek
angesprochen werden, die auch ein API für die Laufzeitumgebung des Interpreters für Aufrufe vom
C-Programm aus beinhaltet. Mittels des API können verschiedene Teile des Programms in C und
Lua geschrieben werden, während Variablen und Funktionen in beiden Richtungen erreichbar
bleiben (d.h. eine Funktion in Lua kann eine Funktion in C aufrufen und umgekehrt). Lua ist in ANSI-C implementiert und unterstützt sowohl funktionale als auch objektorientierte Programmierung.

Da der Lua Interpreter extrem schnell und hochgradig portabel ist und sich leicht in C-Programme
einbetten lässt, ist er gerade für Embedded Systems eine attraktive Alternative zu anderen Skript
Interpretern. Obwohl er nur wenige Kilobyte umfasst, passt noch eine vollständige Garbage
Collection hinein, die anfallenden Datenmüll automatisch aus dem Speicher wirft.

Mit dieser Broschüre wollen die Autoren anhand ihrer Erfahrungen die Leistungsmerkmale von Lua
verdeutlichen und die Erweiterungsfähigkeit mit mehreren Beispielen demonstrieren.

Im ersten Beispiel wird der Lua Interpreter auf einem PC mit einer DLL erweitert, die die Ansteuerung
eines über USB angeschlossenen AD-DA-Subsystems ermöglicht.

Im einem zweiten Beispiel wird Lua in eine Anwendung auf einem Embedded DOS System auf Basis eines Intel386 EX Prozessors mit ROM-DOS (kompatibel zu MS-DOS 6.22) eingebettet und gezeigt, dass Lua auch in Systemen mit knappen Ressourcen eingesetzt werden kann.

Im dritten Beispiel wird die DOS-Applikation durch eine Linux-Anwendung ersetzt, bei der das kompakte FOX Board G20, ein Linux Embedded Single Board Computer auf der Basis eines Atmel AT91SAM9G20 Mikrocontrollers, zum Einsatz kommt.

Den Abschluss der Anwendungsbeispiele bildet mit eLua ein für Mikrocontrolleranwendungen
angepasstes Lua. Hier kommt ein mbed Mikrocontrollermodul auf Basis eines Cortex-M3 zum Einsatz.

Im letzten Abschnitt werden mit SWIG und ToLua Tools vorgestellt, die unter gewissen Voraussetzungen
die Verknüpfung von Lua und C/C vereinfachen können.

Alle Quelltexte sind unter SourceForge http://lua.sourceforge.net/ abgelegt. Zum Buch existiert außerdem eine Webseite http://www.ckuehnel.ch/lua-buch.html.
Diese Pressemitteilung wurde im Auftrag übermittelt. Für den Inhalt ist allein das berichtende Unternehmen verantwortlich.

Skript Verlag Kühnel
Claus Dr. Kühnel
Talstr. 39a
CH-8852 Altendorf
info@ckskript.ch
www.ckskript.ch