O Android terá kernel Linux puro?

O kernel do Android é baseado no Linux, porém não pode ser considerado um kernel Linux padrão. O Google quer mudar isso.


Primeiramente, cabe uma rápida explicação de como o kernel do Android é implementado. Basicamente, o Google pega o kernel Linux com suporte estendido (LTS) e faz algumas modificações inserindo código específico para o Android. Depois o mesmo é remetido às empresas que fabricam os chips SoC (Qualcomm, Samsung, MediaTek...) que inserem drivers para os seus dispositivos (CPU, GPU, modem...), e então o código resultante finalmente é enviado aos fabricantes de aparelhos que o personalizam conforme os recursos de cada modelo (tela, portas de comunicação, câmera...).

Na prática cada aparelho acaba rodando um kernel específico, e esta é a gênese da grande fragmentação que sempre existiu no Android. Mas assim como o Jaiminho, o Google quer evitar a fadiga e usar um kernel Linux mais próximo do padrão, sem tantas modificações, de modo a tornar o desenvolvimento mais simples e rápido.


Usar um kernel Linux “puro” sem dúvida traria muitas vantagens, principalmente em termos de atualizações (para vocês terem uma ideia, o Android 10 ainda é baseado no kernel Linux 4.9, de 2016), segurança e padronização. Mas como o Google pretende fazer isso? Empacotando os drivers para os chips SoC e as personalizações dos fabricantes de aparelhos como plug-ins, e criando uma interface no kernel para a carga dos mesmos.

Na teoria é algo lindo, mas na prática o buraco é um pouco mais embaixo.

O primeiro desafio do Google será convencer o tio Linus e os demais mantenedores a inserir trechos específicos do Android no kernel Linux, assim como a interface para a carga dos plug-ins. Parte da comunidade já manifestou muitas ressalvas quanto a isto: eles não querem receber “bugs de legado”, o que poderia levar à inúmeras brechas de segurança, algo grave. Para eles, o melhor seria que os fabricantes de chips SoC e os dos aparelhos abrissem os respectivos códigos para que a comunidade os revise e insira diretamente no kernel, sem usar uma interface adicional para plug-ins.

Certamente é uma discussão que irá longe. Particularmente tendo a concordar com os mantenedores.

Comentários

  1. Acho que a grande vantagem da Apple, é que seu SO é casado com seu hardware.
    Eles são “Feitos um para o outro”

    ResponderExcluir
    Respostas
    1. Certamente é uma vantagem, mas a que preço, principalmente aqui na Bananolandia? O negócio aqui é Android na veia mesmo... rsrsrs

      Excluir
    2. https://youtu.be/yt29BKVfI0I?t=1834

      Excluir
  2. https://youtu.be/yt29BKVfI0I?t=1834

    (postei errado antes)

    ResponderExcluir

Postar um comentário