In alle generaties Android-apparaten, inclusief Marshmallow, hebben updates van het besturingssysteem in wezen op dezelfde manier gewerkt: de update wordt gedownload, de telefoon wordt opnieuw opgestart en de update wordt toegepast. Gedurende deze tijd wordt de telefoon onbruikbaar gemaakt, tenminste totdat de update volledig is geïnstalleerd. Met Nougat's nieuwe "Seamless Updates" behoort dit model tot het verleden.
Hoe updates zijn veranderd in Android 7.0 Nougat
Google heeft een pagina uit hun eigen Chrome OS gehaald voor de nieuwe updatemethode. Chromebooks hebben in feite altijd als volgt gewerkt: de update wordt op de achtergrond gedownload en vraagt de gebruiker vervolgens dat opnieuw opstarten nodig is om het installatieproces te voltooien. Een snelle herstart later, en de update is voltooid - niet wachten tot de update is geïnstalleerd, niet 'optimaliseren' of iets anders dat lijkt te duren . Het is snel, gemakkelijk en heeft vooral geen onredelijke hoeveelheid downtime.
Beginnend met Android 7.0, is dit de richting waarin Android-updates gaan. Het is de moeite waard hier te vermelden dat dit zijn van toepassing op apparaten die zijn bijgewerkt naar Nougat, alleen op apparaten die met de software worden geleverd. De reden hiervoor is volkomen logisch: voor deze nieuwe updatemethode zijn twee systeempartities nodig om te kunnen werken, en vrijwel alle huidige Android-telefoons hebben er maar één. Het onmiddellijk opnieuw partitioneren van het apparaat kan potentieel catastrofaal zijn (en zal waarschijnlijk in veel scenario's zijn), dus de beslissing van Google om het apparaat met rust te laten op de huidige generatie telefoons is respectabel, zij het een spelbreker.
Het werkt ongeveer zo: er is een actieve systeempartitie en een slapende partitie, die spiegelbeelden van elkaar zijn. Wanneer een OTA-update beschikbaar komt, downloadt de actieve partitie deze en werkt vervolgens de slapende partitie bij. Een keer later opnieuw opstarten, wordt de slapende partitie actief en wordt de voorheen actieve partitie slapend, dit met de bijgewerkte software.
VERWANT: Hoe u uw Nexus-apparaat handmatig kunt upgraden met de fabrieksafbeeldingen van Google
Dit maakt niet alleen het hele updateproces onmetelijk sneller, maar het dient ook als een soort back-upsysteem. Mocht er iets misgaan met de update, dan kan het systeem detecteren dat er een fout is opgetreden tijdens het opstarten en eenvoudig teruggaan naar de niet-getroffen systeempartitie. Na het opnieuw opstarten kan het de downloadservers nogmaals pingen, de update opnieuw toepassen en opnieuw opstarten om het proces te voltooien. Vergeleken met de manier waarop catastrofale updatefouten worden afgehandeld in het huidige systeem, waarvoor veel gebruikersinteractie, Android-ontwikkeltools en bekendheid met de opdrachtregel - de methode met twee partities is gewoon beter.
We hebben dit nog niet in actie gezien, dus er zijn nog veel vragen
Het komt natuurlijk met zijn eigen reeks vragen en zorgen. Hoewel we begrijpen hoe dit systeem in theorie werkt, moeten we nog zien hoe het in de praktijk presteert, aangezien Nougat nog geen update heeft gehad en er geen apparaten zijn geleverd met 7.0. Alles is speculatie, maar ik kan me voorstellen dat wanneer bijvoorbeeld een update wordt toegepast, de systeemprestaties waarschijnlijk behoorlijk zwaar zullen worden beïnvloed.
Bovendien, als je op mij lijkt, las je het bovenstaande gedeelte en dacht je: "hoeveel ruimte nemen twee systeempartities in beslag?" Je zou automatisch kunnen aannemen dat het twee keer zoveel ruimte in beslag neemt, wat niet helemaal onjuist is, maar je moet ook onthouden dat dit partities, wat niet betekent dat er twee exemplaren van elke geïnstalleerde app nodig zijn. Toch betekent dat dat huidige systemen die één gigabyte nodig hebben - een niet ongebruikelijke grootte voor een Android-besturingssysteem - nu in wezen twee gigabyte (of meer) nodig hebben.
Dat gezegd hebbende, is Google overgestapt op een nieuw bestandssysteem genaamd SquashFS, een sterk gecomprimeerd, alleen-lezen bestandssysteem dat oorspronkelijk is ontworpen voor embedded systemen in situaties met weinig geheugen. Dit zou zeker moeten helpen om enkele van de ruimteproblemen te compenseren die onvermijdelijk samengaan met het instellen van een twee-systeempartitie. Toch kunnen we zien dat apparaten worden geleverd met een minimum van 32 GB vooruit. De tijd zal het leren.
Het is ook onduidelijk wat er na de update met de nieuwe slapende partitie gebeurt. Het is mogelijk dat het dan op de achtergrond wordt bijgewerkt en vervolgens wacht tot er weer een nieuwe OTA arriveert, maar er is geen technische documentatie om deze theorie te ondersteunen - ik denk alleen hardop. Toch lijkt het me logisch, want anders zou dit nieuwe systeem blijkbaar een eenmalig soort updatescenario lijken, wat precies de tegenovergestelde richting is die Google hier probeert te volgen.
Helaas, aangezien er nog geen apparaat is dat het nieuwe naadloze updatesysteem ondersteunt, zullen sommige van deze vragen onbeantwoord moeten blijven. Zodra de nieuwe generaties telefoons op de markt komen, zullen we veel beter begrijpen hoe dit alles in de echte wereld zal werken. Maar voor nu: het klinkt als iets heel goeds.