Haiku (sistema operacional)

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Gnome globe current event.svg
Este artigo ou seção contém informação sobre software em fase de desenvolvimento.
O conteúdo pode mudar à medida que o desenvolvimento do software progride.
Nuvola apps kpager.svg


Haiku
Haiku OS.png
Área de trabalho do sistema, com o Firefox
Produção Haiku Inc.
Família do SO BeOS
Modelo Código aberto
Estado corrente, alpha
Versão em teste R1/Alpha 4.1 / 14 de novembro de 2012; há 93 semanas e 2 dias
Arquitetura(s) x86
Núcleo núcleo híbrido
Interface BeOS
Licença MIT
Página oficial http://haiku-os.org/

Haiku, conhecido anteriormente como OpenBeOS,[1] é um é um sistema operacional de código aberto para plataforma x86 que tenta manter compatibilidade reversa com o BeOS.

História[editar | editar código-fonte]

O projeto começou como "OpenBeOS" em 2001[2] após a compra da Be Incorporated pela Palm e o subseqüente fim do desenvolvimento do BeOS. A compra deixou os usuários do BeOS sem perspectivas de melhorias e atualizações, e os criadores de programas para BeOS sem uma plataforma viável.

Um entre diversos projetos apresentados com o objetivo de continuar o sistema operacional, o OpenBeOS se distinguia do Cosmoe e do BlueEyedOS por não usar um núcleo Linux ou BSD existente e sobre ele reimplementar a API do BeOS (o que o tornaria incompatível com os programas existentes para BeOS e alteraria radicalmente a estrutura do sistema). O projeto planejou uma quase completa reconstrução do sistema, mantendo compatibilidade de programas e códigos fonte, permitindo assim que os programas existentes para BeOS possam ser executados no novo sistema sem a necessidade de uma recompilação.

Origem do nome[editar | editar código-fonte]

Em 2004 um novo nome foi escolhido para o projeto a fim de evitar o uso indevido de uma marca registrada agora em posse da Palm. O novo nome, decidido entre os líderes do projeto e influenciado por uma enquete realizada entre a comunidade, foi revelado na conferência WalterCon daquele ano. O nome "Haiku" pretende refletir a elegância e simplicidade que atraíram vários usuários para o BeOS, além de ser uma referência direta às mensagens de erro exibidas na forma poética japonesa haiku pelo navegador NetPositive e outros programas da Be.

Desenvolvimento[editar | editar código-fonte]

Área de trabalho da versão de desenvolvimento b17160 do Haiku (abril de 2006)

O projeto é controlado pela Haiku Incorporated, uma organização sem fins lucrativos baseada em Nova Iorque.

Devido a sua própria natureza, o projeto não tem um ritmo de desenvolvimento fixo. Iniciado em 2001, já contava em 2004 com vários módulos em estágio alpha.

A construção modular do BeOS permite que equipes de programadores voluntários trabalhem independentemente nos substitutos dos servidores e APIs (conhecidos no Haiku como "kits"). As equipes incluem:

  • App/Interface - no qual se encaixam os kits da interface, aplicativos e suporte;
  • BFS - que visa a recriar o sistema de arquivos Be (Be File System), tarefa quase completa, com o sistema OpenBFS utilizado não apenas pelo Haiku como também pelo SkyOS;
  • Game - que desenvolve o kit para jogos e suas APIs;
  • Input Server - o servidor que gerencia os dispositivos de entrada como teclados, mouses/ratos e como se comunicam com outras partes do sistema;
  • Kernel - o núcleo do sistema operacional/operativo;
  • Media - desenvolvendo o servidor de áudio e APIs relacionadas;
  • MIDI - implementando o protocolo MIDI;
  • Network - responsável por escrever drivers para dispositivos de rede e APIs para os diferentes protocolos;
  • OpenGL - desenvolve o suporte a OpenGL;
  • Preferences - recriando a tela de opções do BeOS;
  • Printing - responsável pelos servidores de impressão e drivers para impressoras;
  • Screen Saver - implementando as funcionalidades dos protetores de tela;
  • Storage - desenvolvendo o servidor de armazenamento e drivers para sistemas de arquivos;
  • Translation - recriando os módulos de leitura e conversão de formatos de arquivo.

