Berlin, 10. Januar 2018
Meltdown und Spectre (KB4056891-7)
Eines ist klar: Die kürzlich festgestellten Prozessor-Bugs Meltdown und Spectre haben die Computerwelt durchgeschüttelt. Hiermit informieren wir unsere Kunden über deren Einfluss auf unsere Echtzeitumgebung. Auf der dortigen Webseite findet sich die folgende generelle Aussage: „Am I affected by the vulnerability? – Most certainly, yes.“
Weniger die Bugs selbst, jedoch die Reaktion Microsofts darauf in den Security Updates (z. B. KB4056891 und KB4056894) betrifft generell alle Anwender, die weiterhin shared Real-Time betreiben. Also alle, die Echtzeit-Code von Kithara RealTime Suite auf den gleichen logischen CPUs ausführen, wie Windows. Aufgrund der Security Updates ist es künftig technisch nicht mehr möglich, Echtzeit-Interrupts auf logischen CPUs anzumelden, die von Windows kontrolliert werden.
Lösung 1: Installieren Sie die Security Updates nicht. Davon raten wir jedoch ab.
Lösung 2: Verwenden Sie für Echtzeitverarbeitung ausschließlich den dedicated Real-Time-Mode. In dem Fall läuft der Echtzeit-Code ausschließlich auf eigenständigen logischen CPUs ab, auf die jegliche fremde Software keinerlei Zugriff hat. Unsere Kunden finden ein dafür notwendiges Update auf die Version 10.04a in ihrem Service-Portal.
Anwender von Kithara RealTime Suite im Dedicated Mode sind NICHT betroffen, benötigen jedoch mindestens die Version 10.04k bzw. 10.05 aufwärts!
Unsere langjährigen Kunden wissen, dass wir seit vielen Jahren empfehlen, Echtzeitaufgaben auf Dedicated Echtzeit-CPUs auszuführen. Dazu ist der Echtzeitcode in eine DLL zu verlagern, die unsere Software dann in den Echtzeitkontext einer Dedicated-CPU lädt. Nachdem mit dem Microsoft-Tool msconfig.exe eine oder mehrere logische CPUs aus Windows herausgelöst sind, läuft die Echtzeitverarbeitung für Anwender völlig unverändert ab. Anpassungen des Quellcodes sind nicht erforderlich, sofern die Echtzeit bisher stets nur auf einer CPU lief. Wenn mehrere logische CPUs benutzt wurden, ist die Zuweisung von Ressourcen auf die einzelnen CPUs leicht anzupassen. Weiterer Vorteil der Umstellung: die Echtzeiteigenschaften verbessern sich enorm, da keine störenden Einflüsse durch Windows und fremde Treiber mehr bestehen.
Wir bedauern sehr, dass einige unserer Kunden nun wegen Meltdown und Spectre in ihren vorhandenen Code eingreifen müssen. Wenn es nach uns ginge, hätten wir sicher noch einige Jahre auch shared Real-Time unterstützt, obwohl die Vorteile des dedicated Betriebs klar auf der Hand liegen. Intel bzw. Microsoft haben nun jedoch die Entscheidung forciert. Sollten Sie davon betroffen sein, weil Sie noch shared Real-Time einsetzen, wenden Sie sich bitte an uns – wir helfen Ihnen gerne bei einer Lösung.