A arquitetura do Android

Autor: 
Jonathan Strickland

O Google geralmente se refere ao sistema operacional Android como uma pilha de softwares. Cada camada da pilha agrupa vários programas que suportam funções específicas do sistema operacional.

A base da pilha é o kernel. O Google usou a versão 2.6 do Linux para construir o kernel do Android, o que inclui os programas de gerenciamento de memória, as configurações de segurança, o software de gerenciamento de energia e vários drivers de hardware. Drivers são programas que controlam dispositivos de hardware. Por exemplo, o HTC G1 tem uma câmera. O kernel do Android inclui um driver de câmera, que permite ao usuário enviar comando ao hardware da câmera.

O próximo nível de software inclui as bibliotecas do Android. Você pode pensar em bibliotecas como um conjunto de instruções que dizem ao dispositivo como lidar com diferentes tipos de dados. Por exemplo, a biblioteca do framework de mídia suporta a reprodução e a gravação de vários formatos de áudio, vídeo e imagem. Outras bibliotecas incluem aceleração tridimensional (para dispositivos com acelerômetros) e um biblioteca de navegadores Web.

No mesmo nível da camada de bibliotecas, a camada de tempo de execução do Android inclui um conjunto de bibliotecas do núcleo Java - programadores de aplicações Android construíram suas aplicações em linguagem de programação Java. Ele também inclui a Máquina Virtual Dalvik (DVM).

Uma máquina virtual é uma aplicação de software que se comporta como se fosse um dispositivo independente com seu próprio sistema operacional. Você podem rodar uma máquina virtual em um computador que opera com um sistema operacional completamente diferente do sistema operacional da máquina física. Por exemplo: um computador Apple rodando Mac OS X pode ter uma máquina virtual rodando Windows Vista ou Ubuntu. O sistema operacional Android usa máquinas virtuais para rodar cada aplicação como seu próprio processo. Isso é importante por algumas razões. Primeiro, nenhuma aplicação é dependente de outra. Segundo, se uma aplicação para, ela não afeta quaisquer outras aplicações rodando no dispositivo. Terceiro, isso simplifica o gerenciamento de memória.

A próxima camada é o framework de aplicação. Isso inclui os programas que gerenciam as funções básicas do telefone, como alocação de recursos, aplicações de telefone, mudança entre processos ou programas e ficar de olho na localização física do aparelho. Os desenvolvedores de aplicações têm acesso total ao framework de aplicações do Android. Isso possibilita que eles tirem vantagem das capacidades de processamento do Android e suportem recursos quando estão construindo uma aplicação Android. Pense no framework de aplicações como um conjunto de ferramentas básicas com o qual um desenvolvedor pode construir ferramentas muito mais complexas.

No topo da pilha estão as aplicações em si. É onde você encontra funções básicas do dispositivo, como fazer chamadas telefônicas, acessar o navegador Web ou acessar sua lista de contatos. Se você é um usuário comum, esta é a camada que você mais usará. Você faz isso com a interface de usuário. Apenas os programadores do Google, os desenvolvedores de aplicação e os fabricantes de hardware acessam outras camadas mais baixas da pilha.

Você pode alterar a forma como seu telefone Google funciona fazendo o download de aplicativos para ele. Saiba como na próxima página.