Capa de compatibilitat Xlib/X11 proposada per a Haiku OS

Els desenvolupadors del sistema operatiu obert Haiku, que continua el desenvolupament d'idees BeOS, han preparat una implementació inicial de la capa per garantir la compatibilitat amb la biblioteca Xlib, permetent executar aplicacions X11 a Haiku sense utilitzar un servidor X. La capa s'implementa mitjançant l'emulació de funcions Xlib mitjançant la traducció de trucades a l'API de gràfics Haiku d'alt nivell.

En la seva forma actual, la capa proporciona la majoria de les API Xlib que s'utilitzen habitualment, però algunes trucades romanen substituïdes per talons. La capa us permet compilar i executar aplicacions basades en la biblioteca GTK, però la qualitat de la disposició dels elements a les finestres encara requereix una millora. El processament de l'entrada mitjançant els clics del teclat i el ratolí encara no s'ha portat a un formulari de treball (només s'ha afegit el processament de l'esdeveniment de moviment del ratolí).

El suport per a la biblioteca Qt a Haiku es va implementar prèviament mitjançant la creació d'un port Qt natiu que s'executa a la part superior de l'API Haiku. Però per al suport de GTK, l'ús de l'emulació X11 es considera una millor opció, ja que els elements interns de GTK no estan tan ben resumits i la creació d'un backend GTK independent per a Haiku requeriria recursos importants. Com a solució, es va considerar la possibilitat de crear un port del servidor X11 per a Haiku, però aquest enfocament es va considerar inadequat en condicions en què l'API X11 es podia implementar directament a sobre de l'API Haiku. X11 va ser escollit com un protocol estabilitzat i inalterable durant molt de temps, mentre que els experiments amb Wayland encara estan en curs, cal crear la vostra pròpia implementació de servidor i no s'han aprovat finalment totes les extensions de protocol necessàries.

Capa de compatibilitat Xlib/X11 proposada per a Haiku OS

Quan s'executen aplicacions més senzilles a Tcl/Tk i wxWidgets a través de la capa, també s'observen problemes que encara no s'han resolt, però l'aparença ja s'aproxima a la normalitat:

Capa de compatibilitat Xlib/X11 proposada per a Haiku OS
Capa de compatibilitat Xlib/X11 proposada per a Haiku OS
Capa de compatibilitat Xlib/X11 proposada per a Haiku OS

Recordem que el projecte Haiku es va crear l'any 2001 com a reacció a la limitació del desenvolupament del sistema operatiu BeOS i es va desenvolupar amb el nom d'OpenBeOS, però va ser rebatejat el 2004 a causa de les afirmacions relacionades amb l'ús de la marca BeOS al nom. El sistema es basa directament en tecnologies BeOS 5 i té com a objectiu la compatibilitat binària amb les aplicacions d'aquest sistema operatiu. El codi font de la majoria del sistema operatiu Haiku es distribueix sota la llicència gratuïta del MIT, amb l'excepció d'algunes biblioteques, còdecs multimèdia i components manllevats d'altres projectes.

El sistema està dirigit a ordinadors personals i utilitza el seu propi nucli, construït sobre una arquitectura híbrida, optimitzat per a una gran capacitat de resposta a les accions de l'usuari i una execució eficient d'aplicacions multiprocés. OpenBFS s'utilitza com a sistema de fitxers, que admet atributs de fitxer ampliats, registre, punters de 64 bits, suport per emmagatzemar metaetiquetes (per a cada fitxer, els atributs es poden emmagatzemar en la forma clau=valor, cosa que fa que el sistema de fitxers sigui similar a un base de dades) i índexs especials per accelerar-ne la recuperació. Els "arbres B+" s'utilitzen per organitzar l'estructura de directoris. Des del codi BeOS, Haiku inclou el gestor de fitxers Tracker i Deskbar, tots dos de codi obert després que BeOS va deixar de desenvolupar-se.

Font: opennet.ru

Afegeix comentari