Agora é oficial: Alexander Von Gluck IV (aka kallisti5) anunciou nas principais listas de discussão do Haiku que o quarto e provavelmente último alfa do Haiku será lançado no próximo dia 12 de novembro. Com isso, haverão três fins de semana até o lançamento para o atendimento de algumas commits críticas e resolução de pendências de última hora. Como o lançamento acontecerá após o BeGeistert, o grande encontro anual dos usuários e desenvolvedores do Haiku em Dusseldorf, Alemanha, certamente o evento será utilizado pelos últimos para fazer os derradeiros ajustes e apontar o direcionamento da possível versão beta, prevista para o primeiro trimestre de 2013. Esperamos que os próximos dias - e nightly builds - tragam nossa tão aguardada tradução 100% em português brasileiro e muitas melhorias no sistema como um todo. Embora se trate de uma versão alfa, dentro da filosofia perfeccionista do Haiku ela pode ser utilizada diretamente em uma máquina de uso sem maiores problemas. O porém fica apenas para algumas funcionalidades que ainda não se encontram presentes, como acesso pleno a redes Wifi e a ausência de modernos processadores de texto e outras ferramentas. Sobre esse assunto, falaremos em outro post.
terça-feira, 23 de outubro de 2012
domingo, 7 de outubro de 2012
Instalando Haiku Alpha3 no VirtualBox para o OS X
Instalando Haiku Alpha3 no VirtualBox para o OS X
http://betips.net/2009/09/25/installing-haiku-alpha1-in-virtualbox-under-os-x/
(tradução nossa)
VirtualBox é um controlador de maquinas virtuais. Isso significa que ele é um programa que finge ser um computador separado, no qual você pode carregar diferentes sistemas operacionais. Ao contrário de outros programas como Parallels ou VMWare, ele é Livre. Usando o VirtualBox permite que você experimente o Haiku sem a necessidade de comprar uma nova máquina ou particionar um disco.
Essa não é necessariamente a única maneira de instalar o Haiku no VirtualBox. É uma forma que funcionou comigo, depois de mexer muito. Sinta-se livre para adaptar estas instruções para as suas próprias necessidades.
- VirtualBox version: 4.1.23 r80870
- Host OS: Mac Os X 10.8.2
- Guest OS: Haiku Alpha3 Nightly Images hrevr1alpha4-44624
- Instalar o VirtualBox no Mac OSX.
- Baixe o arquivo. Imagem ISO do Haiku. Grave em CD (Isso é opcional. Você pode inicializar diretamente a partir da ISO.)
- Inicie o VirtualBox e criar uma nova VM. Em “Novo”, definir o sistema operacional como “Outro” e em versão “para outros / desconhecido”. Nomeie-o como Haiku.
- 512 MB de memória deve ser suficiente para Haiku.
- Criar um "disco rígido" novo. Deixe o "boot do disco rígido" como caixa assinalada. Você pode usar um disco dinâmico(o disco vai crescendo, aos poucos em vez de ocupar o espaço total). Faça-o de 4 GB ou mais, se você pode poupar o espaço em disco.
- Agora clique em configurações e use o seguinte:
- Geral | Avançado: Desative a Área de transferência Partilhada. (não irá funcionar de qualquer maneira). Lembre-se de verificar as mudanças de tempo de execução
- Sistema | Placa mãe: Verifique se o CD/DVD está marcada na ordem de boot. Desmarque o disquete
- Sistema | Processador: Se você tem um processador Core2Duo, você pode especificar duas CPU. Se você tem um 8-core Mac Pro, saiba que eu te odeio. Não especificar mais CPU do que você realmente tem. Habilitar PAE/NX
- Sistema | Aceleração: Habilitar tudo
- Vídeo | Gráfica: Vá lá, seja ousado, coloque 32MB para jogar. Habilitar “Activar Aceleração 3D”
- Vídeo | Vídeo Remoto: Desative
- Rede | Adaptador 1: O padrão PCNET-Fast não funciona. Há três Intel PRO/1000 adaptadores disponíveis e todos eles parecem funcionar. Você possui 4 adaptadores, pode tentar verificar todos os três adaptadores e comparar as velocidades no Haiku.
- Pasta Compartilhadas: Não adianta tentar utilizar. Isso requer a instalação do pacote de convidados, que ainda o Haiku não suporta.
- Insira o CD que você fez no passo 2, ou adicionou a ISO. Agora feche a tela de configurações e clique no ícone “Inicio”. Sua VM irá iniciar a partir do CD ou ISO e irá iniciar o procedimento de instalação. Você vai precisar inicializar o disco rígido virtual. Não se incomode com um esquema de partição, basta colocar BeFs. Continue a instalação, ao terminar, retire o CD e reinicialize. Bem-vindo ao Haiku!
Marcadores:
artigo,
Haiku,
instalação,
tradução
sexta-feira, 5 de outubro de 2012
A Alvorada do Haiku OS
Publicamos hoje outro artigo traduzido, desta vez escrito por Ryan Leavengood, tesoureiro da Haiku Inc. e um dos principais desenvolvedores deste sistema operacional. Diferentemente do artigo anterior, este apresenta um ponto de vista mais de quem conhece profundamente o sistema, inclusive dando uma aula incrível sobre threads que me lembrou os bons tempos das aulas de Arquitetura dos Sistemas Operacionais. Este é um artigo para ser lido e relido umas trocentas vezes... ;D
A
alvorada do Haiku OS
Como
uma equipe de voluntários trouxe de volta um sistema operacional falido
Por
Ryan Leavengood / maio de 2012
(tradução nossa)
Era verão de 2001 e o programador de computadores Michael Phipps tinha
um problema: seu sistema operacional favorito, BeOS, estava para ser
extinto. Ter uma ligação emocional a uma pedaço de software pode lhe
parecer estranho, mas para Phipps e muitos outros (inclusive eu), o
BeOS merecia. Ele rodava incrivelmente rápido no hardware de sua
época; tinha uma interface de usuário limpa e intuitiva; e oferecia
um rico, divertido e moderno ambiente de programação. Em resumo,
nós o achávamos muito superior a todos os outros sistemas
operacionais para computador disponíveis. Mas a companhia que tinha
criado o BeOS não poderia mantê-lo no mercado e seus ativos,
incluindo o BeOS, estavam sendo vendidos a um competidor.
Preocupado
se, sob um novo proprietário, o BeOS teria uma morte lenta e
insuportável, Phipps fez a única coisa lógica que pôde pensar:
ele decidiu recriar o BeOS completamente do zero, mas como código
aberto. Um sistema de código aberto, ele raciocinou, não pertence a
nenhuma companhia ou pessoa, então ele não pode desaparecer apenas
porque uma empresa vai à falência ou os desenvolvedores principais foram
embora.
Agora
se você já tiver programado antes, saberá que
criar um sistema operacional é um trabalho enorme. E esperar que as
pessoas o façam sem pagá-las é uma maluquice. Mas para as dezenas
de desenvolvedores voluntários que tem trabalhado no Haiku, tem
sido um trabalho de amor. Nos 11 anos desde que o projeto começou,
nós lançamos três versões alfa do software e este mês esperamos
lançar o quarto e último alfa. Depois disso nos moveremos para o
estágio beta, do qual esperamos sair no fim do ano, seguido pelo
primeiro lançamento oficial, conhecido como R1, no início de 2013.
Mesmo
agora, qualquer pessoa pode instalar e rodar o sistema operacional em
um computador baseado no Intel x86. Muitos daqueles que o fizeram
comentam que sentiram as versões alfa do Haiku tão estáveis quanto
a versão final de qualquer outro software. De fato, de todos os
muitos sistemas operacionais alternativos hoje em atividade, o Haiku
é provavelmente o melhor posicionado para desafiar sistemas
operacionais dominantes como Microsoft Windows e Mac OS. Para
usuários e desenvolvedores, a experiência de rodar o Haiku é
incrivelmente consistente e, como o BeOS, ele é rápido, responsivo
e eficiente. Além do mais, o Haiku, diferentemente de seus mais
estabelecidos competidores, é extremamente bom em enfrentar um dos maiores desafios da computação moderna: microprocessadores de núcleo múltiplo. Vamos dar uma olhada no porque isso acontece, como o Haiku
surgiu e se o sistema operacional rodando no seu computador realmente
funciona tão bem como deveria.
Primeiro,
uma pequena história. Em 1991, um francês chamado Jean-Louis Gasset
e muitos outros ex-empregados da Apple fundaram a Be Inc. porque
queriam criar um novo tipo de computador. Em particular, eles
buscaram escapar da armadilha de retro-compatibilidade que testemunharam na Apple, onde cada nova versão de hardware e software
tinha que levar em conta anos de sistemas legados, verrugas e tudo. O
primeiro produto da companhia foi um computador de mesa chamado de
BeBox. Não encontrando outro sistema operacional que fosse de
encontro a suas necessidades, os engenheiros da Be escreveram o seu
próprio.
Lançado
em outubro de 1995, o BeBox não durou muito. O BeOS, por outro lado,
rapidamente encontrou um pequeno mas leal séquito e logo estava
rodando em PCs baseados no Intel x86 e clones do Macintosh PowerPC.
Naquele momento a Apple já considerava o BeOS como um substituto do
seu próprio sistema operacional. A companhia eventualmente lançou
uma versão despojada do BeOS para aparelhos de Internet, mas isso
não foi o suficiente. Em 2001, a Palm adquiriu a Be por divulgados
US$ 11 milhões.
Assim
que a venda da Be estava sendo finalizada, Phipps lançou o projeto
Haiku, que na época era conhecido como OpenBeOS (o nome mudou poucos
anos depois).
Desde o princípio, Phipps decidiu que o foco singular do projeto seria ser
replicar o último lançamento oficial do BeOS, conhecido como R5.
Em retrospectiva, esse foi um golpe de gênio. Esforços em código
aberto, geralmente feitos por diversão no tempo livre das pessoas,
pode algumas vezes fracassar ou se desviar sem mesmo lançar algo
tangível. O Haiku evitou esse destino porque todos os seus
desenvolvedores acreditavam no objetivo de replicar o R5.
Ainda assim,
Phipps e aqueles que se juntaram a ele tiveram seu trabalho repartido
entre eles. Um sistema operacional é extremamente complexo,
especialmente um tão abrangente como o BeOS, do qual várias camadas
e aplicativos tinham sido projetados desde o início para
trabalhar juntos. Alguns dos engenheiros mais talentosos em Silicon
Valley tinham desenvolvido o software ao longo de mais de dez anos.
Recriar tal sistema com uma equipe formada unicamente por voluntários
trabalhando no seu tempo livre era uma ideia maluca. Mas foi assim que o Linux surgiu, bem como os softwares GNU da Free Software
Foundation, do GNU C Compiler ao GnuCash, um programa
de contabilidade.
Bem como as camadas de um bolo, um sistema computacional consiste do
hardware, um sistema operacional que gerencia o hardware e os
aplicativos que rodam dentro do sistema operacional, tais como
navegadores Web, editores de documentos e coisas divertidas como
jogos. O sistema operacional é também o meio pelo qual os programadores dão instruções ao hardware.
Por sorte,
o BeOS foi escrito de maneira modular, fazendo-o relativamente
simples de desenvolver, testar e então substituir cada componente
do BeOS com seu equivalente em código aberto. Umas poucas partes do
BeOS já tinham sido lançadas pela Be como código aberto, tais como
o Tracker e o Deskbar, os quais são equivalentes ao Explorer e a
Barra de Tarefas do Windows e ao Finder e Dock do OS X. Um dos
primeiros blocos de código que os voluntários abordaram foi o kit
do protetor de tela, o qual tinha uma função muito simples mas
também um monte de peças móveis. Dentre outras coisas, ele tinha
que constantemente monitorar a atividade no teclado e no mouse,
carregar as definições da proteção de tela nos momentos certos e
pedir a senha quando a proteção de tela é desligada. Uma vez que
todas as peças haviam sido bem fixadas, Phipps substituiu o protetor
de tela do BeOS com a versão em código aberto e para surpresa
e alegria de todos, ele funcionou. Mais importante, foi uma prova de
conceito que mostrou aos desenvolvedores que eles podiam substituir
cada módulo no BeOS e saber que seria totalmente
compatível.
Em
2008 atingimos um marco. O Haiku, como qualquer peça de
software, é escrito em código fonte; para convertê-lo para
instruções binárias que o computador possa processar, você precisa
compilá-lo. A descoberta foi que finalmente fomos capazes
de compilar o código fonte do Haiku a partir do próprio sistema; os
programadores referem-se a esta característica como “self-hosting”.
Este passo é crítico no desenvolvimento de qualquer sistema
operacional porque, sem ele, haverá sempre dependência de outros
sistemas.
Mesmo com o desenvolvimento em curso, Phipps estava
trabalhando para criar um lar organizacional para o Haiku,
finalmente fundando a Haiku Inc. como uma organização sem fins
lucrativos em 2003. Além de supervisionar o projeto e receber
donativos, a Haiku Inc. detém os direitos autorais e as marcas
registradas do sítio web do Haiku, da logomarca e, naturalmente, do
código fonte. Todo o código fonte do Haiku é agora licenciado sob
o que é chamado de Licença MIT, a qual permite o uso integral e gratuito do
código por praticamente todo mundo, incluindo companhias privadas
e outros projetos de código aberto.
Naturalmente,
o time do Haiku também está consciente de não infringir as
patentes do BeOS, as quais ainda estão vigentes. Em geral, nós
mantemos uma relação amigável com a companhia japonesa de software
Access, que agora detém os direitos do BeOS; por exemplo, a
companhia permitiu-nos publicar a documentação do BeOS em nosso
sítio web e nunca contestou quaisquer dos nossos esforços para
replicar a tecnologia do BeOS. Poderia a Access ou alguma outra
corporação que acredite ter o direito ao nosso código escolher
processar um pequeno projeto de código aberto como o nosso?
Financeiramente, não faria muito sentido e geraria também muita publicidade ruim. Mas vamos ter que esperar pra ver. Dado o atual
estado frenético de litígios de propriedade intelectual nos
Estados Unidos e outros países, nenhum projeto de software pode ser
considerado completamente imune a problemas legais.
Em
2007, Phipps anunciou que estava deixando o projeto por motivos pessoais e
um novo grupo de pessoas assumiu o comando da Haiku Inc. Assim como Phipps tinha antecipado no início, a perda de um líder não condenou o projeto. Eu sou atualmente o tesoureiro e, junto
com os outros executivos da Haiku Inc., faço parte da sua diretoria. Mantivemos o ritmo e na última reunião em
Dusseldorf, Alemanha, no início de abril, os desenvolvedores do
Haiku trabalharam na iminente versão alfa.
Neste
ponto, nós temos replicado o BeOS R5 tão precisamente que os
aplicativos BeOS legados, agora com mais de 10 anos de existência,
podem rodar no Haiku. Quando o projeto começou, muitos pensaram que
este tipo de compatibilidade seria impossível. E em muitas áreas
chave, o Haiku superou seu antecessor. Por exemplo, o Haiku suporta
mais idiomas que o BeOS e é mais fácil de internacionalizar de outras maneiras também. Ele também pode manusear placas de vídeo
modernas, processadores mais novos, acesso à rede sem fio e suporta
mais memória do que o BeOS.
E
em termos de programação, o Haiku torna muito fácil o desenho de
interfaces de usuário para aplicativos, porque ele tem uma
ferramenta de layout embutida que permite colocar automaticamente ícones e outros dispositivos na tela. Com o BeOS, por exemplo, os
desenvolvedores tinham que especificar cada mínimo detalhe do
layout e alinhar à mão botões com caixas de verificação. Estas e outras melhorias tem permitido ao Haiku permanecer
relevante, apesar do ritmo ultra-rápido das inovações em hardware e
software.
Mesmo assim, você pode estar se perguntando: com Windows, Mac OS X, centenas de versões do
Linux e numerosos sistemas operacionais móveis, o mundo realmente
precisa do Haiku?
Sim,
precisa, por muitas razões. Tal como na Natureza, vírus de
computador florescem em uma monocultura; e porque tantos de nós usam
computadores Windows, seus vírus encontram abundância de
vítimas. Além disso, se um sistema operacional tem um monopólio,
seus criadores têm poucas razões para melhorar seu
software (a concorrência do navegador Mozilla Firefox é, afinal, em grande parte o que levou a Microsoft a atualizar o
Internet Explorer). E a diversidade promove interoperabilidade porque
obriga os desenvolvedores de software a criar código que roda bem
com outros sistemas. Quando existe muito pouca concorrência, não
existe incentivo para fazê-lo.
Mas
o Haiku faz mais do que apenas expandir o conjunto genético dos
sistemas operacionais. Uma das primeiras coisas que as pessoas percebem sobre ele é que não se parece em nada com o Windows, OS X ou
Linux. Ele é único. O Linux, por exemplo, é baseado em torno de um
núcleo – chamado de kernel – que foi originalmente desenhado
para uso em servidores e apenas mais tarde modificado para sistemas
desktop. Em consequência, o kernel, por vezes, dá pouca atenção
à interface do usuário, o que os usuários Linux experienciam como
atrasos irritantes quando seus computadores estão fazendo coisas especialmente pesadas, como queimar um DVD ou compilar código.
O kernel do Haiku sempre foi voltado para sistemas desktop e por isso
sempre dá prioridade a qualquer coisa que esteja acontecendo na sua
interface gráfica de usuário.
Entre
o kernel e a interface gráfica de usuário está o que é conhecido
como interface de programação de aplicativos ou API. Uma API é o
que os desenvolvedores de aplicativos usam para acessar outros
sistemas de software e o desenho daquela API pode afetar tanto os
desenvolvedores como os eventuais usuários de seus softwares. O Haiku
possui apenas uma API. O Linux, em contraste, possui centenas de APIs
e sobre elas muitas interfaces de usuário, então você não pode
apenas trocar suavemente de uma versão do Linux para outra. A versão
que você utiliza pode alterar significativamente a aparência da tela do
seu computador, o modo como os programas inicializam e executam e
várias outras coisas, tudo o que torna bastante difícil desenvolver software que sempre funciona bem em todos os
sistemas Linux.
Todos
os componentes do Haiku são desenhados para trabalhar juntos desde o
início; isso inclui seus aplicativos, como o tocador de mídia e o
navegador Web. Seu código fonte até usa um estilo consistente,
algo que os desenvolvedores verdadeiramente apreciam, porque lhes permite
chegar rapidamente à velocidade. Um desenvolvedor escrevendo
código para o Haiku pode estar seguro de que ele irá funcionar e agir
da mesma maneira em todas as instalações do Haiku. Embora o Haiku
seja de código aberto, sempre existirá apenas uma versão oficial.
Tudo isso combina para oferecer uma experiência de usuário
muito consistente.
O
que realmente destaca o Haiku, entretanto, é sua eficiência e
velocidade. Em meu computador de três anos de idade, o Haiku
inicializa de uma partida a frio em 10 a 14 segundos e quando em execução ele utiliza cerca de 170 megabytes de RAM. Comparado com outros
sistemas operacionais, é fantástico ao maximizar os recursos
computacionais disponíveis. O Haiku demonstra ser rápido e responsivo
mesmo quando rodando em sistemas antigos que seriam
considerados obsoletos por não poderem mais lidar com a
ineficiência e inchaço dos outros sistemas operacionais.
Muito
da eficiência e velocidade do Haiku é um resultado direto do seu
legado BeOS. O BeOS foi desenhado desde o início para fazer pleno
uso de threads, o que em termos de computação representa sequências
de execução de código. Assim como um pano consiste de muitos fios
(threads) tecidos juntos, um sistema operacional é feito de threads
e eles têm de partilhar tempo no processador. Geralmente, existe um thread
para cada aplicativo e um também para a interface de usuário do sistema
operacional. O problema é que a interface de usuário em
particular necessita mais do que um thread. Aquelas mensagens
“o aplicativo não está respondendo” no Windows e a “bola de
praia da morte” (spinning pinwheel) no OS X – que a maioria de
nós experimentamos com alguma regularidade e frustração – são o
resultado direto de usar apenas um thread para a interface do
usuário. Quando aquele thread fica muito carregada de trabalho ou
tem outro problema (como uma rede lenta), a interface inteira do
aplicativo fica travada.
Isso
não acontecia no BeOS e não acontece no Haiku. Onde o BeOS seguiu à frente dos outros sistemas operacionais de sua época (e onde o Haiku
está ainda á frente dos sistemas operacionais contemporâneos) é
que cada aplicativo individual utiliza muitos threads. O núcleo do
próprio aplicativo tem um thread e cada janela que o aplicativo cria
tem um thread. Embora isto possa tornar o código um pouco mais
complicado para escrever, o resultado é que os aplicativos quase
nunca atrasam ou travam.
Este
sistema altamente entremeado significa que o Haiku pode fazer maior
uso de múltiplos processadores ou núcleos de CPU, que são agora onipresentes. O kernel Haiku permite a cada thread rodar em seu próprio
núcleo ou processador – mesmo threads dentro do mesmo aplicativo.
Adicionar mais threads para outras tarefas, como recuperar dados de
uma rede, é também simples. Outros sistemas operacionais fazem uso
de núcleos múltiplos apenas quando executando muitos aplicativos ao
mesmo tempo ou quando um aplicativo em particular tem um código
especial para multithreading adicionado a ele. Mas este código é difícil de escrever, então a maioria dos aplicativos
não o possuem.
O
Haiku simplifica o processo de escrever código para multithread pela
ocultação da maioria das interações de threads com as quais o
desenvolvedor não precisa se preocupar. Uma grande parte do que faz
este trabalho é o uso extensivo de message passing. Digamos que o
Thread A e o Thread B em um aplicativo querem recuperar uma parte dos
dados do Thread C. Em vez de acessar diretamente aqueles dados, os
Threads A e B passam cada um uma mensagem, as quais são colocadas em uma
fila central de mensagens e distribuídas com uma ordem específica.
Sem esse mecanismo, os dois threads iriam tentar acessar o Thread C
simultaneamente, gerando um travamento fatal, no qual ambos
esperariam indefinidamente. Com o Haiku, mensagens podem ser passadas
dentro de um aplicativo e também de outros aplicativos. O código de
message-passing do Haiku então gerencia todas as complexidades do
threading sem que o desenvolvedor precise fazê-lo.
A
principal razão pela qual o BeOS utilizou threads múltiplos foi
porque o BeBox foi concebido como uma plataforma de mídia. Um dos
motes de marketing do BeOS, de fato, era “the media OS”. Embora isso possa ter sido um pouco de exagero, o sistema era muito bom ao lidar com multimídia. Em uma demonstração típica do produto, um
BeBox executava dezenas de diferentes vídeos ao mesmo tempo, sem
nenhum atraso ou perda de quadro, enquanto o sistema ainda permanecia
responsivo. A eficiência do sistema também permitia baixa latência
em processamento de áudio. Enquanto o Haiku ainda precisa de trabalho
nessas áreas, está bem à frente de muitos outros sistemas.
Outra
vantagem que o Haiku tem sobre outros sistemas operacionais é que
ele faz uso extenso de um sistema de arquivos semelhante a um banco de
dados, o qual permite a qualquer arquivo ter vários atributos
associados a ele. Estes atributos podem ser indexados e consultados
exatamente como em um banco de dados contemporâneo. Por exemplo,
cada mensagem de e-mail no Haiku é arquivado junto com atributos
tais como o assunto, o nome do remetente e endereço, e o nome e
endereço do destinatário. A partir do gerenciador de arquivos do
sistema operacional, conhecido como Tracker, você pode pesquisar por
quaisquer daqueles atributos. Os atributos também permitem extrair as informações da música a partir de arquivos MP3 e então organizar
e pesquisar facilmente sua biblioteca musical através do Tracker.
Entradas no livro de endereços do Haiku, conhecido como arquivos
People, consistem quase que inteiramente de atributos.
Ter
seu sistema operacional a organizar seu correio eletrônico e livro
de endereços oferece uma enorme vantagem: você não mais ficará
amarrado a apenas um programa para gerenciar seu correio e contatos.
Qualquer pessoa que tenha tentado extrair velhos e-mails de um
inchado arquivo de correio do Microsoft Outlook irá entender a
beleza desta abordagem.
Em vez de ter seu correio trancado em um formato proprietário que é
acessível a partir de apenas um programa, o Haiku permite a você utilizar
qualquer programa que desejar – você ainda pode utilizar múltiplos
programas no mesmo conjunto de correios. Similarmente, os arquivos
People do Haiku podem ser editados e gerenciados por vários
programas e podem ainda ser editados de dentro do Tracker. Nenhum
outro sistema operacional implementou com tamanho sucesso um sistema de
arquivos semelhante a banco de dados.
Por
todas as suas capacidades, ao Haiku falta ainda algumas coisas importantes que
os usuários vem esperando. Por exemplo, a maioria dos sistemas
operacionais de hoje têm interfaces que são aceleradas por
hardware. O que permite gráficos extravagantes como sombras das
janelas, bordas transparentes e miniaturas de conteúdos para serem tratadas de uma forma rápida e eficiente utilizando
placas de vídeo. Usuários dos sistemas operacionais dominantes
também tem um largo conjunto de aplicativos à escolha. O Haiku
neste momento é limitado a poucos aplicativos criados
especificamente para ele ou que sobraram do BeOS.
E
como outros sistemas operacionais de código aberto, o Haiku sofre da
falta de drivers de hardware. Placas de vídeo modernas, impressoras
e outros componentes são complicados – eles são como computadores
em miniatura à sua maneira e requerem complexas peças de
software, chamados drivers, para funcionar. O driver age como uma
ponte entre o sistema operacional e o hardware. Mas nos dias de hoje existem tantos tipos, marcas e modelos de hardware que é difícil
para os desenvolvedores de código aberto acompanharem.
Felizmente,
o Haiku pode criar a partir do trabalho já feito pelos milhares de
desenvolvedores que trabalham no Linux, FreeBSD e outros sistemas
operacionais de código aberto. O Haiku já faz uso da rede do
FreeBSD e drivers de rede sem fio através de uma interface de
tradução especial. Também está em curso o trabalho de incorporar
o novo sistema Gallium3D, o qual parece ser o futuro para drivers de
vídeo no Linux.
Além do mais, muitos dos pontos fortes do Haiku provavelmente nunca serão
acompanhados pelos principais sistemas operacionais, ou pelo menos não
tão cedo. Aplicativos Linux não são projetados para usar
multithread na mesma medida do Haiku e, portanto, não podem tirar máximo proveito do moderno hardware multicore. Com o lançamento do
Snow Leopard do seu OS X há dois anos atrás, a Apple adicionou uma nova
tecnologia, chamada Grand Central Dispatch, que torna mais fácil
para os aplicativos utilizar threads múltiplas. Mas existe ainda
apenas um thread para a interface de usuário da aplicação, então
a “bola de praia da morte” permanece.
O
último lançamento do Windows 7 é uma grande melhoria sobre seu
antecessor, mas ele ainda tem muitas questões, como a inconsistência de interface generalizada e sua simples sobrecarga de
informação. O painel de controle sozinho é o bastante para causar dor de cabeça ao
usuário. O Windows é enorme, também: uma
instalação pelada do Windows 7 Ultimate irá consumir 20 gigabytes
de armazenamento. Ainda que você inclua as dezenas de aplicativos
livres que vem com o Haiku, instalar o sistema operacional irá
custar a você apenas cerca de 700 MB – um trigésimo do espaço
requerido pelo Windows 7. E quanto a ser um sistema livre e aberto,
nem Windows nem Mac OS nunca vão ser.
Finalmente,
o Haiku representa uma forma diferente de ver seu computador pessoal.
Se você acha que software não deveria ser cheio de bugs,
incompatibilidades e ineficiências, se você odeia ser forçado a
trocar seu hardware e software a cada poucos anos porque
“atualizações” os tornam obsoletos, e se você acha que a ideia
de usar um sistema operacional que é rápido, responsivo e simples é
refrescantemente nova e atraente, então talvez, apenas talvez, o
Haiku seja para você.
Este
artigo apareceu originalmente impresso como “The Dawn of Haiku”.
Sobre
o autor
Ryan
Leavengood é um consultor de informática em Boynton Beach, Flórida,
que se especializou em desenvolvimento de sítios web com Ruby on
Rails. Ele começou a se envolver no esforço open-source para criar
o sistema operacional Haiku em 2003 e é agora o tesoureiro do grupo.
Nenhum sistema operacional é perfeito, ele observa, mas “alguns
são realmente imperfeitos. Eu percebi que qualquer sistema
operacional com o qual trabalhei não podia ser pior do que aquele
que eu já estava usando”. Quando Leavengood não está
programando, ele e sua esposa, Francesca, cuidam de seus quatro
gatos, um São Bernardo e um jardim de plantas nativas da Flórida.
Marcadores:
artigo,
desenvolvimento,
Haiku,
tradução
quinta-feira, 4 de outubro de 2012
O Haiku poderia mudar o mundo
Traduzimos o presente artigo da OSnews que faz uma abordagem geral sobre o Haiku, inclusive do ponto de vista de um usuário Linux. Trata-se de uma ótima apresentação do sistema, que permite ao iniciante ter uma prévia do que poderá encontrar nesse excelente sistema operacional.
O
Haiku poderia mudar o mundo
postado
por Razvan T. Coloja em seg., 3 Jan 2011 23:30 UTC
(tradução
nossa)
Para
entender o que são os sistemas operacionais BeOS e Haiku, nós temos
primeiro que lembrar que o BeOS foi desenvolvido tendo em mente o usuário
multimídia. O BeOS desejou ser o que o OS X se tornou hoje:
um sistema fácil de usar e atrativo. No entanto, o BeOS era um
sistema de nicho, destinado ao usuário faminto por multimídia. A
porcentagem de aplicativos de áudio e vídeo disponíveis para o
Haiku é maior que aqueles no Linux, OS X ou Windows e o trabalho
interno do sistema operacional foi criado de tal maneira que o mesmo
apaixonado por multimídia acharia fácil trabalhar com a interface
de usuário e arquivos. Cada aplicativo pode interagir com outros do
mesmo tipo. Uma seleção de um arquivo WAVE pode ser arrastada de um
editor de som para a área de trabalho, a fim de criar um arquivo de
áudio. Aplicativos de
áudio podem interagir uns com os outros através do Haiku Media Kit
– o correspondente do servidor de som do Linux. Aplicativos como o
Cortex são o exemplo perfeito de como o BeOS e o Haiku lidam com
arquivos multimídia: você pode ter mais de uma placa de som e usar
cada uma das placas independentemente ou separadamente.Você
pode vincular uma placa de som ao Áudio Mixer, iniciar um aplicativo
de bateria eletrônica e vinculá-lo ao mesmo Mixer. Se desejar
reproduzir o que quer que tenha criado com o aplicativo de áudio,
tudo o que tem que fazer é arrastar o microfone e vinculá-lo ao
ícone do aplicativo no Cortex.
Tudo
no Haiku está em torno da simplicidade. Você pode arrastar e soltar um
arquivo dentro de uma janela de aplicativo e se o programa puder
manusear o tipo de arquivo, ele irá abrí-lo instantaneamente.
Quando
o BeOS falhou em tornar-se um sistema operacional comercial, o
time do Haiku assumiu o desenvolvimento e criou um BeOS do zero,
tornando-o um sistema operacional de código aberto. Haiku é um SO
compatível com POSIX
que à primeira vista parece ser um clone entre o OS X e o Linux.
Enquanto a interface de usuário pode parecer não tão polida como o
Aqua do OS X e a base de aplicativos pode ser menor do que a do
Windows, em compensação o Haiku é o mais rápido de todos eles.
Imagine
inicializar uma distribuição Fedora cheia
de funcionalidades com a velocidade de uma simples distribuição
Linux GeeXBox. No VirtualBox, com 512Mb de memória RAM base e um CPU
de 1,83GHz, o Haiku inicializa em exatos dez segundos do menu do
bootloader até abrir uma área de trabalho pronta para uso. Desligar
o sistema operacional leva um total de três segundos na mesma
máquina virtual. O Haiku também trabalha em máquinas antigas e o
tempo de inicialização varia alguns segundos a mais com um
processador de 500MHz e 256Mb de memória SDRAM. Com apenas 358 Mb de
espaço em disco rígido ocupado pela instalação padrão, o Haiku
não necessita de uma partição SWAP como o Linux, mas ainda assim
pode usar um arquivo SWAP para memória virtual.
O
sistema de arquivos nativo que o Haiku utiliza é chamado BFS (Be
File System), totalmente compatível com journaling de 64-bits. Assim
como EXT3 ou XFS, diferencia maiúsculas de minúsculas e pode ser
usado em dispositivos de armazenamento de mídias. Mais importante, o
BFS tem suporte para atributos estendidos de arquivo (metadados) e
tem capacidade de indexação e consulta. De muitas maneiras, o BFS
age como um banco de dados relacional. BFS pode manusear acima de
dois exabytes quando vem
com limite de tamnho de arquivo. Você pode encontrar suporte ao BFS
no kernel do Linux sob o nome BeFS (por razões práticas, para não
confundir com o UnixWare Boot File System que possui a mesma
abreviação que o sistema de arquivos do Haiku).
O
sistema operacional em si é desenvolvido em C++ e tem uma API
orientada a objetos. O servidor individual e as APIs são conhecidas
pelos usuários BeOS como “kits”. Existe um Kit de Rede que provê
todas as funcionalidades necessárias para acesso à rede. Existe um
Kit de MIDI que manipula o protocolo MIDI. Este último é também
ligado ao Kit de Mídia que manipula todas as coisas de áudio e
vídeo.
Uma
das diferenças entre o Haiku e outros sistemas operacionais
UNIX-like é o Kit de Tradução. Não tem nada a ver com linguagem
mas, ao invés disso, é uma coleção de bibliotecas que lidam com
arquivos de imagem específicos. O Kit de Tradução é composto por
módulos, cada qual designado para ler, escrever, converter um certo
formato de arquivo gráfico. Para ser capaz de visualizar arquivos
JPG, por exemplo, você precisa baixar um dos binários do
Tradutor JPEG e copiá-lo em /boot/system/add-ons/Translators. Uma
vez feito isso, não é necessário reiniciar o servidor do Kit de
Tradução para que as novas definições tenham efeito. Você será
capaz de visualizar arquivos JPEG instantaneamente, desde que o
arquivo binário esteja em seu lugar. Bibliotecas do Kit de Tradução
– também chamadas “Tradutores” - são pré-instalados para os
tipos mais comuns de arquivos de imagem que variam do GIF ao SGI e
RAW. Tradutores podem ser baixados separadamente a partir do BeBits, o maior
repositório de software do BeOS e do Haiku.
O
Haiku mantém as coisas simples, com aplicativos simples e opções
de configuração simples. Com um mínimo de esforço você pode
instalar e aplicar algo e aquele algo deve funcionar como esperado –
seja um aplicativo, definição de sistema ou consulta de pesquisa.
O
sistema operacional foca menos na linha de comando já que é mais
fácil ao usuário utilizar a rápida interface gráfica. Existe um
porte do BASH no Haiku com um conjunto de binários UNIX comuns como
diff, tar, rm, route, grep, ssh ou traceroute já disponíveis. Assim
como as distribuições Linux, o BeOS também tinha um sistema de
pacotes. Arquivos PKG poderiam ser instalados com a ajuda do
SoftwareValet. Não haviam repositórios online disponíveis naquela
época e o aplicativo instalador podia manusear arquivos apenas da
perspectiva da interface gráfica. O Haiku está tentando
trazer de volta os dias dos arquivos PKG com um projeto que será
escrito na API do Haiku. Hoje, a maioria dos softwares disponíveis
para o Haiku vem em pacotes ZIP, com muitos projetos de código
aberto sendo portados do Linux e do BSD. Inclusive drivers de dispositivo e
aplicativos. QEMU, ScummVM, HandBrake, os drivers da
família Realtek RTL8132 são apenas alguns deles.
A
estrutura de pastas do Haiku é ligeiramente diferente daqueles que
costumamos ver no Linux, uma vez que o sistema operacional foi
desenvolvido com o usuário único em mente.
Algumas
pessoas podem achar estranho que um
sistema operacional UNIX-like não tenha acesso multiusuário
implementado. Isto é apenas mais uma coisa que separa o Haiku do OS
X, Solaris e Linux. Sua estrutura de pastas pode assemelhar-se ao
Linux e OS X, ele pode ter um prompt BASH, mas no fundo o Haiku é um
sistema operacional monousuário. O proprietário dos arquivos será
sempre o “baron” e o grupo em que você estará será sempre
“users”. Isto porque os desenvolvedores queriam usar a estrutura
UNIX-like mas não viram necessidade para acesso multiusuário nos tempos do BeOS.
Uma
vez que não possui suporte a multiusuário – ele não possui pasta
/root – o usuário atual será o primeiro e único administrador do
sistema. A raiz do sistema guarda os nomes de volume. Como tudo é tratado
como um arquivo, assim como no Linux – apenas de um ponto de vista
do usuário único – os nomes de volume aparecem como um disco na
raiz do sistema de arquivos. O principal volume de disco é também
chamado /boot e contém a pasta /home, as pastas /preferences e
/system, a pasta de aplicativos é chamada /apps e mais outras três
pastas de sistema. A pasta /develop, por exemplo, guarda os arquivos
de cabeçalhos e bibliotecas de sistema necessários para compilar
binários, as ferramentas de compilação e documentação relativa.
Por padrão, a pasta /boot/home possui a seguinte estrutura simples:
/boot/home/config
/boot/home/mail
/boot/home/queries
.bash_history
O
Haiku mantém as coisas organizadas de uma maneira efetiva, não
empilhando pastas no espaço de trabalho do usuário.
Arquivos de sistema que o usuário não técnico não deseja ver são
mantidos longe em outras partes do sistema.
/boot/home/config
mantém os arquivos de configuração do usuário, os adicionais do
Tracker, os arquivos do Tradutor, tudo que pertence ao usuário. No
Haiku, muitos dos arquivos são vinculados simbolicamente a outros e
muitas das pastas aparecem até mesmo duas ou três vezes em
diferentes partes do sistema, num bem pensado mas caótico ecosistema
técnico.
Existem
dois componentes que definem a área de trabalho do Haiku: o Tracker
e o Deskbar. Do ponto de vista de um usuário Linux, o Tracker é um
cruzamento entre o Nautilus e o próprio GNOME. Ainda assim, é mais
do que um gerenciador de arquivos e junto com o Deskbar ele forma o
conjunto completo de componentes da área de trabalho do Haiku. O
Tracker pode gerenciar operações de arquivos mas também pode
decidir quais volumes na área de trabalho são visíveis. É um
gerenciador de arquivos mas também uma interface para algumas das
definições de sistema mais utilizadas do Haiku, como o tamanho dos
ícones SVG (Simple Vector Graphics) ou acesso aos adicionais do
usuário (que poderia ser comparado à função de script do
Nautilus). O Deskbar por outro lado integra o Tracker e o Registrar,
este manuseando os processos dos aplicativos.
Alguns
aplicativos também tem a habilidade de se desvincular de suas
janelas e se fixar na área de trabalho. Eles são chamados
Replicantes e você pode identificá-los por uma pequena seta
encontrada no canto inferior direito. Você pode arrastar essa seta e
incorporar uma cópia do aplicativo na área de trabalho.
Do
ponto de vista da segurança, sendo um sistema operacional
monousuário construído numa estrutura UNIX-like, o Haiku ainda não apresenta riscos de segurança. Seu principal uso é para computador
desktop e praticamente não existem servidores rodando o sistema
operacional Haiku. Tendo uma base de usuários pequena e sendo
compatível com POSIX, não existem vírus para ele. A única
coisa que se aproxima de um malware seria um script BASH
malicioso ou uma bomba lógica. Não existe tela de login para
proteger o usuário antes de chegar à área de trabalho e isto
poderia ser considerado um risco. O que poderia ser superado com
a ajuda de uma biblioteca chamada Real Multi User ou com um software
de terceiros como o Lock Workstation.
O
Tracker pode gerenciar atributos estendidos. No modo de visualização
detalhada de arquivos, o Tracker exibe etiquetas ID3 obtidas de
arquivos MP3 como atributos editáveis e é uma maneira de, em poucos
cliques, adicionar atributos personalizados a arquivos multimídia.
Outra
coisa interessante sobre o Haiku e o sistema de arquivos BFS é que –
como eu mencionei antes – ele age como um banco de dados. Toda vez
que você procura por um arquivo, um arquivo de consulta é criado, o
qual mantém os resultados para aquela consulta
específica que foi feita. Você pode mais tarde refazer aquela
pesquisa em particular simplesmente clicando no arquivo que é salvo
automaticamente em /boot/home/queries. A velocidade pela qual as
consultas são realizadas graças ao sistema de arquivos BFS é
simplesmente incrível. Você pode comparar com o quão rápido obtém
resultados de um sistema de arquivos pré-indexados Linux pelo uso do
locate e updatedb. Consultas podem ser manipuladas e editadas assim
que a fórmula de pesquisa inteira é exibida ao usuário, na forma
de um verdadeiro banco de dados. Um antigo projeto chamado
TrackerBase, desenvolvido por Scot Hacker, pode pegar aqueles
resultados de consulta e transpô-los para o formato HTML usando
apenas um servidor web nativo do Haiku chamado PoorMan. Você
pode entender melhor as consultas como uma variação menos
poderosa dos resultados de um servidor SQL.
Geralmente,
os aplicativos em interface gráfica do Haiku tem um rastro de
memória muito pequeno. Isto é uma reminiscência da era BeOS R5
(1998-2001) quando a maioria dos aplicativos eram simplistas e não
requeriam muitos recursos para rodar. As coisas mudaram agora no
Haiku com o surgimento de softwares famintos por recursos como o
Firefox e consequentemente os portes para o Haiku daqueles
aplicativos de código aberto. O Haiku vem empacotado com o Firefox
Bon Echo (versão 2.0.0.21pre). O BeZilla utiliza 52940 KB de memória
quando aberto. Isto realmente tem um impacto na performance global de um
sistema operacional que tem sido usado para rodar softwares leves.
O
objetivo do Haiku era manter compatibilidade retroativa com os
binários do BeOS R5 de maneira que aqueles aplicativos desenvolvidos
para a última versão do BeOS pudessem rodar sem problemas nele.
Lamentavelmente, desde que o desenvolvimento do BeOS encerrou em
2000, aqueles aplicativos de terceiros que rodam agora no Haiku foram
desenvolvidos para uma época que remonta há dez anos atrás.
O
sistema operacional está atualmente em estágio Alfa, com um porte
do WebKit e um protótipo
de pilha WiFi em desenvolvimento. Diferentemente do Linux, onde a
base de desenvolvedores está sempre crescendo, o progresso do
Projeto Haiku levou tempo para alcançar seu marco, com rumores de um release candidate a ser lançado no fim do ano.
Sendo
uma alternativa de código aberto do BeOS, o Haiku segue os mesmos
passos como o sistema operacional da Be Inc. foi desenvolvido. Ele
mantém-se afastado de outros projetos como AtheOS, Syllable, QNX
RTOS ou MenuetOS por causa de sua longa história. Lamentavelmente,
dado a falta de desenvolvedores e com o interesse no BeOS arrefecendo
ao longo dos anos, o projeto Haiku tem tido um progresso lento. O que
não significa que o progresso não foi constante.
Razvan
T. Coloja é um freelancer romeno de 31 anos. Ele publicou artigos de
TI na Linux.com, Linuxforums.org, na Linux Magazine, Ubuntu User
Magazine, MyLINUX, MyComputer e Connect Magazine. Atualmente ele
trabalha como especialista em SEO para uma empresa de webdesign.
Assinar:
Postagens (Atom)