Alguns kits foram considerados completos e os demais estão em diferentes estágios de desenvolvimento.

O núcleo do Haiku é um fork do NewOS,[3] um núcleo modular escrito pelo ex-engenheiro da Be, Travis Geiselbrecht, e continua em desenvolvimento. Muitos recursos foram implementados, incluindo uma camada (layer) VFS e suporte rudimentar a multiprocessamento simétrico.

Marcos[editar | editar código-fonte]

Open Sound System para Haiku
  • Março e abril de 2005 - Execução gráfica dos primeiros aplicativos BeOS em Haiku, incluindo o navegador Links, sem utilização de códigos pertencentes à Be Incorporated.
  • Julho de 2005 - Tracker, o gerenciador de arquivos do BeOS, roda com sucesso.
  • Outubro de 2005 - Durante três meses, Axel Dörfler se tornou o primeiro desenvolvedor pago do sistema, possibilitado por donativos. Trabalhou no boot via CD, multiprocessamento e outras funções como o núcleo e o app_server.
  • Março de 2006 - Execução do jogo Quake III Arena em modo software.
  • Maio de 2006 - Execução bem sucedida do navegador Opera e dos clientes de e-mail e IRC; Beam e Vision.
  • Julho de 2006 - Implementação inicial de novo código de rede.
  • Agosto de 2006 - Utilização básica de dispositivos USB 1.1 como mouse e teclado, implementação USB 1.1 prevista em 75% completa.
  • Setembro de 2006 - Suporte a leitura e escrita de partições NTFS.[4]
  • Outubro de 2007 - Suporte a controladores Serial ATA.[5]
  • Janeiro de 2008 - Um time "Java for Haiku" foi criado e aprovado com unanimidade pelo OpenJDK Porters Group para converter o OpenJDK para Haiku, versão livre do JDK.[6]
  • Abril de 2008 - Haiku se torna auto hopedeiro (self-hosting), isto é, é capaz de compilar seu próprio código fonte.[7]
  • Janeiro de 2009 - Suporte nativo ao GCC 4.3.3, abrindo novas possibilidades já que muitos programas requerem GCC 4, como o Firefox 3, WebKit, VLC 0.9, Gnash, entre outros.[8]
  • Julho de 2009 - Uma primeira versão do protótipo do FreeBSD WLAN-Stack foi portado para o Haiku, que permite ligações sem fios sem criptografia como primeiro passo.[9]
  • 14 de setembro de 2009 - É lançada a versão R1/Alpha 1, o primeiro lançamento de desenvolvimento do sistema.[10]
  • 10 de maio de 2010 - É lançada a versão R1/Alpha 2.[11]

Compatibilidade com BeOS[editar | editar código-fonte]

Haiku visa a ser compatível com o BeOS tanto nos níveis do código-fonte quanto dos programas compilados, permitindo que programas escritos e compilados para BeOS possam ser compilados e rodar sem modificações no Haiku. Isto proporcionaria aos usuários do sistema uma vasta coleção de aplicativos disponíveis (mesmo programas cujos desenvolvedores já saíram do mercado ou deixaram de atualizar seus programas), além de permitir que o desenvolvimento de programas interrompidos desde o "fim" da Be Incorporated seja retomado.

Essa decisão no entanto possui seus pontos negativos, deixando o sistema preso à versão 2.95 de seu compilador GCC que, em 2009, já tem mais de 8 anos (apesar de pequenas atualizações terem sido lançadas desde então, e o fato que o Haiku pode ser compilado na versão mais nova do GCC, opção que quebra a compatibilidade com os programas existentes). Usando a versão mais recente do GCC 4 quebras de compatibilidade com BeOS, no entanto, Haiku está sendo construído com suporte aos ambientes GCC4/GCC2 híbrido.[12] Isto permite a utilização de ambos GCC versão 2 e versão 4 binários, ao mesmo tempo.

Apesar dos esforços, a compatibilidade com uma série de acessórios que usam APIs próprias não será implementada. Nesta situação encontram-se drivers para sistemas de arquivos e codecs para formatos de mídia alternativos, entre os codecs afetados com pouca chance de reimplementação estão os decodificadores de mídia Indeo, para os quais não existem especificações disponíveis.

