2Sep

O Android é baseado no Linux, mas o que significa isso?

O

Android pode estar baseado no Linux, mas não é baseado no tipo de sistema Linux que você pode ter usado no seu PC.Você não pode executar aplicativos Android em distribuições Linux típicas e você não pode executar os programas Linux que você conhece no Android.

Linux compõe a parte central do Android, mas o Google não adicionou todos os softwares e bibliotecas típicos que você encontraria em uma distribuição Linux como o Ubuntu. Isso faz toda a diferença.

"Linux" vs. O Kernel Linux

A grande diferença aqui se resume ao que queremos dizer com o Linux. As pessoas usam o termo "Linux" para significar muitas coisas diferentes. No seu mais básico, o Linux significa o kernel do Linux. Um kernel é a parte central de qualquer sistema operacional.

Também nos referimos a distribuições Linux como simplesmente "Linux". No entanto, as distribuições Linux não são apenas o kernel do Linux. Eles contêm muitas outras peças de software, como as utilidades de shell GNU, o servidor gráfico Xorg, a área de trabalho GNOME, o navegador Firefox e assim por diante.É por isso que algumas pessoas pensam que o termo GNU / Linux deve ser usado para "distribuições Linux", como Ubuntu, Mint, Debian, Fedora, Arch, openSUSE e outros.

O Android usa o kernel do Linux sob o capô.Como o Linux é de código aberto, os desenvolvedores de Android do Google podem modificar o kernel do Linux para atender às suas necessidades. O Linux dá aos desenvolvedores do Android um núcleo do sistema operacional pré-construído, já mantido, para começar, para que eles não precisem escrever seu próprio kernel. Esta é a forma como muitos dispositivos diferentes são construídos - por exemplo, o PlayStation 4 usa o kernel FreeBSD de código aberto, enquanto o Xbox One usa o kernel do Windows NT encontrado em versões modernas do Windows.

Você ainda verá a versão do kernel do Linux rodando em seu dispositivo em Sobre o telefone ou Sobre o Tablet na Configuração do Android.

As diferenças

Há algum debate sobre se o Android se qualifica como uma "distribuição Linux". Ele usa o kernel do Linux e outros softwares, mas não inclui muitas das distribuições de Linux do software normalmente incluem.

Quando você inicia um dispositivo Android, o kernel do Linux carrega exatamente como seria em uma distribuição Linux. No entanto, grande parte do outro software é diferente. O Android não inclui a biblioteca GNU C( glibc) usada nas distribuições padrão do Linux, nem inclui todas as bibliotecas GNU que você encontraria em uma distribuição Linux típica. Ele também não inclui um servidor X como o Xorg, então você não pode executar aplicativos gráficos padrão do Linux.

Em vez de executar aplicativos Linux típicos, o Android usa a máquina virtual Dalvik para executar essencialmente aplicativos escritos em Java. Esses aplicativos são direcionados para dispositivos Android e as interfaces de programação de aplicativos( APIs) Android oferecem, em vez de serem direcionadas ao Linux em geral.

Por que você não pode executar o software do Desktop Linux no Android

Como o Android não inclui um servidor gráfico X ou todas as bibliotecas GNU padrão, você não pode simplesmente executar aplicativos Linux no Android. Você deve executar aplicativos escritos especificamente para o Android.

Android tem um shell como o que você encontrará no Linux. Não há como acessá-lo fora de linha, mas você pode instalar um aplicativo como o Android Terminal Emulator para obter acesso a este ambiente de terminal.

Por padrão, não há muito o que você pode fazer aqui. O terminal ainda será executado em um ambiente restrito, portanto, você não pode ganhar um shell de raiz completo sem rootear seu dispositivo Android. Muitos comandos padrão que você pode precisar não estão disponíveis - é por isso que as pessoas que criam o dispositivo geralmente instalam o aplicativo BusyBox, que instala muitos utilitários de linha de comando. Esses utilitários são usados ​​por aplicativos para fazer coisas com seu acesso root.

Por que você não pode executar o software Android no desktop Linux

O Linux não inclui a máquina virtual Dalvik, portanto, não pode executar aplicativos Android. A máquina virtual Dalvik e todos os outros softwares do Android não podem simplesmente ser descartados em uma máquina desktop Linux - você precisaria fazer mais trabalho para fazer com que aplicativos Android sejam exibidos para uma janela em uma área de trabalho padrão através do Xorg, por exemplo. Teoricamente, com o trabalho suficiente, os desenvolvedores podem fazer o Dalvik rodar no desktop Linux, de modo que os usuários de desktop Linux poderiam executar aplicativos Android em seus desktops. O agora-latente Ubuntu para o produto Android tentou fazer algo assim, integrando o Ubuntu e Android em um telefone e permitindo que esses aplicativos Android funcionassem no desktop do Ubuntu.

BlueStacks e outros emuladores de aplicativos para Android tentam fazer isso para Windows e Mac. Eles executam o Android em hardware virtual em uma máquina virtual, permitindo que eles executem aplicativos Android - com uma penalidade de desempenho - em sua área de trabalho. No entanto, essas soluções não se mostraram muito populares.

O Chrome OS do Google também é baseado em Linux. Como o Android, o sistema operacional Chrome não fornece um sistema de janela X padrão, portanto aplicativos padrão do Linux não podem ser executados no sistema operacional Chrome. Ao contrário do Android, o Chrome OS está mais próximo das distribuições Linux padrão de desktop para que você possa usar o modo de desenvolvedor para instalar o software de desktop Linux faltante. Crédito de imagem

: ranti no Flickr, Anatomia e Fisiologia do Android