:. O avanço do Wine

 Por Carlos E. Morimoto
 http://www.guiadohardware.net
 30/10/2001


A notícia do Lindows, que publiquei há alguns dias, me levou a pesquisar um pouco mais sobre o nível de desenvolvimento do Wine e o que podemos esperar para os próximos meses.

Além do Lindows, existem outros projetos comerciais baseados no Wine, como o CodeWeavers e o Transgaming, que adicionam mais recursos ao Wine a fim de aumentar seu grau de compatibilidade e facilitar seu uso.

O Wine vem sendo desenvolvido desde 93. Inicialmente, o objetivo era rodar aplicativos para Windows 3.1 dentro do Linux, mas depois do lançamento do Windows 95 os desenvolvedores toparam uma tarefa muito mais complexa, que é construir uma implementação da API de 32 bits da Microsoft para o Linux.

é por isso que os desenvolvedores insistem tanto que o Wine não é um emulador. Uma API é um conjunto de funções utilizadas pelos programas para interagir com o sistema, criar janelas, salvar arquivos etc. O Wine cria este ambiente, permitindo que os aplicativos rodem diretamente, sem necessidade de emulação. Isto traz um grande ganho de desempenho em relação ao que seria obtido com um emulador. O Wine consegue manter entre 50 e 80% do desempenho que seria obtido rodando o aplicativo sobre o Windows. Segundo os desenvolvedores, na versão final muitos aplicativos rodarão com uma performance muito próxima da obtida no Windows.

Segundo Alexandre Julliard, que é atualmente o líder do projeto, os desenvolvedores estão bem próximos de conseguir lançar a versão 1.0. O maior desafio, segundo ele, é implantar o suporte ao Inter-Process Window Communication, que permite que os aplicativos troquem dados.

Atualmente o Wine roda praticamente todos os aplicativos de 16 bits e uma boa parte dos aplicativos de 32 bits, incluindo até alguns jogos, como o Half Life e o Starcraft. Até mesmo o Internet Explorer 5 já roda, embora ainda instável.

A idéia do Wine é permitir que os aplicativos for Windows rodem de forma tão natural quanto os aplicativos nativos do Linux, com a possibilidade de até mesmo usar a área de transferência entre programas das duas plataformas. Este é o principal motivo dos desenvolvedores terem optado por fazer o Wine rodar sobre o X, e não diretamente sobre o Kernel, bipassando-o. Segundo os desenvolvedores, a perda de performance por executar o Wine sobre o X é muito pequena e existe um grande ganho em termos de estabilidade.

Apesar de ainda não existirem datas definidas, a versão final do Wine deve sair em alguma parte do ano que vem. Até lá a grande maioria dos programas deverá rodar sem problemas. A idéia é que o Wine atual suporte apenas uma parte da API do Windows. Qualquer aplicativo que utilize qualquer uma das chamadas que ainda faltam, simplesmente não rodará ou ficará instável. Até a versão final os desenvolvedores pretendem conseguir implantar todas as chamadas, com excessão das exóticas a ponto de não serem utilizadas por nenhum programa conhecido. Em tempo, a página oficial do Wine é http://www.winehq.com/

Uma vez implementada toda a API do Windows, os desenvolvedores (além das companhias interessadas em criar algum produto utilizando o Wine) poderão se dedicar a tornar o programa mais amigável para o usuário final, outro ponto fraco da versão atual.

O CodeWeavers é um projeto comercial baseado no Wine que já é relativamente fácil de usar, graças à vários utilitários que facilitam a instalação, configuração e o acesso aos programas depois de instalado. Apesar de ser uma iniciativa comercial, a equipe vem trabalhando de forma conjunta com a equipe do Wine.

No screenshot abaixo você pode ver o Internet Explorer, Powerpoint, Paciência e o Notepad rodando num ambiente Gnome graças ao CodeWeavers.



IE 5.1 e Power Point for Gnome
http://codeweavers.com/technology/wine/


Outra iniciativa é a da Transgaming, que vem fazendo um bom trabalho portando as rotinas do DirectX. A idéia é, claro, rodar jogos dentro do Wine, o que poderia resolver a falta de jogos para Linux.

O projeto Transgaming vem conseguindo bons resultados. Recentemente lançaram uma versão do The Sims para Linux em parceria com a Mandrake, que roda dentro do Linux graças ao sistema.

No site da empresa já existe uma lista dos jogos suportados, entre eles o Dune 2000, Diablo 2, Max Payne, Tomb Raider 2, entre outros. Você pode ver a lista completa em: http://www.transgaming.com/dosearch.php?order=working&showall=1


