Meio Bit » Baú » Indústria » À Procura do S.O. Perfeito

À Procura do S.O. Perfeito

24/08/2006 às 7:00

Depois de merecidas férias, voltei "ao mundo normal" e, como primeira tarefa, está a definição de qual Sistema Operacional utilizar num determinado projeto.

Mas não é um projeto de rede de computadores, nem uma instalação de um PC padrão. Vocês já imaginaram qual S.O. controla os radares do SIVAM? O sistema de propulsão do porta-aviões brasileiro? Ou ainda, a set-top box da sua T.V. via satélite? Pois é um projeto desse tipo: um dispositivo embarcado ( uma tradução que não transmite bem a idéia de "embedded" ).

Nesta pequena série, mostrarei a vocês, despretensiosamente, como o universo da computação vai muito além da INTEL e da AMD, do Windows e do MacOS. De quebra, vamos conhecer alguns Sistemas Operacionais "alternativos".Sistemas Embarcados

Um "sistema embarcado" ( do inglês "embedded system" ), é aquele completamente contido no dispositivo controlado.

Dentro do seu carro existe uma central de controle que comanda a injeção eletrônica, o condicionador de ar, as travas elétricas e aquelas dezenas de leds, buzzers e balangandãs. Nela, há um microprocessador que, muito provavelmente, não é um Athlon nem um Pentium. Pode ser MIPS, ARM, PowerPC, SH-3, ColdFire, DragonBall, Z80, PIC, PSoC e por aí vai.

São processadores que variam muito, podem ter de 1kB ( isso mesmo, 1024 bytes ! ) de memória a 512MB, rodar de 10MHz a 1GHz... é uma fauna muito interessante, com características díspares e que se renova muito rapidamente. Dezenas de modelos são lançados anualmente e, muitas vezes, nem mesmo a pinagem é compatível. É muito difícil, para não dizer impossível, encontrar alguém que conheça a fundo todos eles.

Depois de alguma pesquisa onde levei em consideração especialmente o preço ( pré-requisito do projeto ), escolhi a plataforma ARM. Um processador rápido, já bastante testado pelo mercado e com periféricos embutidos ( como host USB e controlador Ethernet ), pareceu o ideal.

Para eliminar a complexidade de se aprender tudo novamente cada vez que um projeto precisa ser feito ( ou refeito ), há uma tendência a utilizar um Sistema Operacional, em vez de escrever tudo a partir do zero. E, como não poderia deixar de ser, também são vários S.O.s disponíveis...

O Inferno

Um S.O. que parece bem interessante é o Inferno. Desenvolvido pela Vita Nuova a partir de um trabalho original da Bell Labs, roda com apenas 1MB de RAM. O sistema de arquivos é bem estruturado e os dispositivos remotos aparecem como locais, de forma transparente... bem bolado.

O código-fonte é disponível e as aplicações são em código gerenciado e compilado em tempo de execução, mais ou menos como Java. A linguagem de programação é chamada, vejam vocês, Limbo! Isso não animou muito o pessoal aqui...

As aplicações podem rodar em qualquer plataforma, sem recompilação. Não é uma exigência do projeto, mas conta pontos a favor. O ambiente gráfico é bem simples, dá conta do recado.

Uma grande vantagem é que o Inferno pode rodar sobre o Windows ( não, não é piada ) ou como sistema principal. Facilita bastante na hora de desenvolver.

No entanto, a comunidade de desenvolvedores parece ser muito pequena e isso conta muito na decisão. Dessa forma, mesmo parecendo um S.O. promissor, deixei de lado, por enquanto.

No próximo artigo, farei uma breve análise de outro S.O. Enquanto isso, vejam alguns "screenshots" do Inferno rodando como uma aplicação Windows:

relacionados


Comentários