Windows 11: fragmentacji rynku ciąg dalszy?
Zbliża się wydanie kolejnej wersji Windows 11 - 22H2, zastępującej premierową, zeszłoroczną. Microsoft obiecał co prawda przejście na trzyletni cykl wydawniczy, ale jeszcze nie teraz. Czy Jedenastek będzie tyle, co Dziesiątek?
Windows 10 to zbiorcza nazwa na dziewięć wydań systemu operacyjnego z Redmond. Wbrew opinii niektórych, konsekutywne wydania Dziesiątki nie były Service Packami, a zupełnie nowymi systemami. Za każdym razem z nową wersją przychodził nowy pakiet SDK oraz nowe API i kontrolki UWP, co wyróżniało kolejne wersje jako oddzielne platformy programowania. Czasami, choć nie zawsze, zmieniał się także model sterownika i niektóre urządzenia miały sterowniki dla "nowych Dziesiątek" i "starych Dziesiątek".
To, kiedy następowały takie zmiany, bywało niejasne. Wszak wszystkie wersje Windows 10 miały taką samą nazwę oraz taki sam numer jądra. Różniły się przydomkami nadawanymi im przez Microsoft i oczywiście numerem kompilacji. Z samych owych informacji nic nie wynikało. Dlatego posiadanie systemu "Windows 10" nie oznaczało jeszcze, że użytkownik ma nową, zaawansowaną wersję Windows Defendera, obsługę wyświetlania nocnego, rozszerzony model sterownika, WSL2 i DirectX Ultimate.
10 != 10
Nie wiadomo było zatem, czy dany program zadziała na Dziesiątce u klienta, czy będzie wymagać aktualizacji. Popularnym przykładem był Windows Terminal, wymagający wydania 1903 (Build 18362). Aplikacje, jeżeli wymagały jakiejś funkcji Dziesiątki, dokładnie definiowały to w manifeście, ale dla użytkownika było to enigmatyczne: Windows 10 to Windows 10.
Drugim problemem związanym z fragmentacją była konieczność przygotowywania dużej liczby aktualizacji. Microsoft musiał obsługiwać przez pewien czas po pięć Dziesiątek, ponieważ de facto były to różne systemy. Konieczne było zatem budowanie wielu aktualizacji. Problem stał się na tyle duży, że firma przełączyła się na cykl roczny. Obecnie utrzymywane są już tylko wersje LTSC (najnowsza wersja Windows 10 także współdzieli kod z LTSC 2021).
Skoro Microsoft przełączył się na tryb roczny, Dziesiątka od niemal 2,5 roku pozostaje na tej samej bazie (19041) i obiecano przejście na wydania trzyletnie - czy nowe wydanie Jedenastki nie jest pogłębianiem problemu, który usiłowano rozwiązać?
Będzie dobrze
Wydaje się, że jednak nie. Microsoft testował od pewnego czasu backportowanie nowych funkcji do starszych gałęzi. Zrobiono tak z MSIX oraz WSL2 jeszcze w Dziesiątce. Windows 11 ma otrzymywać nowe funkcje właśnie w ten sposób: wydania opracowane z użyciem usprawnionej postaci powyższej metodyki nazwano wewnętrznie "Moments".
Funkcje są tworzone na nowych gałęziach (227xx, 228xx i 229xx), podczas gdy system pozostaje na gałęzi 226xx. Następnie dokonywany ma być backport, wciągający daną nowość oraz niezbędny do jej działania runtime "z przyszłości", przeznaczony tylko dla niej. Tak twierdzi Mayank Parmar z Windows Latest.
Potwierdza to hipotezę postawioną niedawno w naszym tekście na temat innowacji w Okienkach. Wiemy już dokładniej, jak Microsoft chce tak naprawdę prowadzić swój nowy cykl wydawniczy. Funkcje i API będą teraz spływać do użytkowników niezależnie od bazy, która będzie mieć znaczenie zapewne głównie w kwestii obsługi sprzętu i licencjonowania.
A co z API?
Poza tym, nowy .NET, PowerShell i różne nowoczesne toolboksy, jak MAUI, WinUI i tak dalej, także są rozwijane niezależnie od systemu i możliwe do osadzenia na dowolnej wersji. Zawsze przychodzą w postaci "otyłej", z zabudowanymi dependencjami. Nie ma tu zależności do systemu, zresztą aplikacje celujące w ten runtime także da się budować do formy "otyłej", zwanej self-contained.
A ponieważ baza systemowa się nie zmienia, znika problem wydawania tuzina łatek na jedną dziurę. Problem fragmentacji wydań Windows zostaje w ten sposób zażegnany, w dość elegancki, acz wymagający objętościowo sposób. Nie jest to rolling release, ale na to nie ma co liczyć.
Kamil J. Dudek, współpracownik redakcji dobreprogramy.pl