The Sims no KDE? :-)
http://www.transgaming.com


Nem todos os jogos citados na lista da Transgaming estão totalmente estáveis, mas conquistas como o The Sims já são o suficiente para validar o projeto.

A menos que a Microsoft consiga derrubar os projetos através de algum tipo de ação judicial (o que é complicado, pois eles também estão com problemas sérios nesta área...) parece questão de tempo até que estes projetos consigam uma implementação completa da API do Windows. Esta seria uma conquista irreversível pois os comandos não mudam de uma versão do Windows para a outra. Assim como os mesmos aplicativos rodam tanto no Windows 95 quanto no XP, todos passariam a rodar também no Linux.

Faltaria então resolver o problema de tornar tudo mais amigável: refinar os utilitários ao ponto de serem realmente simples utilizá-los para rodar os programas, assim como é fácil rodar os mesmos programas dentro do Windows.

é isto que falta a muitos aplicativos Linux, onde os desenvolvedores conseguem fazer trabalhos formidáveis em termos de estabilidade e recursos, mas se esquecem de aparar as arestas na interface com o usuário.

Finalmente, não podemos nos esquecer do Lindows, outra iniciativa que promete para o futuro. Abaixo vai a reprodução do artigo que escrevi sobre ele há alguns dias:


:. Detalhes sobre o Lindows

Um novo sistema operacional, chamado Lindows (sem trocadilhos por favor :-), anunciado pelo criador do MP3.com (Michael Robertson's) foi um dos assuntos do dia.

Na verdade, não se trata de um novo sistema operacional, mas sim de uma distribuição do Linux que rodará uma versão aperfeiçoada do Wine, que promete ser capaz de rodar todos os aplicativos for Windows com estabilidade e um bom desempenho. Segundo o dito por Michael, numa entrevista ao Mobilecomputing.com, a idéia do sistema é dar uma escolha aos usuários que atualmente usam o Windows.

A distribuição custará 99 dólares, o mesmo preço da versão Personal do Windows XP, mas como em outras distribuições, será permitido instalar o sistema em vários PCs. Foi prometido um preview ainda este ano e o lançamento da versão 1.0 para o início do ano que vem.

Este foi um anúncio que pegou todo mundo de surpresa, pois não haviam sequer rumores de uma iniciativa assim. Pelo que parece, realmente não existia nada até pouco tempo, pois os trabalhos estão apenas começando.

Pessoalmente eu achei este anúncio um tanto precipitado. O Wine já é capaz de rodar vários aplicativos, até mesmo alguns jogos, mas está muito longe de ser um software estável e ainda não suporta um número muito grande de funções utilizadas pelos programas de 32 bits, o que faz com que muitos dos aplicativos que rodam, apresentem vários tipos de instabilidade. Além disso, os aplicativos executados através do Wine não tem o mesmo desempenho que teriam dentro do Windows, o que é natural, já que em última análise eles rodam via emulação.

O Wine promete para o futuro, mas ainda precisa de muito trabalho. é improvável que a pequena equipe que vem trabalhando no Lindows consiga transforma-lo num software eficiente e fácil de usar a ponto de ser distribuído num sistema destinados às massas em um tempo tão curto. é só ver quanto tempo distribuições como a Red Hat, Mandrake ou mesmo a Conectiva demoraram para chegar à maturidade.

Lançar uma distribuição do Linux com falhas, prometendo um substituto para o Windows e capaz de rodar todos os softwares para ambas as plataformas, seria ruim não apenas para os criadores, mas para a própria comunidade Open Source.

Por outro lado, caso o projeto realmente seja bem sucedido, o sistema virá em boa hora, em meio à confusão armada pelo sistema de ativação do Windows XP, dos aumentos nos custos das licenças para os softwares Microsoft e as crescentes campanhas anti-pirataria realizadas por instituições como a ABES.

Um dos grandes pilares para a sustentação dos mais de 90% de penetração do Windows são os aplicativos para o sistema. Migrar para o Linux é tão complicado por que além da curva de aprendizado necessária para utilizar o sistema, é preciso substituir vários dos aplicativos utilizados. é por isso que a maioria dos usuários acaba desistindo pelo caminho.

Uma distribuição Linux capaz de rodar todos os aplicativos Windows, além da grande quantidade de softwares livres que existem atualmente, seria uma opção realmente atrativa, principalmente para empresas que gastam muito em softwares e simpatizantes do Linux.