Gerenciamento De Mem Ria E P Gina O Android
O Android é um sistema operacional baseado no kernel do Linux, Apesar de ser baseado no kernel do Linux, existe pouca coisa em comum com distribuições Linux convencionais (embarcadas ou não), lembrando que um sistema embarcado (ou sistema embutido) é um sistema microprocessado no qual o computador é completamente encapsulado ou dedicado ao dispositivo ou sistema que ele controla. À grosso modo, o Android é uma máquina virtual Java rodando sobre o kernel do Linux, dando suporte para o desenvolvimento de aplicações Java através de um conjunto de bibliotecas e serviços.
1. Estrutura do Sistema Android
i
1.1 Bibliotecas e Serviços : São elas responsáveis por manipular áudio, vídeo, gráfico, banco de dados e browser.
1.2 Android RunTime : Permite que cada Thread rode sua instância da Máquina virtual. Por mais que a linguagem de desenvolvimento seja Java, as aplicações não são executadas em maquina virtual java , e sim em Dalvik. Dalvik é uma VM otimizada para dispositivos móveis. Essa máquina virtual foi construída pelos engenheiros da Google, para obter um consumo mínimo de memória e isolamento de processos. Ela permite que as aplicações escritas em linguagem Java sejam executadas normalmente;
1.3 Kernel Linux : A camada do kernel é baseada em um sistema de um Sistema Operacional Linux 2.6. Esta camada atua também como responsável pela abstração entre o hardware e os aplicativos e é responsável pelos serviços principais do sistema operacional Android, como o gerenciamento de memória e de processos. O Linux 2.6 foi escolhido por já conter uma grande quantidade de drivers de dispositivos sólidos e por ter um bom gerenciamento de memória e processos.
2.Kernel
Como vimos, o android roda um kernel modificado do Linux, dentre essas modificações podemos citar :
Binder: Em todo sistema operacional com suporte à memória virtual os processos rodam em diferentes regiões de memória. Isso significa que nenhum processo tem acesso direto à região de memória de outro