Windows i aktualizacje: kumulatywne czy nie?
Nowa wersja Windows Update miała znacznie zmniejszyć liczbę aktualizacji i skrócić czas potrzebny na ich instalację. Istotnie, Windows 10 i następcy stosują jedną aktualizację na miesiąc, zamiast "jednej na dziurę". Ale poza nią, czasem pojawia się ich więcej. Dlaczego?
01.04.2023 10:33
Windows Update nigdy nie stał się tym, czy miał zostać w połowie pierwszej dekady bieżącego wieku. Okazał się na tyle mało elastyczny, że w jego zastępstwie Microsoft stosuje aktualizatory Office Click-to-Run, sklep Microsoft Store, zbiór narzędzi z frameworku Electron oraz… aplikację Chrome Update, dostosowaną dla Edge. Nawet sam Windows sprawiał problemy: im więcej czasu minęło od wydania systemu, tym dłużej trwało wyszukiwanie aktualizacji.
Problem wynikał z tego, że w czasach "jedna dziura - jedna łatka", mechanizm musiał obliczać zbiór pasujących poprawek na podstawie wszystkich wydanych kiedykolwiek dla produktu. Obecnie sprawdza tylko, czy zainstalowana jest najnowsza… a raczej sprawia takie wrażenie. Windows Update dalej sprawdza, które poprawki pasują. Po prostu jest ich znacznie mniej.
Zobacz także
Wciąż dalej jest ich tak wiele?
Ale dlaczego nie ma po prostu jednej, zbiorczej, jak planowano na początku? Jakie aktualizacje są serwowane bokiem i z jakiego powodu? Aby odpowiedzieć na to pytanie, musimy najpierw wykluczyć aplikacje rejestrujące się do Microsoft Update, czyli nadzbioru WU, pozwalającego aktualizować inne aplikacje Microsoftu (choć jest ich mniej niż byśmy chcieli).
Dalsza część artykułu pod materiałem wideo
Należą do nich Office 2013 i 2016, SQL Server, .NET (Framework i Core), PowerShell oraz biblioteki wykonawcze C++. Oddzielnym harmonogramem aktualizowane są także Windows Defender (silnik i definicje) oraz comiesięczne odświeżone wydania Narzędzia do Usuwania Złośliwego Oprogramowania (MRT). Rzecz jasna, osobno instalowane są także sterowniki.
Co do samego Windowsa, pakietów aktualizowanych poza comiesięczną paczką zbiorczą jest coraz mniej. Pakiety językowe, kodeki audio/wideo i akcesoria są aktualizowane przez Sklep. Pomoc została całkowicie usunięta na rzecz wołania wyszukiwarki Bing. Edge instaluje się tylko raz, potem rolę jego aktualizacji przejmuje Edge Update.
Zobacz także
Mechanizm Windows Update dokonuje aktualizacji… systemowego jądra Linuksa (kernel 4.4.0-22621-Microsoft), ale wraz z premierą WSL w Sklepie, będzie ono aktualizowane przez Microsoft Store, w samym systemie pozostanie tylko LXSS. Inne, wymarłe już aktualizacje tradycyjnie instalowane oddzielnie to Flash, Silverlight, ActiveX Killbit i Internet Explorer.
SSU, LCU, DBX, MCU
Co pozostaje? Przede wszystkim SSU - czyli aktualizacja stosu serwisowego ("Update for Windows Update"). Jest ona wymagana do poprawnej instalacji nowych poprawek. Stos serwisowy jest oszałamiający złożony wymaga ciągłych usprawnień. Nowe SSU są wydawane dość często, choć niedawno połączono je z paczkami zbiorczymi (LCU). Aby jednak taka paczka była "zrozumiana", potrzebna jest… choć jedna oddzielna aktualizacja SSU.
Poza tym, oddzielnie instalowane są poprawki, których instalacja zagraża wydajności lub sprawności sprzętu. W tej kategorii znajdują się dwa rodzaje pakietów: aktualizacje mikrokodu procesorów oraz aktualizacje list odwoławczych UEFI (nie mowa tu o DBX, a nie samym UEFI, czyli pakietach aktualizujących firmware platformy i układów pomocniczych - te bowiem bardzo rzadko są rozprowadzane przez Windows Update).
Aktualizacje mikrokodu ładują poprawki bezpośrednio do procesora. Od wielu lat możliwe jest "łatanie" odkrytych w "krzemie" procesora błędów poprzez dodanie do niego kodu wywoływanego wewnątrz układu, zmieniając jego zachowanie. W ten sposób załatano podatność Meltdown i jej kolejnych potomków, których od jej czasu wykryto bardzo dużo.
Aktualizacja-samobój
Nałożenie nowego mikrokodu może zauważalnie pogorszyć wydajność, a w pechowych przypadkach, teoretycznie, złamać kompatybilność i zmienić działanie programów. Jednym z "poszkodowanych" jest np. Microsoft SQL Server, toteż mikrokod przychodzi w oddzielnych paczkach, by administratorzy mogli je zablokować, bez blokowania pozostałych łatek.
Pakiety aktualizacji DBX to niewątpliwie najbardziej wstydliwa pozycja na liście. Zarówno ze względu na powody jej obecności na niej, jak i jej pochodzenie oraz przeznaczenie. DBX jest związane z mechanizmem Secure Boot. Pokrótce sprawa wygląda tak: Secure Boot zezwala na start tylko tych bootloaderów, które są podpisane kluczem znanym w bazie UEFI i nieunieważnionym. Konsorcjum UEFI wydaje listy unieważnionych kluczy (teoretycznie). Listy te rozprowadza… Microsoft, poprzez Windows Update. Są one możliwe do "wrzucenia" w firmware bez konieczności aktualizacji "BIOS-u".
A przynajmniej tak mówi specyfikacja. W praktyce, szereg implementacji UEFI zawierał błędy, uniemożliwiające załadowanie listy DBX. Na przykład, niektóre laptopy HP po instalacji poprawki dla Secure Boot przestały się uruchamiać i ich naprawa była nietrywialna w scenariuszach konsumenckich. Dlatego DBX, podobnie jak mikrokod, są dostarczane oddzielnie i administratorzy mogą je zablokować. Taka jest konsekwencja rozmywania granicy między sprzętem, a oprogramowaniem.
Kamil J. Dudek, współpracownik redakcji dobreprogramy.pl