"Seamless Updates" do Android Nougat, explicado

Índice:

"Seamless Updates" do Android Nougat, explicado
"Seamless Updates" do Android Nougat, explicado

Vídeo: "Seamless Updates" do Android Nougat, explicado

Vídeo:
Vídeo: Mais comandos de terminal linux - Root #20 - YouTube 2024, Abril
Anonim
Em todas as gerações de dispositivos Android - até Marshmallow incluído - as atualizações do sistema operacional funcionaram basicamente da mesma maneira: a atualização é baixada, o telefone é reinicializado e a atualização é aplicada. Durante esse tempo, o telefone é inutilizado, pelo menos até que a atualização tenha sido totalmente instalada. Com as novas "Atualizações sem costuras" do Nougat, esse modelo é uma coisa do passado.
Em todas as gerações de dispositivos Android - até Marshmallow incluído - as atualizações do sistema operacional funcionaram basicamente da mesma maneira: a atualização é baixada, o telefone é reinicializado e a atualização é aplicada. Durante esse tempo, o telefone é inutilizado, pelo menos até que a atualização tenha sido totalmente instalada. Com as novas "Atualizações sem costuras" do Nougat, esse 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 da seguinte forma: a atualização é baixada em segundo plano e, em seguida, avisa ao usuário que é necessário reinicializar para concluir o processo de instalação. Uma rápida reinicialização mais tarde, e a atualização está completa - sem esperar que a atualização seja instalada, sem "otimizar" ou qualquer outra coisa que pareça levar idades. É rápido, fácil e, acima de tudo, não tem uma quantidade excessiva de tempo de inatividade.

A partir do Android 7.0, esta é a direção que as atualizações do Android estão seguindo. Vale a pena mencionar aqui que não vou aplicam-se a dispositivos atualizados para o Nougat, apenas aqueles que acompanham 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 um. Re-particionar 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 um pouco assim: há uma partição de sistema ativa e uma partição dormente, 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 dormente. Uma reinicialização posterior, a partição inativa torna-se ativa e a partição anteriormente ativa fica inativa, aplicando o software atualizado.

Isso não só torna o processo de atualização inteiro incomensuravelmente mais rápido, mas também serve como um tipo de sistema de backup. Se algo der errado com a atualização, o sistema poderá detectar um erro durante a inicialização e simplesmente voltar para a partição do sistema não afetada. Na reinicialização, ele pode executar ping nos servidores de download novamente, reaplicar a atualização e reinicializar novamente para concluir o processo. Comparado ao modo como as falhas de atualização catastróficas são tratadas no sistema atual - o que exige muita interação do usuário, ferramentas de desenvolvimento do Android e familiaridade com a linha de comando - o método de partição dupla é simplesmente melhor.

Nós ainda não vimos isso em ação, então ainda há muitas perguntas

Naturalmente, ele vem com seu próprio conjunto de perguntas e preocupações. Embora entendamos como esse sistema funciona na teoria, ainda precisamos ver como ele realmente funciona na prática, uma vez que o Nougat ainda não teve uma atualização e nenhum dispositivo foi lançado 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 grande no desempenho do sistema.

Além disso, se você for como eu, leu a seção acima e pensou: “quanto espaço terá as duas partições do sistema?” Pode-se supor automaticamente que será necessário o dobro da quantidade de espaço, o que não é completamente incorreto, mas você também tem que lembrar que estes são sistema partições, o que não significa que exigirá duas cópias de cada aplicativo instalado. Ainda assim, isso significa que os sistemas atuais que consomem um gigabyte - um tamanho não incomum para um sistema operacional Android - podem exigir, no momento, dois gigabytes (ou mais).

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 vão acompanhar a configuração de duas partições do sistema. Ainda assim, podemos começar a ver dispositivos enviados commínimo de 32GB avançando. 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 possa ser atualizado em segundo plano e, em seguida, aguardar a chegada de outro novo OTA, mas não há documentação técnica para dar suporte a essa teoria, apenas eu pensando em voz alta. Ainda assim, parece fazer sentido para mim, porque senão esse novo sistema pareceria, aparentemente, um cenário de atualização do tipo "uma vez e feito", que é exatamente a direção oposta à que o Google está tentando ir até aqui.

Infelizmente, como ainda não existe um dispositivo que suporte o novo sistema de atualização contínua, algumas dessas perguntas só precisam ficar sem resposta. Assim que as novas gerações de telefones começarem a ser lançadas, teremos uma compreensão muito melhor de como tudo isso funcionará no mundo real. Mas por enquanto: parece uma coisa muito boa.

Recomendado: