# Haiku (sistema operativo)

Haiku o Haiku OS es un sistema operativo de código abierto en desarrollo que se centra específicamente en la informática personal y multimedia. Inspirado por el extinto BeOS (Be Operating System), Haiku es un sistema rápido, eficiente, fácil de aprender y usar, sin descuidar su potencia para los usuarios de todos los niveles.
Actualmente se encuentra en fase beta: contiene ports de la gran mayoría de las aplicaciones para BeOS, muchas aplicaciones gráficas de GNU/Linux y BSD y desarrollos nativos de propósito general, como Ofimática, editores de video, de audio, de imágenes, navegadores web, etcétera. El primer lanzamiento alfa se realizó en septiembre de 2009 y el último en noviembre de 2012; la primera versión beta se lanzó en septiembre de 2018, seguida de la beta 2 en junio de 2020 y la beta 3 en julio de 2021. El 23 de diciembre de 2022 se anuncia la beta 4 de la versión R1. El proyecto está dirigido por Haiku, Inc., una organización sin fines de lucro situada en Rochester, Nueva York, fundada en 2003 por Michael Phipps, anterior líder de proyecto de BeOS.

## Historia

* En 2001 se inició el proyecto con el nombre de OpenBeOS, cuando la empresa Palm compró a Be, la empresa de BeOS. Esto dejaba a los usuarios de BeOS sin soporte a nuevas actualizaciones y nuevo software para sus equipos.
* En 2004 el proyecto cambió de nombre para evitar los derechos de marca que tenía Palm. La decisión de usar como nombre Haiku —una forma de poesía tradicional japonesa, usada en mensajes de error de BeOS— intentaba reflejar la sencillez y elegancia que se obtenía con el antiguo sistema operativo BeOS.
* En septiembre de 2009 se libera la primera versión alfa de Haiku. Está diseñado para ser intutivo a los antiguos usuarios de BeOS y ser fácil de usar a los nuevos usuarios.
* En mayo de 2010 se libera la segunda alfa de Haiku. Ocho meses después de la primera alfa, la segunda es descrita por sus autores como “el resultado directo de la contribución de muchos voluntarios en todo el mundo“.
* En junio de 2011 se libera la tercera alfa de Haiku. El propósito principal de esta versión es proporcionar a los desarrolladores de terceros interesados una versión estable para pruebas y desarrollo. Por ello, Haiku incluye un completo conjunto de herramientas de desarrollo.
* El 18 de agosto de 2011, el proyecto cumple 10 años.
* El 11 de noviembre de 2014 se anuncia el que el navegador WebKit nativo "WebPositive" ya tiene soporte para video HTML5.
* El 28 de septiembre de 2018 es lanzada la primera Beta de la versión R1, con muchas cosas nuevas, entre las cuales se pueden resaltar las siguientes: manejador de paquetes HaikuDepot, mejoras en WebPositive, actualización de los drivers de WiFi, mejoras en los subsistemas de medios, Escritorio Remoto, EFI bootloader y soporte GPT, entre muchas otras actualizaciones.
* El 9 de junio de 2020 se presenta la Beta 2 de la versión R1.
* El 23 de diciembre de 2022 se anuncia la beta 4 de la versión R1.
* El 13 de septiembre de 2024 se anuncia la beta 5 de la versión R1.

## Características

