entweder wie ein Massenspeicherdevice (MSD
Mode) oder wie zum Beispiel eine Tastatur
(HID Mode). Letzteres funktioniert daher auch
in Umgebungen mit restriktiv gehärteten Um-
gebungen, die den Zugriff auf Flash-Speicher
verbieten und somit die Sicherheit gegen ver-
sehentliches Einschleusen von Malware durch
Dritte verhindern. Die neu hinzugekommene
SPI-Schnittstelle stellt eine Low-Level-Hard-
wareschnittstelle dar. Dies spart den Umweg
über den USB-Stack, spart somit Strom und
bindet den Chip direkt an. SPI ermöglicht es,
den ASIC in eigenen Implementierungen zu
nutzen – unter anderem in sehr schlanken
Systemen, die ohne einen USB-Stack auskom-
men, bis hin zu Bare-Metal-Implementierun-
gen ohne Betriebssystem. Das benötigte Kom-
munikationsprotokoll ist direkt in CodeMeter
Embedded 2.0 integriert, so dass hier keine
weiteren Anpassungen seitens des Kunden
notwendig sind. Die SPI-Funktion der Code-
Meter Embedded Library setzt dann auf die
SPI-Kerneltreiber auf, um mit dem CodeMeter
ASIC zu kommunizieren.
Was gibt´s sonst Neues?
Die Versionierung von CodeMeter Embedded
entspricht jetzt auch der Nomenklatur der
anderen Produkte wie License Central oder
AxProtector. Die Build-Nummer ist nicht mehr
Bestandteil der Version, sondern es werden
Major.Minor Releases und dann ein alphanu-
merischer Zähler verwendet. Somit ist „2.0b“
die aktuelle Version von CodeMeter Embed-
ded.
CodeMeter Embedded 2.0 unterstützt auch
leistungsfähige Prozessoren wie ARMv8
mit 64-Bit-Betriebssystemen wie Linux und
Windows.
TPM
License Server
OPC UA
Host-ID
CmActLicense
CmLAN
AxEngine
CodeMeter
Core
Embedded Modules
Core
API
ExEngine
Runtime
Bridge
Application
CodeMeter
Runtime
Linux x86 und x86_64
Linux ARMv6hf (RaspberryPi 2)
Linux ARMv6 (RaspberryPi 2, Pandaboard)
Linux ARMv7hf (NanoPi, RaspberryPi
BeagleBoneBlack)
■ ■ Linux AARCH ARMv8hf (ODROID-C2)
■ ■ QNX ARM (Pandaboard)
Multi
Access
License
Transfer
CmDongle
SPI
File-I/O
HID
Getestete Kombinationen:
■ ■
■ ■
■ ■
■ ■
License
Cache
Weiterhin bleibt CodeMeter Embedded kein
Produkt von der Stange: Viele Funktionen sind
modular ausgeführt. Ziel ist und bleibt, eine
möglichst kompakte Software zu liefern. Was
nicht benötigt wird, wird nicht mit ausgelie-
fert. Damit bewegt sich die Größe der Library
abhängig von Konfiguration und Plattform im
Bereich weniger hundert Kilobyte. Bedingt
durch diese Flexibilität wird bei einer Neukun-
denanfrage auch zunächst das Zielsystem und
der Use-Case betrachtet und dann ein indi-
viduelles Paket geschnürt. So ist es möglich,
dass CodeMeter Embedded mit den Kunden-
anforderungen individuell skaliert und nicht
als monolithischer Block unnötig Systemres-
sourcen belegt. Die möglichen Kombinationen
testen wir mit unterschiedlichen Versionen der
gängigen Betriebssysteme auf unterschiedli-
chen Plattformen (siehe Kasten). Damit lassen
sich schon die meisten Anwendungsfälle ab-
decken. Und wo das nicht reicht, kann der
Kunde den Quellcode mit der benötigten Tool-
chain selbst kompilieren und auch an RealTi-
me-Betriebssysteme oder eigene Implementie-
rungen anpassen.
3,
Cubietruck,
■ ■ QNX x86 (Intel Desktop Board D525MW)
■ ■ VxWorks 6.9 PPC (P2020), x86 (NITX315), ARMv7 (SabreLite
IMX6Q)
■ ■ VxWorks 7 PPC (P2020), x86 (NITX315), ARMv7 (SabreLite
IMX6Q), 64 (DELL Optiplex)
■ ■ Windows x86 und x86_64
■ ■ Android 5.1 (Raspi3)
13