[English]Noch ein kleiner Nachtrag von letzter Woche, was die Entwicklung von Windows 11 betrifft. Es gibt Berichte, dass die kommende Windows 11.Version 24H2 wohl so etwas wie "Hotpatching" bekommen könnte bzw. soll. Das würde bedeuten, dass Updates installiert werden können und wirksam werden, ohne dass ein Neustart erforderlich wird. Allerdings hat das Konzept, so, wie es sich mir aktuell darstellt, einige Einschränkungen, die man kennen sollte.
Anzeige
Hotpatching, das "unbekannte Wesen"?
Ich erinnere mich, 2000 mit einem Nachbarn am Gartenzaun bereits über den Sachverhalt, dass dieses Windows immer mal wieder neu gebootet werden muss, damit es funktioniert, während Linux läuft und läuft, diskutiert zu haben. Gut, der Mann war damals Technik-Vorstand bei der SuSE in Nürnberg. Aber es ist so, dass Windows bis heute einen Neustart benötigt, damit Systemupdates am Kernel wirksam werden. Dort ist es ja so, dass die betreffenden Dateien im Systemzugriff sind und nicht per Update aktualisiert werden können.
Erst bei einem Neustart werden die Updates abgeschlossen, die Kerneldateien aktualisiert und dann die geänderten Funktionen beim Neustart zur Ausführung in den Speicher geladen, um fortan wirksam zu werden. Bei Linux kennt man Mechanismen, um ein Hotpatching zu realisieren, bei dem Korrekturen im Speicher berücksichtigt und beim nächsten Neustart des Systems in den Systemdateien berücksichtigt werden.
Speziell bei Servern ist eine "Down-Time" wegen eines Neustarts ja eher unerwünscht. Microsoft ist daher seit geraumer Zeit dabei, dieses Hotpatching auch für Windows bzw. Kernelfunktionen bereitzustellen.
- Ich hatte im Juli 2022 im Blog-Beitrag VMs mit Windows Server Datacenter 2022 auf Azure mit Desktop Experience: Hotpatching verfügbar berichtet, dass eine entsprechende Funktion bei Windows Server Datacenter 2022 auf Azure verfügbar sei.
- Und bei dem kürzlich vorgestellten Windows Server 2024 soll Hotpatching auch kommen, wie ich im Blog-Beitrag Windows Server 2025 vorgestellt erwähnt habe.
Microsoft beschreibt im Support-Beitrag Hotpatch for virtual machines Oktober 2023 den gewählten Ansatz für Hotpatching als eine Methode, zur Installation von Betriebssystem-Sicherheitsupdates auf unterstützten virtuellen Maschinen (VMs) unter Windows Server Datacenter: Azure Edition, ohne dass nach der Installation ein Neustart erforderlich ist. Dabei wird der speicherinterne Code von laufenden Prozessen gepatcht, ohne dass der Prozess neu gestartet werden muss. Wolfgang Sommergut hat das Thema in diesem deutschsprachigen Artikel mit einigen Details aufgegriffen. Microsoft ist also seit einiger Zeit an diesem Thema dran.
Anzeige
Windows 11 24H2 soll Hotpatching bekommen
Windows Central hat das Thema vor einigen Tagen im Artikel Microsoft wants to update your Windows 11 PC without forcing you to reboot aufgegriffen und über Microsofts Pläne berichtet. Die Zusammenfassung lautet:
- Microsoft testet eine neue Update-Methode für Windows 11, die es dem Betriebssystem ermöglicht, kritische Updates ohne den sonst erforderlichen Neustart zu installieren.
- Diese als Hotpatching bezeichnete Technologie, die man bereits in den oben erwähnten Windows Server-Szenarien und bei der Xbox verwendet, soll voraussichtlich mit dem im Herbst 2024 erwarteten Windows 11 Version 24H2 kommen.
Zack Bowden bezieht sich auf seinem Windows Central-Artikel auf Quellen bei Microsoft, laut denen die Entwickler beabsichtigen, das Hot-Patching in Windows 11 zu nutzen, um monatliche Sicherheitsupdates bereitzustellen, ohne dass der Benutzer einen Neustart durchführen muss. Allerdings gibt es eine Einschränkung: Alle paar Monate ist dann doch ein Neustart erforderlich.
- Konkret ist es geplant, dass nur vier monatliche Sicherheitsupdates pro Jahr einen Neustart erfordern, und zwar im Januar, April, Juli und Oktober.
- Die anderen Monate werden über Hot Patching versorgt, die dann keinen Neustart erfordern sollen.
Nach der Prämisse "Grau ist alle Theorie", gibt es aber auch dort Einschränkungen. Größeren Sicherheitsupdates, Bug-Fix-Updates zur Fehlerbehebung und Funktionsupdates, die bei Bedarf jederzeit bereitgestellt werden können, und erfordern auch außerhalb der oben angegebenen Monate einen Neustart.
Es ist also möglicherweise "ein bisschen Hotpaching" geplant, was jetzt im Web gefeiert wird. Die Kollegen von deskmodder.de haben in diesem Beitrag noch einige Hinweise geliefert, weil Microsoft bei der Windows 11 Dev-Insider Preview Hotpatching mit einigen wenigen Testern ausprobiert hat.
Für mich wird die spannende Frage, so die Funktion in der Final von Windows 11 kommen sollte, eher sein: "Wie gut funktioniert das Ganze und welche Systeme bekommen das wirklich?" – denn bei einem Windows 11-Client ist ein Neustart nicht so das Drama – es sei denn, der Vorgang läuft unendlich lange und am Ende gibt es Fehlfunktionen oder ein Rollback. Da wird es spannend, zu sehen, wie das dann gelöst wird.
Laut Zack Bowden soll Hotpatching 2024 voraussichtlich für die Intel/AMD x86-Plattform kommen. Die ARM64-Systeme sollen die Unterstützung für Hotpatching erst im Jahr 2025 erhalten. Voraussetzung ist, dass die Zeitpläne Microsofts halten. Offen ist auch, ob alle Windows 11-Nutzer die Funktion erhalten. Denkbar wäre, dies nur in den kommerziellen Windows 11-Editionen wie Enterprise, Education und Windows 365 zu implementieren. Aktuell kann man nur konstatieren: Microsoft hat ein Gerücht gestreut, was daraus wird, müssen wir abwarten.
Ähnliche Artikel:
VMs mit Windows Server Datacenter 2022 auf Azure mit Desktop Experience: Hotpatching verfügbar
Windows Server 2025 vorgestellt
Anzeige
Selbst wenn es nicht bei allen Patches unterstützt wird, solange es dann sauber funktioniert ist doch jede Verbesserung in dem Bereich zu begrüßen.
Gerade in Enterprise Umgebungen sind die Reboots ein häufiger Kritikpunkt der Anwender. Wenn die sich also zumindest zum Teil reduzieren lassen, sehr gerne.
Liegt aber auch oft daran, dass für einen 08/15 das Ausschalten des Monitors = herunterfahren und einschalten des Monitors = starten ist, wenn dann Geräte eine Uptime von >7 Tagen haben, verwundert es keinen das dann das Erfolgsargument der IT "Starte mal den Rechner neu" in 95% der Fälle zum Erfolgt führt :)
Das klappt aber nicht immer mit dem anlassen, wenn der Monitor ausgeschaltet wird. Lenovo AIO Systeme schalten sich ab wenn der Bildschirm ausgeschaltet wird.
Andererseits starte ich Windows zuhause auch relativ selten neu. Der Ruhezustand (S4) ist in Verbindung mit einer Samsung 960 Pro M2 SSD mit 512GB eine klasse Erfindung. Zusätzlich können aus dem S4 auch Radio und TV Aufzeichnungen gestartet werden.
Man kann Browser, Mediaplayer und andere Anwendungen einfach offen lassen. Das Reaktivieren des Systems bei einer Arbeitsspeicher Auslastung von über 10GB geht echt schnell.
Der einzige Punkt den ich bis Jetzt nicht so gut finde ist Windows Update. Die Auswahl Später ist bei Windows immer 05:30 des Folgetages.
Das daraus resultierende Problem besteht darin, das Windows den PC nach dem erfolgreichen Installieren von Updates, nicht mehr automatisch in den Ruhezustand zurückversetzt.
Wahrscheinlich verhindert das Automatisch startende Prog DVB die Rückkehr in den Ruhezustand (S4)
>> Der Ruhezustand (S4) ist in Verbindung mit einer Samsung 960 Pro M2 SSD mit 512GB eine klasse Erfindung.
Dem schliesse ich mich an. Und Windows funktioniert ja auch schon lange gut genug, dass ein Neustart "zur Problembehebung" praktisch nie mehr erforderlich ist. Wenn, dann eher, weil das tolle MS365 mal wieder nicht tut, was es soll, und ein Neustart einfacher ist als Versuche, das jeweilige konkrete Problem anderweitig zu beheben. Auch das, muss ich fairerweise sagen, kommt inzwischen statt "dreimal am Tag" nur noch "einmal alle zwei Wochen" vor.
Herunterfahren, womöglich über den "Power" Knopf – Rechner geht aus, am anderen Morgen wieder hochfahren und Rechner geht an – ist kein Neustart, schon lange nicht mehr.
Siehe CPU-Betriebszeit im Taskmanager.
Wirklicher Neustart wie "in alten Zeiten" gelingt nur über explizites anwählen der Funktion.
Ist richtig.
Die Funktion dazu heißt "Schnellstart". Sie kann bei Stabilitätsproblem in dem Energieoptionen deaktiviert werden. Danach wird Windows immer vollständig heruntergefahren.
oder ggf auch nicht:
https://www.heise.de/news/Windows-11-Testet-Microsoft-Hotpatching-9638773.html
Bei 0Patch funktioniert das ja auch ohne Neustart…
"Aber es ist so, dass Windows bis heute einen Neustart benötigt, damit Systemupdates am Kernel wirksam werden. Dort ist es ja so, dass die betreffenden Dateien im Systemzugriff sind und nicht per Update aktualisiert werden können."
0) Hotpatching unterstützt Windows PRINZIPIELL seit Server 2003!
1) Um einen aktualisierten/neuen Kernel zu laden muss nicht nur Windows (genauer: dessen Kernel) neu gestartet werden!
2) Vor 35 Jahren haben Dave Cutler und die eNTen-Entwickler den Modul-Lader so geschrieben, dass der Dateien im Modus FILE_SHARE_READ öffnet statt FILE_SHARE_READ plus FILE_SHARE_DELETE.
Hätten sie zusätzlich FILE_SHARE_DELETE angegeben, dann könnten zum Ausführen geöffnete Dateien gelöscht (oder umbenannt) werden und eine aktualisierte Datei unter dem gleichen Namen am gleichen Ort erstellt werden.
Dummerweise ist dieses Verfahren für Anwendungen/Programmpakete, die aus mehreren voneinander abhängigen Dateien bestehen, NICHT geeignet: bei Stromausfall oder Systemabsturz während der Aktualisierung mehrerer Dateien ist der Zustand undefiniert und das betreffende, nur teilweise aktualisierte Programmpaket ggf. nicht mehr funktionsfähig.
3) Der Kernel wird NICHT vom Modullader geladen!
JFTR¹: mit dem abgekündigten "Transactional NTFS" kann ein solcher Dateiaustausch als atomare Transaktion erfolgen.
JFTR²: ein geladenes Modul (.EXE, .DLL, etc.) kann den eigenen Dateinamen durch Aufruf von MoveFile(‹eigener Dateiname›, ‹neuer Pfadname›) ändern.
Wenn Billy das versucht, dann sehe ich schon Rechner mit Bluescreens ohne Ende.
Billy versucht gar nichts mehr, außer vielleicht, seinen Ruhestand zu genießen.
Billy zieht ganz andere Fäden inzwischen…
SuSE hat ab der SLES12 mit einer kGraft-basierten Implementation angefangen, heutzutage (SLES15) geht es auch im Userspace.
Allerdings hat die Bedeutung im Serverbereich abgenommen, da wichtige Services heutzutage oft geclustert werden und schon eine Redundanz mitbringen. Einzige Ausnahme, die mir im Moment einfällt sind Datenbanken.
Bei Endnutzersystemen sieht es freilich anders aus, ich kenne meine "Pappenheimer", die ihren Laptop fast nie neu starten sondern immer nur zuklappen (Standby). Die reagieren dann ganz überrascht, wenn ich ihnen sage, daß ein Patch laut WSUS schon seit einer Woche auf "installiert" steht, der zur Finalisierung der Installation nötige Reboot aber immer noch nicht stattgefunden hat.
Gutes Einsatzgebiet dürften auch Vending- und POS-Systeme sein. Ich könnte mir vorstellen, daß bei konsequenter Umsetzung etwa der Bahn das WannaCry-Debakel 2017 erspart geblieben wäre – man hätte die Systeme zeitnah schützen können ohne deutschlandweit die Anzeigetafeln jeden Monat zu rebooten.
Die können gerne "Hotpatch" einführen, allerdings dass dies funktioniert, glaube ich erst, wenn ich es sehen kann.
Die Abhängigkeit von bestimmten Diensten voneinander, insbesondere die indirekten Abhängikeiten, sind teilweise überhaupt nicht dokumentiert, so dass sogar MS eigene Senior Techniker des 3rd-Level auch ratlos davor hocken.
Wenn Microsoft mal wieder den richtigen Neustart bzw. das richtige Herunterfahren zum Standard machen würde wäre auch vielen geholfen. Man kann nicht immer nur vom Energiesparen reden und dann laufen die Kisten im Hintergrund trotzdem weiter auf Sparflamme. Wenn die auch so schnell durchstarten ist das auch keine Problem.
Klingt für mich jetzt nicht, dass das Hotpatching wirklich funktioniert, eher danach, dass Funktionalitäten aus Patches absichtlich zurückgehalten werden um dann nur quartalsweise neustarten zu müssen…also entweder Hotpatching geht oder es geht nicht, aber so?
Updates dynamischer Runtimelibraries waren schon Anfang der 90er Standard bei dem Unix Solaris-OS von Sun Microsystems. Wir hatten manche Server jahrelang ohne einen Restart betrieben. Aber leider setzt sich auf Dauer nicht Qualität durch, sondern eher die Skrupellosigkeit und Nötigung. Dies ist nicht nur bei Hard- und Software sondern ein allgemein zu beklagender Befund an Kollateralschäden zum Nachteil Aller.