Haiku (sistema operacional)

Origem: Wikipédia, a enciclopédia livre.
(Redirecionado de OpenBeOS)
Versão do sistema operativo BeOS

Área de trabalho do sistema, com o Firefox
Produção Haiku Inc.
Linguagem C++
Modelo Código aberto
Versão em teste R1/Beta 4 / 23 de dezembro de 2022; há 15 meses
Arquitetura(s) x86
Núcleo núcleo híbrido
Interface BeOS
Licença MIT
Página oficial http://haiku-os.org/
Estado de desenvolvimento
corrente, beta

Haiku, conhecido anteriormente como OpenBeOS,[1] é um sistema operacional de código aberto para plataforma x86 que tenta manter retrocompatibilidade com o agora descontinuado, BeOS. Seu desenvolvimento começou em 2001 e tornou-se self-hosting em 2008. A primeira versão alfa foi feita em Setembro de 2009, e a primeira versão beta mais recente em Setembro de 2018; o desenvolvimento continua ativo em 2018, com "nightly images".[2]

Haiku é apoiado pelo Haiku, Inc., uma organização sem fins lucrativos sitiada em Rochester, Nova York, EUA, fundado em 2003 pelo ex-líder do projeto, Michel Phipps.[3]

Como reportado em Junho de 2018, pelo relatório de atividades mensais, os desenvolvedores do Haiku portaram o LibreOffice para o sistema operacional.[4]

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

O projeto começou como "OpenBeOS" em 2001,[5] ano em que ocorreu a compra da Be Incorporated pela Palm, Inc., que descontinuou o desenvolvimento do BeOS; o foco do projeto era dar suporte à comunidade do BeOS, criando um substituto de código aberto e retrocompatí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 utilizar um núcleo Linux ou BSD existente que reimplementava a API do BeOS. 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 pudessem 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 com o intuito 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)

Haiku é escrito em C++ e fornece uma API orientada a objetos.

Devido ao design modular do BeOS, 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 núcleo híbrido e um fork do NewOS,[6] um núcleo modular escrito pelo ex-engenheiro da Be Inc., Travis Geiselbrecht. E como o resto do sistema, ele ainda continua em constante 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 Inc.
  • 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.[7]
  • Outubro de 2007 - Suporte a controladores Serial ATA.[8]
  • 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.[9]
  • Abril de 2008 - Haiku se torna auto hopedeiro (self-hosting), isto é, é capaz de compilar seu próprio código fonte.[10]
  • 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.[11]
  • 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.[12]
  • 14 de setembro de 2009 - É lançada a versão R1/Alpha 1, o primeiro lançamento de desenvolvimento do sistema.[13]
  • 10 de maio de 2010 - É lançada a versão R1/Alpha 2.[14]
  • 28 de setembro de 2018 - É lançada a versão R1/Beta 1, o primeiro lançamento beta de desenvolvimento do sistema.[15]

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.[16] 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 compatibilidade 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]

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 - sequê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). Uma camada de compatibilidade está planejada para permitir que aplicações desenvolvidas para o Haiku R1 funcionem no Haiku R2 e outras versões futuras. Isto foi mencionado em uma discussão na lista de email do Haiku, por um dos principais desenvolvedores, Axel Dörfler. 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 múltiplos usuários e kits adicionais.[17]

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. «Haiku Downloads». download.haiku-os.org. Consultado em 20 de agosto de 2018 
  3. «What is Haiku?». Haiku Project (em inglês). Consultado em 20 de agosto de 2018 
  4. «Haiku monthly activity report - 05/2018 (ft. LibreOffice!)». Haiku Project (em inglês). 6 de junho de 2018 
  5. DaaT (18 de agosto de 2008). Haiku Turns 7.[ligação inativa]. "IsComputerOn" (em inglês). Acessado em 2008-ago-20.
  6. Haiku Inc. (2008). "Haiku Project Teams: Kernel Drivers", no Internet Archive (em inglês). Acessado em 2009-abr-30.
  7. frankps (27 de setembro de 2006). Haiku with NTFS Write Support Arquivado em 11 de outubro de 2007, no Wayback Machine., "IsComputerOn" (em inglês). Acessado em 2007-nov-15.
  8. Dörfler, Axel (1° de outubro de 2007). AHCI SATA driver ready for testing Arquivado em 14 de novembro de 2007, no Wayback Machine., "Haiku Operating System" (em inglês). Acessado em 2007-nov-15.
  9. Mare, Jorge G. (21 de janeiro de 2008). OpenJDK Porters Group Votes to Sponsor Java Port to Haiku Arquivado em 31 de maio de 2008, no Wayback Machine., "Haiku Project" (em inglês). Acessado em 2008-ago-20.
  10. Bruno Albuquerque (1 de Abril de 2008). «Haiku self-hosting» (em inglês) 
  11. McCullough, Urias (31 de janeiro de 2009). Haiku Finally Gets a Native GCC4 - full story inside! Arquivado em 2 de outubro de 2010, no Wayback Machine., "Haiku Project" (em inglês). Acessado em 2009-ago-23.
  12. ColinG (13 de julho de 2009). WiFi stack prototype works Arquivado em 21 de fevereiro de 2010, no Wayback Machine., "Haiku Project" (em inglês). Acessado em 2009-ago-28.
  13. 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.
  14. «Haiku Project Announces Availability of Haiku R1/Alpha 2» (em inglês). 10 de Maio de 2010 
  15. Haiku R1/beta1 has been released, "Haiku Project" (em inglês). Acessado em 2018-nov-08.
  16. Stephan Aßmus (18 de maio de 2008). «Steady Progress towards Alpha 1». Haiku Inc. Consultado em 28 de maio de 2008. Arquivado do original em 28 de maio de 2008 
  17. «Projeto Glass Elevator». Consultado em 19 de abril de 2006. Arquivado do original em 11 de janeiro de 2007 

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