Betriebssysteme
Echtzeit für Windows 10
Windows 10 ist auf dem besten Wege Windows CE in naher Zukunft zu verdrängen, denn das neue vereinheitlichte Betriebssystem hat gerade in IoT-Zeiten eine Menge Vorteile. Was fehlt, ist das deterministische Verhalten, das eine Kombination mit einer Echtzeit-Plattform ermöglicht.
Das Internet der Dinge (IoT) wächst und wächst. Dahingehend müssen sich auch die Systeme weiterentwickeln – und im Kern ebenso die Betriebssysteme. Microsofts Übergang auf Windows 10 hin zu einer kompletten Windows-Welt ist sicherlich zum Vorteil der IoT-Systeme. Aber ist das genug, um den realen Anforderungen dieses neuen Netzwerks gerecht zu werden? In einigen, um nicht zu sagen vielen Fällen benötigen Unternehmen, die IoT-Apps erstellen, ein Echtzeit-Betriebssystem (RTOS). Denn eine Echtzeit-Lösung sorgt dafür, dass die Leistung ihrer Anwendungen nicht nur beibehalten bleibt, sondern der Determinismus wesentlich verbessert wird. Und dies alles ohne Speicherplatz zu vergeuden und der Möglichkeit, andere Anwendungen gleichzeitig auszuführen, ohne das System zu verlangsamen.
Obwohl Microsoft bisher keine direkte Stellungnahme zur Zukunft von Windows Compact Edition (CE) gemacht hat, ist es offensichtlich, dass CE durch Windows 10 IoT Core ersetzt werden soll.
Vorreiter Windows CE
CE fand bis dato Anwendung bei Produkten, die Echtzeit-Verarbeitung be-nötigen und die keine oder nur einen minimalen Determinismus benötigen. Am Anfang war CE ein einfaches Allzweck-Betriebssystem, das zwar anders gestrickt war als Windows, aber eine ähnlich einfache Programmierschnittstelle (Win32 subset) sowie ein ähnliches Aussehen hatte. Ursprünglich wurde CE für kleine Geräte konzipiert, die nur für eine Anwendung gebaut wurden.
Bei der Anwendung von CE zeigte sich allerdings, dass in vielen Fällen harte Echtzeit-Anforderungen gefordert sind – zum Beispiel bei Steuerungen in der Gebäudeautomation oder von Brausystemen.
Microsoft reagierte schnell und holte sich Branchenexperten ins Boot, darunter auch VenturCom (heute Intervalzero). In Version 2.12 wurde bereits ein Echtzeit-Scheduler im Windows CE-Kernel eingefügt.
Windows 10 IoT Core steht nun vor den gleichen zwei Anwendungsfällen wie sein Vorgänger. Hinsichtlich Echtzeit-Prioritätsklassen offenbart sich hier ebenso ein Problem für Microsoft: Wie können auch Echtzeit-Nutzer zufriedengestellt und so neue Anwender gewonnen werden?
Große Lücken zu Standard-System
Windows CE ist letztlich am Markt aufgrund seiner diskontinuier-lichen Beziehung zu Standard-Windows gescheitert. Obwohl es viele Ähnlichkeiten zwischen CE (Windows Compact Edition) und WES (Windows Embedded Standard) gab, waren auch große Lücken vorhanden, etwa in Sachen Benutzer-Interaktion und Entwicklungstools.
Hauptsächlich sind diese Schwierigkeiten der Tatsache geschuldet, dass CE einen anderen Kern und zum Teil andere Programmierschnittstellen nutzt – was sich als gravierendes Problem für viele Firmen herausstellte. So konnten Entwickler zwar für jedes System zu einem großen Teil denselben Code verwenden, mussten aber trotzdem abschnittsweise auf den Code umsteigen, der spezifisch für CE-Plattformen oder Standard-Windows-Plattformen einschließlich WES-Systeme war.
Dagegen hat Microsoft Windows 10 so umgestaltet, dass die verschiedenen Editionen des Betriebssystems (einschließlich IoT-Versionen) auf dem gleichen Kern und denselben Funktionalitäten aufbauen, die auf sämtlichen Geräten und Plattformen angewendet werden können und daher eine einheitliche Geräteplattform bilden. Dieses wichtige Kriterium hin zu einem wirklich skalierbaren Betriebssystem wurde mit OneCore gelöst.
Die OneCore-Grundlage
Ein Betriebssystem, viele Geräte: Windows 10 deckt vom Smartphone bis zum IoT-Gerät viele Applikationen ab.
© IntervalzeroOneCore existiert als Grundlage aller Windows-10-Plattformen, einschließlich IoT-SKUs (Stock keeping units). Daraus hat sich ‚IoT Core‘ entwickelt. IoT Core ist das Betriebssystem für das Internet der Dinge, welches auf x86-, x64- und ARM-Geräten ausgeführt werden kann. IoT Enterprise ist nur ein x86-/x64-Betriebssystem – also quasi genau das gleiche Produkt wie die Windows 10 Enterprise LTSB (Longterm-Service-Branche) – nur mit einem anderen Lizenzmodell. Dies ist eine gute Nachricht für IoT- beziehungsweise Embedded-Entwickler, da es sicherstellt, dass Änderungen am Betriebssystem, einschließlich Updates, nur in relativ langen Abständen auftreten, im Gegensatz zu der häufig aktualisierten kommerziellen Version.
UWP (Universal Windows Plattform) und .NET Core bringen OneCore noch einen Schritt weiter, indem sie Services für Entwickler und Programmierschnittstellen bereitstellen, die über verschiedene Plattformen hinweg funktionieren. Wenn Anwender nun mit .NET Core entwickeln, kann ihre Anwendung auf der kompletten Gruppe der IoT-Geräte, von Core bis Enterprise, ausgeführt werden, was Skalierbarkeit ermöglicht.
Auf der Systemebene sind universelle Treiber wie UWP und .NET Core Programmierschnittstellen, die – wenn während der Entwicklung eingehalten – Treiber aus dem gleichen Quellcode erzeugen können, welche auf x86-, x64- und ARM-Systemen laufen. Daraus ergeben sich erhebliche Vorteile für Hersteller, die Hardware anbieten und mit vielen unterschiedlichen Systemen arbeiten. So ist Windows 10 im Sinne von „ einmal schreiben – oft verwendbar “ ein ideales Tool.
Letztes Puzzle: Die Echtzeit-Verarbeitung
Microsoft hat also nun fast alle bisherigen Lücken zwischen Windows CE und WES überbrückt. Die letzte und wichtigste ist die Echtzeit-Verarbeitungskomponente. Zum Beispiel ist Windows 10 IoT bestens für Geld-und Verkaufsautomaten geeignet. Aber es gibt viele Geräte und Systeme, die zumindest eine minimale Menge an harter Echtzeit-Verarbeitung erfordern.
Um starre Hardware-Systeme mit der Leistung der Intel-Architektur zu ersetzen, ist eine Lösung wie die Kombination von Microsoft Windows 10 IoT und einer Echtzeit-Plattform wie RTX64 erforderlich und verfügbar. Diese Systeme kommen an die Leistungsgrenze, was die Multifunktionsverarbeitung betrifft: von der Nutzung des Windows-Netzwerks bis hin zur Erfüllung der harten Echtzeit-Anforderungen – zur gleichen Zeit und auf demselben System. Mit der Kombination von Intels kleinen Formfaktor-Atom-Prozessoren, Microsofts Konsolidierung der Windows-10-OS für IoT-Ge-räte und einer Echtzeit-Plattform wie Intervalzeros RTX64 stellt sich eine einfache Lösung als CE-Nachfolger dar. Dadurch ist es möglich, einzelne Echtzeit-Lösungen zu entwickeln, die auf kleinen Geräten bis hin zu Enterprise-Level-Systemen ohne binäre Änderungen laufen können.
Systeme auf einer gemeinsamen Basis mit immer besseren funktionalen Komponenten zu konstruieren, bietet viel Potenzial. Es ermöglicht eine Windows-10-IoT-Plattform mit Echtzeit-Fähigkeit mit funktionalen Modulen wie etwa Speicherprogrammierbaren Steuerungen (SPS), Bildverarbeitungs-Maschinen und Motion-Control-Ap-plikationen. Diese individuellen ‚Plug-and-Play‘-Module lassen sich problemlos in die Plattform integrieren, um ein voll funktionsfähiges, flexibles und skalierbares System zu schaffen. Damit erhalten Unternehmen, die das IoT nutzen, eine komplett integrierte Lösung – sprich Erweiterbarkeit und Skalierbarkeit, die sie jetzt und in Zukunft für IoT-Lösungen brauchen.
Autor: Daron Underwood ist CTO bei Intervalzero.











