Los desarrolladores del sistema operativo de código abierto Haiku, que continúa el desarrollo de las ideas de BeOS, han preparado una implementación inicial de una capa para garantizar la compatibilidad con la biblioteca Xlib, permitiendo ejecutar aplicaciones X11 en Haiku sin la necesidad de un servidor X. La capa se implementa a través de la emulación de las funciones de Xlib mediante la traducción de llamadas a la API gráfica de alto nivel de Haiku.
En su estado actual, la capa proporciona la mayor parte de las interfaces de programación de aplicaciones Xlib comúnmente utilizadas, pero algunas llamadas aún permanecen como sustituciones. La capa permite compilar y ejecutar aplicaciones basadas en la biblioteca GTK, pero la calidad de la disposición de los elementos en las ventanas aún requiere mejoras. El manejo de la entrada a través del teclado y los clics del mouse aún no está completamente funcional (solo se ha añadido el manejo del evento de movimiento del mouse).
El soporte de la biblioteca Qt en Haiku se había implementado anteriormente mediante la creación de un puerto nativo de Qt que operaba sobre la API de Haiku. Sin embargo, para el soporte de GTK, el uso de la emulación de X11 se considera una opción más preferible, ya que la estructura interna de GTK no está tan bien abstraída y crear un backend separado de GTK para Haiku requeriría recursos significativos. Se había contemplado la posibilidad de crear un puerto de X11 para Haiku.servidores Pero este enfoque se reconoció como poco práctico en un contexto donde la API de X11 se puede implementar directamente sobre la API de Haiku. X11 fue elegido como un protocolo que ha estado estabilizado y sin cambios desde hace tiempo, mientras que con Wayland aún continúan los experimentos, se requiere crear una implementación propia del servidor y no todas las extensiones necesarias del protocolo han sido finalmente aprobadas.

Al ejecutar aplicaciones más simples a través de la capa en Tcl/Tk y wxWidgets, también se observan problemas no resueltos, pero la apariencia ya es más cercana a lo normal:



Recordamos que el proyecto Haiku fue creado en 2001 como respuesta al cierre del desarrollo del sistema operativo BeOS y se desarrolló bajo el nombre OpenBeOS, pero fue renombrado en 2004 debido a reclamaciones relacionadas con el uso de la marca BeOS. El sistema se basa directamente en las tecnologías de BeOS 5 y está orientado a la compatibilidad binaria con aplicaciones para este sistema. La mayor parte del código fuente del sistema operativo Haiku se distribuye bajo la licencia MIT, excepto por algunas bibliotecas, códecs multimedia y componentes tomados de otros proyectos.
El sistema está orientado a computadoras personales, utiliza su propio núcleo, construido sobre una arquitectura híbrida, optimizada para una alta capacidad de respuesta a las acciones del usuario y un eficiente rendimiento de aplicaciones multihilo. Se utiliza el sistema de archivos OpenBFS, que soporta atributos extendidos de archivos, registro, punteros de 64 bits, soporte para el almacenamiento de metadatos (para cada archivo se pueden guardar atributos en forma de clave=valor, lo que hace que el sistema de archivos sea similar a una base de datos) y índices especiales para acelerar las consultas sobre ellos. Para organizar la estructura de directorios se utilizan árboles tipo 'B+'. Se ha incluido en Haiku el gestor de archivos Tracker y la barra de tareas Deskbar, cuyos códigos fueron liberados tras la finalización del desarrollo de BeOS.
Fuente: opennet.ru
