O Android é o sistema operacional (SO) para o consumidor mais querido do mundo, alimentando bilhões de smartphones, tablets, TVs inteligentes e outros dispositivos em todo o mundo. Embora existam muitos outros sistemas operacionais populares em uso, nenhum alcançou um alcance tão amplo quanto o Android. A história de sucesso do sistema operacional é longa e sinuosa, mas hoje estamos olhando para trás, para a verdadeira história da origem.
Embora o Google (com razão) leve o crédito pelo desenvolvimento do Android, os primeiros blocos de construção do sistema operacional devem sua existência ao sistema operacional Linux, igualmente onipresente, mas menos conhecido. Hoje, as distribuições Linux abrangem Debian, Fedora, Ubuntu e muitos, muitos outros, equipando PCs, servidores e Raspberry Pis em todo o mundo.
Relacionado: Linux em Chromebooks – Veja como instalar aplicativos Linux
Todas essas variantes do sistema operacional, incluindo o Android, remontam a um anúncio feito há 30 anos hoje, em 25 de agosto de 1991, o dia em que o criador do Linux Linus Torvalds, de apenas 21 anos, revelou pela primeira vez que estava trabalhando em um novo sistema operacional. Um projeto que mais tarde forneceria o kernel Linux usado para construir o sistema operacional Android no qual você pode estar lendo isto.
Olá a todos usando minix –
Estou fazendo um sistema operacional (gratuito) (apenas um hobby, não será grande e profissional como o GNU) para 386 (486) clones AT. Isso está fermentando desde abril e está começando a ficar pronto. Eu gostaria de qualquer feedback sobre coisas que as pessoas gostam / não gostam no minix, já que meu sistema operacional se parece um pouco com ele.
Linus Torvalds – 25 de agosto de 1991 no newsgroup comp.os.minix
De Linux para Android
O primeiro código-fonte público do Linux foi lançado em 17 de setembro de 1991, mas a jornada moderna do Android só começou muito mais tarde, em outubro de 2003. Entre essas datas, o Linux passou por amplas revisões, transformando-o de um sistema operacional rudimentar em algo mais adequado para um ambiente de computação moderno. É importante ressaltar que a base de código do Linux é de código aberto, ajudando-o a receber contribuições de desenvolvedores em todo o mundo, além de lançar incontáveis forks de sistemas operacionais para finalidades que vão desde PCs desktop a supercomputadores e, eventualmente, smartphones.
A jornada de desenvolvimento para o sistema operacional que conhecemos hoje foi gradual – a interface gráfica do XFree86 chegou em 1994, enquanto o suporte para vários processadores chegou com o Linux 2.0 em 1996. O KDE introduziu sua primeira interface gráfica de usuário de desktop avançada para o sistema operacional em 1998, enquanto Os dispositivos USB foram finalmente compatíveis com o Linux 2.4 em 2001. Todos esses desenvolvimentos são claramente essenciais para desktops, servidores e dispositivos móveis. As primeiras versões do Android eram baseadas no Linux 2.6, que foi lançado em 2003. No momento em que este artigo foi escrito, seu smartphone Android quase certamente está executando um kernel Linux baseado na versão 4 ou superior.
As primeiras versões do Android eram baseadas no Linux 2.6.
A Android Inc. foi fundada em 2003, mas a decisão de usar o Linux como base para um sistema operacional de smartphone só veio após a aquisição da empresa pelo Google em 2005. Isso foi seguido pela criação da Open Handset Alliance. Liderado pelo Google, este grupo de 34 membros decidiu por um padrão aberto para dispositivos móveis que culminou com o lançamento do Android 1.0 em 5 de novembro de 2007. Controversamente, os membros estão proibidos de usar forks de Android que não sejam do Google, o que não sinto que está de acordo com o espírito das origens do código-fonte aberto do Linux.
Veja também: A história do Android – A evolução do maior sistema operacional móvel do mundo
Claro, o Android não tem nenhuma semelhança óbvia com outras distribuições populares do Linux, como Debian ou Ubuntu. O Android tem sua própria IU orientada para dispositivos móveis, tipo de arquivo de aplicativo APK, máquina virtual Java para executar aplicativos, gerenciador de energia personalizado e inúmeras outras ferramentas integradas ao sistema operacional que não são compatíveis com outras distribuições. Esse é todo o trabalho extra que o Google fez nas últimas duas décadas para otimizar o Android para dispositivos móveis e outros. Mesmo assim, o Android ainda compartilha um componente central e uma história com outras distribuições: o kernel Linux.
Afinal, por que basear o Android no Linux?
Robert Triggs / Autoridade Android
O que há com essa palavra “kernel”? Bem, é um bloco de construção importante que faz parte de um sistema operacional, mas não abrange tudo. A interface do usuário ou software empacotado que pode formar o SO maior não faz parte do kernel. Em vez disso, o kernel do Linux gerencia recursos de hardware, como CPU, memória ou Bluetooth. Você pode ler mais sobre isso no artigo abaixo.
Consulte Mais informação: O Android é Linux? Ou é mais do que apenas uma distro no fundo?
Essa diferença com o “PC Linux” se refletiu no fato de que o código do Android foi removido do kernel em 2010 (Linux 2.6.33), deixando os dois um pouco divergentes. Em vez disso, o Google bifurcou o kernel do Linux de código aberto, imbuindo-o com os recursos necessários para oferecer suporte a APIs específicas do Android, que vão desde a interface do usuário até gerenciamento de energia, rede e segurança. Os dois se reuniram em 2012 e os telefones Android modernos usam o branch Long Term Stable (LTS) do kernel principal. Em 2017, o Google ajudou a comunidade Linux a estender o suporte LTS de dois para seis anos para garantir um ciclo de atualização mais longo.
Mas se o Android é tão significativamente diferente de outras variantes do Linux hoje em dia, por que se preocupar em basear o sistema operacional nele em primeiro lugar? Bem, existem algumas razões muito boas.
O Android ainda está na família Linux – é apenas um primo distante.
Construir um kernel do zero consome muito tempo. O Linux era, e continua sendo, código-fonte aberto e fornece muitos dos recursos básicos necessários para construir dispositivos que variam de supercomputadores a dispositivos móveis. O Linux 2.6, no qual o Android inicial era baseado, incluía uma camada de driver para permitir que os fornecedores de produtos abstraíssem e otimizassem hardware exclusivo, uma pilha de rede robusta e kit de ferramentas e gerenciamento de processos para alocar recursos de aplicativos, entre outros recursos. Por que gastar dinheiro e tempo reinventando a roda?
É importante ressaltar que muitos dos primeiros benefícios do Linux continuam a ser relevantes para smartphones Android hoje. Por exemplo, a Hardware Abstraction Layer (HAL) permite que os fabricantes inovem no lado do hardware e ajudou o Google a acelerar a taxa de atualizações do sistema operacional. Enquanto isso, o modelo de segurança baseado em permissões do Linux está no centro do amplo sistema de permissões de aplicativos do Android. O kernel do Linux provou ser incrivelmente flexível e poderoso mesmo 30 anos depois.
É difícil acreditar que bilhões de dispositivos Android em uso hoje possam traçar suas origens até a humilde postagem do newsgroup UseNet de Linus Torvalds de 30 anos atrás. Seu smartphone pode ser irreconhecível daquele sistema operacional anterior, mas o Android continua sendo o Linux em seu núcleo. Ele acabou de formar seu próprio ramo distinto na árvore evolutiva do Linux em constante crescimento.