O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Núcleo

O kernel do Linux é uma parte extremamente importante do software em quase todos os dispositivos Android. Esta seção descreve o desenvolvimento do kernel Linux e modelos de lançamento (abaixo), kernels estáveis ​​e com suporte de longo prazo (LTS) (incluindo por que todos os dispositivos Android devem usar versões estáveis ​​em vez de patches selecionados), configuração e proteção do kernel, requisitos para interfaces kernels modulares (introduzidos no Android O), depuração de kernel e teste de rede e SquashFS .

Desenvolvimento do kernel Linux

O kernel Linux é o maior projeto de software colaborativo de todos os tempos. Em 2016, mais de 4.000 desenvolvedores diferentes de mais de 450 empresas diferentes contribuíram para o projeto e houve 6 lançamentos, cada um contendo entre 12.000 e 16.000 alterações diferentes. No final de 2016, o tamanho do kernel do Linux era de pouco mais de 56 mil arquivos, consistindo de 22 milhões de linhas de código, scripts de construção e documentação (lançamento do kernel 4.9). (Para estatísticas completas de desenvolvimento do Linux, consulte https://kernelnewbies.org/DevelopmentStatistics .)

Embora o kernel do Linux contenha código para todas as diferentes arquiteturas de chip e drivers de hardware que ele suporta, um sistema individual executa apenas uma fração da base de código. Um laptop médio usa cerca de 2 milhões de linhas de código de kernel de 5 mil arquivos para funcionar corretamente, enquanto o telefone Pixel usa 3,2 milhões de linhas de código de kernel de 6 mil arquivos (devido ao aumento da complexidade de um SoC).

Lançamentos do kernel Linux

O kernel do Linux usa um modelo de lançamento que difere substancialmente dos lançamentos AOSP padrão. Com o lançamento do kernel 2.6 em dezembro de 2003, a comunidade de desenvolvedores do kernel mudou do modelo anterior de desenvolvimento separado e branch de kernel estável, e mudou para um modelo de branch estável apenas . Nesse modelo, uma nova versão ocorria a cada 2 a 3 meses, e essa versão foi declarada estável e recomendada para todos os usuários executarem. Essa mudança no modelo de desenvolvimento foi devido ao longo ciclo de lançamento anterior ao kernel 2.6 (quase 3 anos) e à luta para manter duas ramificações diferentes da base de código ao mesmo tempo.

A numeração das versões do kernel começou em 2.6.x, onde x era um número crescente que mudava a cada versão (o valor do número não tem significado, a não ser que seja mais recente que a versão anterior do kernel). A versão do kernel, desde então, mudou para 4.x, contabilizando 2 mudanças principais de versão. Esses números de versão são escolhidos pelo (s) mantenedor (es) apenas para evitar confusão entre os usuários causada por números maiores de versões menores.