Haiku está centrado en la informática personal y cuenta con un micronúcleo modular propio, llamado NewOS, el cual está altamente optimizado para trabajar con audio, vídeo, gráficos y animaciones en tres dimensiones, estando inspirado en el utilizado en BeOS. Su arquitectura de núcleo ofrece capacidad para múltiples procesadores, un alto rendimiento, ancho de banda de entrada/salida modular y un penetrante sistema multihilo para su sistema de procesos multitarea reentrante, flexibilidad gráfica y respuesta en tiempo real. A diferencia de otros sistemas operativos, Haiku Os es nativamente gráfico, característica heredada de BeOS. También dispone de programación visual por nodos a partir de las salidas de los programas a través de un software nativo llamado Cortex.
Actualmente cuenta con navegador propio basado en webkit llamado Web+ o WebPositive el cual tiene soporte para HTML5, dando la posibilidad de ver vídeos en YouTube y Dailymotion entre otras muchas páginas que soportan los formatos multimedia.
Algunas otras características con las que cuenta son:
* Arquitectura de núcleo avanzado con capacidad para múltiples procesadores, alto rendimiento y ancho de banda de entrada/salida modular.
* Asignación de espacio en memoria con método indexado y vector de bits para la administración del espacio libre.
* Diseño multihilo de gran eficiencia con soporte para múltiples procesadores.
* APIs orientadas a objetos para el desarrollo más rápido de aplicaciones y desarrollo del sistema.
* Sistema de archivos OpenBFS con soporte para metadatos indexados.
* Interfaz unificada y coherente.

## Compatibilidad con BeOS

Es compatible con BeOS, en el origen y a nivel binario, permitiendo que el software escrito y compilado para BeOS se pueda compilar y ejecutar sin modificaciones en Haiku. Esto proporciona a los usuarios de Haiku una biblioteca instantánea de aplicaciones para elegir (incluso programas cuyos desarrolladores no hayan actualizado), además de permitir el desarrollo de aplicaciones creadas para BeOS. Esta dedicación a la compatibilidad tiene sus inconvenientes, por ejemplo el requerir el uso de la versión 2.95 del compilador GCC, que tiene más de 10 años. El cambio a una versión más moderna de GCC rompería la compatibilidad con BeOS, algo que los desarrolladores de Haiku intentan evitar.
Estos problemas de compatibilidad solo se aplican a los sistemas x86, y no a la versión PowerPC de BeOS R5. Como consecuencia, las versiones para arquitecturas ARM, 68k y PPC de Haiku deben usar la versión 4 de GCC. Por causa de esto ocurren problemas con la compatibilidad con un número del sistema de complementos utilizados en API privadas, las cuales no se implementarán. Esto incluyen complementos del sistema de archivos y de codecs.
Algunas aplicaciones importadas de BeOS R5 ejecutadas con éxito en Haiku (a mayo de 2006) son: Opera, Firefox, NetPositive, Quake II, Quake III Arena, SeaMonkey, Visión y VLC media player.
La compatibilidad con los controladores es incompleta, y es improbable que lleguen a abarcar la gran cantidad de controladores disponible en BeOS. Por otra parte, Haiku ofrece una capa de compatibilidad con controladores de red basada en FreeBSD, lo que significa que puede soportar el hardware de red que funcione en FreeBSD. La API de los controladores de audio y los controladores de bajo nivel para dispositivos de almacenamiento y adaptadores SCSI no serán compatibles con BeOS, al contrario que los dispositivos USB 2.0 y 3.0, soportados ya en BeOS en las versiones R5 y R5.1 ("Dano").
En otros aspectos, Haiku está más avanzado que el BeOS. Por ejemplo, el kit de interfaz permite el uso de un sistema de diseño para colocar automáticamente los elementos en la ventana, mientras que en BeOS el desarrollador tiene que especificar la posición exacta de cada elemento a mano. Esto permite interfaces gráficas de usuario que se representará correctamente con cualquier tamaño de la fuente y hace que la localización de aplicaciones sea mucho más fácil, cambiando automáticamente el tamaño del elemento al cambiar la longitud de las frases en diferentes idiomas.

## Distribuciones

Al ser Haiku un sistema operativo libre ofrece la posibilidad de que cada individuo pueda crear y compilar su propia distribución. Existen actualmente dos distribuciones con programas ya instalados: TiltOs y Senryu. Las dos distribuciones tienen máquinas virtuales ya preparadas para poder probarlas sin tener que instalarlas en un ordenador físico.