We wszystkich generacjach urządzeń z systemem Android - aż do aktualizacji systemu operacyjnego Marshmallow zasadniczo działało w ten sam sposób: aktualizacja została pobrana, telefon uruchomiono ponownie i zastosowano aktualizację. W tym czasie telefon staje się bezużyteczny, przynajmniej do czasu, gdy aktualizacja zostanie w pełni zainstalowana. Dzięki nowym "Bezawaryjnym aktualizacjom" Nougata model ten należy już do przeszłości.
Firma Google pobrała stronę z własnego systemu operacyjnego Chrome w celu uzyskania nowej metody aktualizacji. Chromebooki zawsze działały tak: aktualizacja jest pobierana w tle, a następnie monituje użytkownika, że konieczne jest ponowne uruchomienie komputera, aby zakończyć proces instalacji. Jedno szybkie ponowne uruchomienie w późniejszym czasie, a aktualizacja jest kompletna - nie trzeba czekać na aktualizację do zainstalowania, żadnej "optymalizacji" ani żadnej innej rzeczy, która wydaje się zajmować wieczność. Jest szybki, łatwy, a przede wszystkim nie ma nieuzasadnionej ilości przestojów.
Począwszy od wersji Android 7.0, jest to kierunek, w którym idą aktualizacje Androida. Warto tutaj o tym wspomnieć nie będzie dotyczy urządzeń zaktualizowanych do Nougat, tylko tych, które są dostarczane wraz z oprogramowaniem. Przyczyna tego jest całkowicie logiczna: ta nowa metoda aktualizacji wymaga dwóch partycji systemowych, aby mogła działać, a wszystkie obecne telefony z Androidem mają tylko jedną. Ponowne partycjonowanie urządzenia w locie może być potencjalnie katastrofalne (i prawdopodobnie wystąpiłoby w wielu scenariuszach), więc decyzja Google o pozostawieniu go samego na telefonach z obecną generacją jest godna szacunku, aczkolwiek nieudana.
Działa to trochę tak: jest aktywna partycja systemowa i uśpiona partycja, które są swoimi lustrzanymi odbiciami. Gdy aktualizacja OTA staje się dostępna, aktywna partycja pobiera ją, a następnie aktualizuje nieaktywną partycję. Po jednym ponownym uruchomieniu partycja uśpiona staje się aktywna, a poprzednio aktywna partycja zostaje uśpiona, co oznacza zaktualizowane oprogramowanie.
Nie tylko powoduje to, że cały proces aktualizacji jest niewiarygodnie szybszy, ale służy również jako rodzaj systemu kopii zapasowych. Jeśli coś się nie uda z tą aktualizacją, system wykryje, że podczas uruchamiania systemu wystąpił błąd i po prostu wraca na nienaruszoną partycję systemową. Po ponownym uruchomieniu komputera można ponownie pingować serwery pobierania, ponownie zastosować aktualizację i ponownie uruchomić ponownie, aby ukończyć proces. W porównaniu do tego, jak katastrofalne są awarie aktualizacji w obecnym systemie - co wymaga dużej interakcji z użytkownikiem, narzędzi programistycznych Androida i znajomości wiersza poleceń - metoda z dwoma partycjami jest po prostu lepsza.
Oczywiście, ma on swój własny zestaw pytań i wątpliwości. Chociaż rozumiemy, jak działa ten system w teorii, musimy jeszcze zobaczyć, jak to faktycznie działa w praktyce, ponieważ Nougat nie ma jeszcze aktualizacji, a żadne urządzenia nie zostały dostarczone z wersją 7.0. Wszystko jest spekulacją, ale wyobrażam sobie, że na przykład, gdy zostanie zastosowana aktualizacja, prawdopodobnie wystąpi bardzo mocny atak na wydajność systemu.
Ponadto, jeśli jesteś podobny do mnie, czytasz powyższą sekcję i myślisz: "ile miejsca ma mieć dwie partycje systemowe?" Można automatycznie założyć, że zajmie to dwa razy więcej miejsca, co nie jest całkowicie niepoprawne, ale musisz też pamiętać, że tak system partycje, co nie oznacza, że będzie wymagać dwóch kopii każdej zainstalowanej aplikacji. Mimo to oznacza to, że obecne systemy, które zajmują jeden gigabajt - nierzadki rozmiar w systemie operacyjnym Android - mogą w zasadzie teraz wymagać dwóch gigabajtów (lub więcej).
Powiedział, że Google przeniósł się do nowego systemu plików o nazwie SquashFS, który jest wysoce skompresowanym systemem plików tylko do odczytu, oryginalnie zaprojektowanym dla systemów wbudowanych w sytuacjach o niskiej pamięci. To zdecydowanie powinno pomóc zrekompensować niektóre problemy z przestrzenią, które nieuchronnie idą w parze z konfiguracją z dwoma systemami partycji. Mimo to możemy zacząć widzieć urządzenia wysyłane zminimum z 32 GB w ruchu. Czas pokaże.
Nie jest również jasne, co dzieje się z nową uśpioną partycją po aktualizacji. Istnieje możliwość, że mogłaby ona zostać zaktualizowana w tle, a następnie czekać na pojawienie się kolejnej nowej OTA, ale nie ma dokumentacji technicznej potwierdzającej tę teorię - tylko ja myślę głośno. Wydaje mi się jednak, że to ma sens, ponieważ w przeciwnym razie ten nowy system wydawałby się być scenariuszem, który kiedyś byłby gotowy do aktualizacji, który jest dokładnie odwrotnym kierunkiem, niż Google stara się tu dotrzeć.
Niestety, ponieważ nie ma jeszcze urządzenia obsługującego nowy system bezproblemowej aktualizacji, niektóre z tych pytań będą musiały pozostać bez odpowiedzi. Gdy zaczną pojawiać się nowe generacje telefonów, będziemy mogli lepiej zrozumieć, jak to wszystko będzie działać w realnym świecie. Ale na razie: To brzmi jak bardzo dobra rzecz.