Entre os aplicativos para BeOS 5 que rodam com sucesso no Haiku (em abril de 2006) estão; VLC, Quake II, Quake III Arena, NetPositive, Mozilla Firefox e o editor de imagens Wonderbrush.

A compatilibilidade com drivers é incompleta e não deve cobrir toda a gama de drivers para BeOS. Drivers para placas de vídeo 2D de modo geral funcionam como na versão R5, assim como os drivers de rede. Além disso, Haiku oferece uma fonte de nível de rede do FreeBSD uma camada de compatibilidade de driver, o que significa que ela pode suportar qualquer hardware de rede que vai funcionar no FreeBSD. Drivers de áudio que usam versões de API anteriores ao R5 não são suportados, e dificilmente serão, as versões mais atuais, por outro lado, funcionam.

Drivers para categorias como dispositivos de armazenamento e adaptadores SCSI não serão compatíveis. Já os drivers USB para as versões R5 e posteriores do BeOS serão.

Além do R1[editar | editar código-fonte]

Marcador do evento atual
Este artigo ou seção contém informação sobre um produto que ainda não foi lançado.
Pode conter informações de uma natureza especulativa e o conteúdo pode mudar drasticamente.

Apesar da primeira versão (R1) do Haiku não ter sido completada, o planejamento inicial para a segunda versão (R2) já começou através do projeto "Glass Elevator" (referência ao livro infantil Charlie and the Great Glass Elevator - Charlie e o Grande Elevador de Vidro - seqüência de A Fantástica Fábrica de Chocolates / Charlie e a fábrica de chocolate).

O único detalhe confirmado até o momento (janeiro de 2009) é a mudança para a versão mais nova da coleção de compiladores GNU (especificamente a versão 4.4.5), quebrando a compatibilidade com os programas compilados nas versões anteriores, o que significa que programas para BeOS 5 que tiveram seu desenvolvimento cancelado não rodarão na segunda versão do Haiku.

Entre as sugestões encontram-se: indexação de arquivos a altura do Beagle (utilizado no Unix), Google Desktop e Spotlight (do Mac OS X) maior integração do formato SVG na área de trabalho; suporte a multíplos usuários e kits adicionais.[13]

Ver também[editar | editar código-fonte]

Referências

  1. Loli-Queru, Eugenia (7 de maio de 2002). Help Choose a New Name for OpenBeOS, "OSNews" (em inglês). Acessado em 2008-ago-20.
  2. DaaT (18 de agosto de 2008). Haiku Turns 7.. "IsComputerOn" (em inglês). Acessado em 2008-ago-20.
  3. Haiku Inc. (2008). "Haiku Project Teams: Kernel Drivers", no Internet Archive (em inglês). Acessado em 2009-abr-30.
  4. frankps (27 de setembro de 2006). Haiku with NTFS Write Support, "IsComputerOn" (em inglês). Acessado em 2007-nov-15.
  5. Dörfler, Axel (1° de outubro de 2007). AHCI SATA driver ready for testing, "Haiku Operating System" (em inglês). Acessado em 2007-nov-15.
  6. Mare, Jorge G. (21 de janeiro de 2008). OpenJDK Porters Group Votes to Sponsor Java Port to Haiku, "Haiku Project" (em inglês). Acessado em 2008-ago-20.
  7. Bruno Albuquerque (01 de Abril de 2008). Haiku self-hosting (em inglês).
  8. McCullough, Urias (31 de janeiro de 2009). Haiku Finally Gets a Native GCC4 - full story inside!, "Haiku Project" (em inglês). Acessado em 2009-ago-23.
  9. ColinG (13 de julho de 2009). WiFi stack prototype works, "Haiku Project" (em inglês). Acessado em 2009-ago-28.
  10. Mare, Jorge (14 de setembro de 2009). Haiku Project Announces Availability of Haiku R1/Alpha 1, "Haiku Project" (em inglês). Acessado em 2009-set-15.
  11. Haiku Project Announces Availability of Haiku R1/Alpha 2 (em inglês).
  12. Stephan Aßmus (2008-05-18). Steady Progress towards Alpha 1. Haiku Inc.. Página visitada em 2008-05-28.
  13. Projeto Glass Elevator

Ligações externas[editar | editar código-fonte]

Outros projetos Wikimedia também contêm material sobre este tema:
Commons Imagens e media no Commons