Explicação das “atualizações contínuas” do Android Nougat

IMG_9441

Em todas as gerações de dispositivos Android – até um incluindo Marshmallow – as atualizações do sistema operacional funcionaram essencialmente da mesma maneira: a atualização é baixada, o telefone reinicializa e a atualização é aplicada. Durante esse tempo, o telefone se torna inútil, pelo menos até que a atualização seja totalmente instalada. Com as novas “atualizações contínuas” do Nougat, este modelo é uma coisa do passado.

Como as atualizações foram alteradas no Android 7.0 Nougat

O Google retirou uma página de seu próprio Chrome OS para o novo método de atualização. Os Chromebooks sempre funcionaram efetivamente assim: a atualização é baixada em segundo plano e, em seguida, avisa ao usuário que é necessário reiniciar para concluir o processo de instalação. Uma reinicialização rápida mais tarde, e a atualização está completa – sem esperar pela instalação da atualização, sem “otimização” ou qualquer outra coisa que parece demorar muito . É rápido, fácil e, acima de tudo, não tem um tempo de inatividade excessivo.

A partir do Android 7.0, esta é a direção que as atualizações do Android estão tomando. Vale a pena mencionar aqui que isso não se aplica a dispositivos atualizados para o Nougat, apenas aqueles que vêm com o software. A razão para isso é perfeitamente lógica: este novo método de atualização exigirá duas partições de sistema para funcionar, e praticamente todos os telefones Android atuais têm apenas uma. Reparticionar o dispositivo em tempo real pode ser potencialmente catastrófico (e provavelmente seria em muitos cenários), então a decisão do Google de deixá-lo sozinho nos telefones da geração atual é respeitável, embora seja uma chatice.

Funciona mais ou menos assim: há uma partição ativa do sistema e uma partição inativa, que são imagens espelhadas uma da outra. Quando uma atualização OTA se torna disponível, a partição ativa faz o download e, em seguida, atualiza a partição inativa. Uma reinicialização depois, a partição dormente torna-se ativa e a partição anteriormente ativa torna-se dormente, aplicando o software atualizado.

Recomendado:  Por que medimos a velocidade em bits, mas o espaço em bytes?

Isso não apenas torna todo o processo de atualização incomensuravelmente mais rápido, mas também funciona como uma espécie de sistema de backup. Se algo der errado com a atualização, o sistema pode detectar que há um erro durante a inicialização e simplesmente voltar para a partição do sistema não afetada. Na reinicialização, ele pode executar o ping nos servidores de download mais uma vez, reaplicar a atualização e reinicializar novamente para concluir o processo. Em comparação com a forma como as falhas catastróficas de atualização são tratadas no sistema atual – que requer muita interação do usuário, ferramentas de desenvolvimento Android e familiaridade com a linha de comando – o método de partição dupla é simplesmente melhor.

Ainda não vimos isso em ação, então ainda há muitas perguntas

Claro, ele vem com seu próprio conjunto de perguntas e preocupações. Embora entendamos como esse sistema funciona na teoria, ainda não vimos como ele realmente funciona na prática, já que o Nougat ainda não teve uma atualização e nenhum dispositivo foi enviado com o 7.0. Qualquer coisa é especulação, mas imagino que quando uma atualização estiver sendo aplicada, por exemplo, provavelmente haverá um impacto muito forte no desempenho do sistema.

Além disso, se você for como eu, você leu a seção acima e pensou: “quanto espaço terá duas partições de sistema?” Pode-se presumir automaticamente que levará o dobro de espaço, o que não é totalmente incorreto, mas você também deve se lembrar que essas são partições do sistema , o que não significa que exigirá duas cópias de cada aplicativo instalado. Ainda assim, isso significa que os sistemas atuais que ocupam um gigabyte – um tamanho não incomum para um sistema operacional Android – podem agora exigir essencialmente dois gigabytes (ou mais).

Recomendado:  Como obter as melhores fotos impressas em impressoras de drogarias

Dito isso, o Google mudou para um novo sistema de arquivos chamado SquashFS, que é um sistema de arquivos altamente compactado, somente leitura, originalmente projetado para sistemas embarcados em situações de pouca memória. Isso definitivamente deve ajudar a compensar alguns dos problemas de espaço que inevitavelmente irão junto com a configuração de duas partições de sistema. Ainda assim, podemos começar a ver os dispositivos serem enviados com no  mínimo 32 GB daqui para frente. O tempo vai dizer.

Também não está claro o que acontece com a nova partição inativa após a atualização. Existe a possibilidade de que ele seja atualizado em segundo plano e, em seguida, aguarde a chegada de outro novo OTA, mas não há documentação técnica para apoiar essa teoria – só eu pensando em voz alta. Ainda assim, parece fazer sentido para mim, porque caso contrário, este novo sistema aparentemente pareceria uma espécie de cenário de atualização definitiva, que é exatamente a direção oposta que o Google está tentando seguir aqui.

Infelizmente, como ainda não existe um dispositivo que ofereça suporte ao novo sistema Seamless Update, algumas dessas perguntas terão que ficar sem resposta. Assim que as novas gerações de telefones começarem a ser lançadas, teremos um entendimento muito melhor de como tudo isso funcionará no mundo real. Mas, por agora: parece uma coisa muito boa.