Ubuntu portado para processadores ARM

Ubuntu ported to ARM

Autor original: LinuxDevices

Publicado originalmente no: https://www.linuxdevices.com/

Tradução: Roberto Bechtlufft

Um projeto patrocinado pela Nokia está portando o Ubuntu Linux para os processadores ARM. A equipe Handheld Mojo já compilou duas versões do Ubuntu: o Feisty Fawn virou Frisky Firedrake, e o Gutsy Gibbon virou Grumpy Griffin. A compilação do Hardy Heron está a caminho.

O port do Ubuntu para o ARM pode ser testado no QEMU, um emulador de código aberto que suporta várias arquiteturas ARM. Outra alternativa é usar o chroot em um cartão SD para rodar o port num dos internet tablets com Linux da série N8xx, da Nokia. Como os ports foram compilados para as arquiteturas ARMv5EL e ARMv6EL-VFP, eles devem rodar em muitos outros dispositivos com núcleos ARM9 e ARM11.

Com poucas exceções, a maioria dos programas do Ubuntu pode ser compilada sem problemas para o ARM, de acordo com Andrew Christian, o engenheiro da Nokia que lidera a empreitada. Dentre as exceções dignas de nota estão Java, Mono, G77 (um compilador Fortran) e os programas que dependem deles.

Esta semana, na Embedded Linux Conference, em Mountain View, Christian usou um tablet N800 para rodar o GIMP, programa de código aberto para o processamento de imagens que, segundo ele, funciona bem no aparelho.

Christian disse aos presentes que a compilação cruzada é bem mais rápida que a compilação nativa. Porém, boa parte dos pacotes do Debian (e, por tabela, os do Ubuntu) não estão configurados corretamente para ambientes de compilação cruzada. Por isso a equipe optou pela compilação nativa, que exige menos intervenção humana.

Para configurar um ambiente de compilação nativo, a equipe Mojo montou seus próprios computadores de placa única com processadores Intel baseados no ARM. Segundo Christian, gavetas de 1U são usadas para empilhar os computadores em um rack, compilando os 25.000 binários que compõem uma distribuição Ubuntu completa (alguns pacotes geram mais de um objeto) em 10 dias. Sobre os coolers instalados para a tarefa, ele comenta: “acho que exageramos um pouco.”

Para bootar um ambiente de desenvolvimento nativo no ARM, Christian usou o port ARM EABI, contribuído ao Debian em 2007 pela fabricante de computadores de placa única ADS. Segundo ele, isso poupou bastante tempo.

Christian também opinou sobre a maneira como o Debian realiza o empacotamento do código fonte das muitas variantes do ARM. Para ele, ao invés de tratar cada variante como uma arquitetura separada, o Debian deveria usar a estrutura de diretórios dos pacotes deb para organizar subarquiteturas, e preencher o campo de arquitetura nos metadados do pacote com a arquitetura alvo – “ARM-all”, por exemplo.

Em entrevista ao LinuxDevices, Christian declarou que sua equipe pretende desenvolver sistemas mais poderosos para compilação nativa no ARM. Ele foi encorajado a experimentar servidores NAS baseados no ARM que com algumas modificações poderiam aceitar até 2GB de RAM, de acordo com declarações de hobbistas da internet. Segundo ele, as placas utilizadas hoje pela Mojo não passam dos 256MB, e a falta de memória atrapalha a compilação de pacotes maiores como o KDE.

Como alternativa às máquina baseados no ARM, a equipe Mojo também está testando servidores x86 com emulação QEMU-ARM. Rodando em PCs x86 mais recentes, o QEMU é mais rápido que hardware ARM de verdade.

Além de Christian, outros desenvolvedores importantes no projeto são Brian Avery, veterano do port para Linux do iPaq da HP e George France, antigo mantenedor do kernel para a arquitetura Alpha.

Análise

Há tempos a Nokia é pioneira no uso de programas para desktop em dispositivos embarcados. Seus internet tablets baseados no Linux, por exemplo, rodam X11 e GTK+ completinhos, ao invés de versões “embarcadas” mais leves de frameworks de desenvolvimento, como o Qt/Embedded. E ao invés de um navegador embarcado como o Opera, os novos TabletOSes da Nokia trazem o “MicroB”, um navegador derivado do Firefox. O diretor de código aberto da Nokia, Dr. Ari Jaaksi, afirma que os programas para desktops são mais testados, além de serem mais familiares ao usuário e terem maior compatibilidade.

Com a Intel lançando o Atom Centrino no mercado de dispositivos, os ports da Mojo podem ajudar a diminuir a “vantagem no software” da arquitetura x86. Ainda que o ARM sempre ganhe em consumo de energia e tamanho devido às funções legadas do x86 (como a decodificação do conjunto de instruções), a ampla oferta de programas bem testados beneficia o x86. E como destaca o pioneiro do x86, Glenn Henry em uma entrevista recente, “software gera software.”

A superioridade de programas permitiu que o x86 dominasse os mercados de desktops e servidores, em detrimento das mais “elegantes” arquiteturas RISC no passado. A longo prazo, por que seria diferente com os dispositivos móveis? Por outro lado, o ARM está consolidado em dispositivos, e vem dando uma surra na Intel em projetos para dispositivos embarcados nos últimos anos, de acordo com a pesquisa feita com os visitantes do LinuxDevices.com.

Espera-se que esteja nos planos da Mojo um port para o ARMv7, já que a Texas Instrument prometeu kits de desenvolvimento baratos para seus processadores OMAP35xx. Baseados em núcleos dual-issue Cortex-A8, esses processadores chegam a 600MHz, e podem oferecer a performance de um hipotético ARM11 de 1.2GHz, com o consumo de energia de um ARM11 de 600MHz.

Enquanto isso, o Ubuntu aprimora seu suporte a dispositivos com telas pequenas e dispositivos de entrada limitados, graças ao trabalho da equipe do Ubuntu Mobile and Embedded (e de seu antecessor, o EmbeddedUbuntu), bem como do projeto Moblin da Intel.

Disponibilidade

Mais detalhes sobre o projeto Mojo, incluindo downloads do Ubuntu para o ARM, estão disponíveis aqui.

Créditos a LinuxDeviceshttps://www.linuxdevices.com/

Tradução por Roberto Bechtlufft <robertobech at gmail.com>

Postado por
Siga em:
Compartilhe
Deixe seu comentário
Assine nossa Newsletter
Assine nossa newsletter e receba nossa seleção de conteúdo sobre tecnologia, games, IA e internet em seu email.
Veja também
Publicações Relacionadas
Img de rastreio
Localize algo no site!