Microsoft Office: dlaczego aktualizacje są takie duże?

Microsoft Office: dlaczego aktualizacje są takie duże?16.01.2022 20:42
Microsoft Office: dlaczego aktualizacje są takie duże?
Źródło zdjęć: © dobreprogramy | Kamil Dudek

Aktualizacje pakietu Office skutecznie przemigrowały z formatu MSI (powstałego głównie na potrzeby Office 2000) do postaci Click-To-Run (CTR). Potrzebne było kilka podejść do tego, by CTR stało się przystępne, nieinwazyjne i niepsujące zgodności, ale w końcu się udało. Office w wersji 365, od wydania 2010 instaluje się metodą "strumieniową". Kiedyś w tym celu wykorzystywał wirtualny dysk Q oraz usługę AppV, dziś robi to samodzielnie i na Instalatorze Windows (MSI) polega w śladowym stopniu.

Do formatu CTR przemigrowały już także wersje "wieczyste", a nie tylko subskrypcyjne, ale miało to miejsce dopiero w 2019 roku. Obecnie poprawki w formacie klasycznego Instalatora Windows otrzymują tylko dwie wersje: Office 2013 i Office 2016. Na przestrzeni lat stały się one olbrzymie. Obecnie konkurują swoim rozmiarem z aktualizacjami kumulatywnymi samego Windowsa. Pakiet łatek do Office 2013 ze stycznia ważył aż 407 MB! Ostatnia kumulatywna aktualizacja do Windows 10 waży 680 MB. A przecież Office 2013 ma znacznie mniej intensywny proces wydawniczy niż 365. Zmienia się w nim znacznie mniej. A więc co się dzieje?

Nowoczesny i przestarzały jednocześnie

Powodów jest kilka, ale żeby je zrozumieć najpierw potrzebne jest (jak zwykle) trochę historii. Mechanizm aktualizacji, który ostał się jeszcze w wersjach 2013 i 2016 ukształtował się w swojej finalnej postaci wraz z Office 2007. Były to czasy, w których każde kolejne wydanie Office było w pewien sposób przełomowe (czasy te dawno już minęły). Wersja 2007 wprowadziła na przykład nowy mechanizm integrowania łatek: już nie dało się ich integrować ze źródłem instalacyjnym, pozostawało ono wieczyście niezmienne. Zamiast tego, aktualizacje wkleja się do katalogu, z którego są następnie instalowane jako sekwencja pojedynczych poprawek.

Styczeń. , Źródło zdjęć: © dobreprogramy | Kamil Dudek
Styczeń.
Źródło zdjęć: © dobreprogramy | Kamil Dudek

Źródło instalacyjne stało się dzięki temu niezmienne (immutable). Zamiast góry plików, Office instalowany jest z wielkiego archiwum CAB o stałej sumie kontrolnej. W wersji 2007 usprawniono także same aktualizacje: usunięto warianty językowe, dzięki czemu zamiast wydawać 40 wariantów tej samej łatki, budowano jedną. To wielka korzyść, bowiem zależność od łańcuchów językowych była np. jednym z powodów, dla których tak wiele problemów sprawiało stworzenie następcy przeglądarki IE6. To kula u nogi. Program i jego "lokalizacja" powinny być oddzielnymi zasobami.

Gdy nastały czasy Windows 8, Microsoft rozpoczął o wiele bardziej "zwinny" proces rozwoju oprogramowania. Nowe funkcje zaczęły wpadać do Ósemki bocznymi aktualizacjami, pakiet Office także rozwijał się o wiele intensywniej przez pierwsze 5 lat wsparcia - choć jeszcze był to czas Service Packów. Aktualizacje stały się większe, ale nie dlatego, że sam produkt wyraźnie przytył. Powodem było raczej to, że poza poprawkami bezpieczeństwa poprawiano o wiele więcej, dostarczając też nowe funkcje.

Czy wszystko tam jest potrzebne?

Po ośmiu latach Office istotnie jest większy, ale przede wszystkich cierpi na konsekwencje dobicia do kresu możliwości technicznych starych aktualizatorów. Najlepiej widać to właśnie na przykładzie języków. Połączenie procesu niezależnego językowo (dobry pomysł) z procesem szybkiego dostarczania aktualizacji (nowoczesny pomysł) sprawiło, że istotnie dalej otrzymujemy jedną aktualizację zamiast czterdziestu, ale… w środku zawiera ona i tak pliki językowe dla wszystkich wersji językowych. Po prostu plik zmienia się na tyle, że musi otrzymać też aktualizacje języków. Zatoczyliśmy koło.

To przybliża nas do wyjaśnienia, dlaczego łatki do Office'a ważą 407 megabajtów. Największe z nich, excel-x-none oraz mso-x-none, to razem 380. Pierwsza z nich, dla Excela, waży 151 MB. Przyjrzyjmy się jej. Zawiera on nową wersję pliku EXCEL.EXE. Ma on 36 MB, EXCEL.EXE z wciąż popularnego w Polsce Office 2007 waży tylko 18. Podobnie konwertery: w 2016 jest to 30 MB, w 2007 - 15. Pakiet przytył więc dwukrotnie, tak?

Nie! Porównujemy wersję 32-bitową z 64-bitową. Gdy weźmiemy wariant 32-bit, rozmiar okazuje się rosnąć już tylko o 1,25 raza: zamiast 151 mamy 106 MB. Nie tłumaczy to dalej i tak dużego rozmiaru najnowszych aktualizacji. Wystarczy jednak usunąć pliki lokalizacji i interfejsowe dla wszystkich języków oraz niepotrzebnie wrzucane przez build zasoby graficzne i ikony (za każdym razem!), by rozmiar spadł do ze 109 do 40 MB. Oznacza to ponownie przyrost jedynie o 25%. W przypadku aktualizacji rdzenia Office (MSO.DLL) mamy do czynienia z tym samym problemem, spotęgowanym w dodatku o dostarczanie jednocześnie wariantów 32 i 64 bit.

Problem rozwiązany?

Wniosek jest prosty: klasyczne instalatory nie są dostosowane do dzisiejszych potrzeb i Microsoft przemigrował na nowe. Nie włożono zarazem żadnego wysiłku by poprzednie paczki były choć elementarnie zoptymalizowane. W rezultacie w Redmond budowane są gigantyczne pakiety, zawierające w środku najwyżej jedną trzecią tego, czego potrzebuje klient. Oznacza to setki gigabajtów marnowanego transferu, co miesiąc, od lat.

Aktualizacje dokonywane przez Microsoft Store są o wiele lepiej zoptymalizowane. Szkoda tylko, że Office wykorzystuje własny aktualizator (Click-To-Run), OneDrive - jeszcze inny, a Microsoft Edge i Teams stosują rozwiązanie stworzone przez Google na potrzeby Chrome'a. Problem wcale nie wygląda zatem na rozwiązany.

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.