Xlib/X11-compatibiliteitslaag aangeboden voor Haiku OS

De ontwikkelaars van het open besturingssysteem Haiku, dat de ontwikkeling van BeOS-ideeën voortzet, hebben een eerste implementatie van de laag voorbereid om compatibiliteit met de Xlib-bibliotheek te garanderen, waardoor je X11-applicaties in Haiku kunt draaien zonder een X-server te gebruiken. De laag wordt geïmplementeerd via emulatie van Xlib-functies door oproepen te vertalen naar de grafische API op hoog niveau van Haiku.

In zijn huidige vorm biedt de laag de meeste veelgebruikte Xlib-API's, maar sommige aanroepen blijven vervangen door stubs. Met de laag kunt u applicaties compileren en uitvoeren op basis van de GTK-bibliotheek, maar de kwaliteit van de lay-out van elementen in vensters behoeft nog steeds verbetering. Het verwerken van invoer met behulp van het toetsenbord en de muisklikken is nog niet in een werkvorm gebracht (alleen de verwerking van de muisbewegingsgebeurtenis is toegevoegd).

Ondersteuning voor de Qt-bibliotheek in Haiku werd eerder geïmplementeerd door het creëren van een native Qt-poort die bovenop de Haiku API draait. Maar voor GTK-ondersteuning wordt het gebruik van X11-emulatie als een betere optie gezien, omdat de interne onderdelen van GTK niet zo goed zijn geabstraheerd en het creëren van een aparte GTK-backend voor Haiku aanzienlijke middelen zou vergen. Als oplossing werd de mogelijkheid overwogen om een ​​poort van de X11-server voor Haiku te creëren, maar deze aanpak werd als ongepast beschouwd in omstandigheden waarin de X11 API rechtstreeks bovenop de Haiku API kon worden geïmplementeerd. X11 werd gekozen als een langdurig gestabiliseerd en onveranderlijk protocol, terwijl experimenten met Wayland nog steeds gaande zijn, het creëren van een eigen serverimplementatie vereist is en niet alle noodzakelijke protocoluitbreidingen definitief zijn goedgekeurd.

Xlib/X11-compatibiliteitslaag aangeboden voor Haiku OS

Bij het uitvoeren van eenvoudigere applicaties op Tcl/Tk en wxWidgets door de laag worden ook problemen opgemerkt die nog niet zijn opgelost, maar het uiterlijk is al dichter bij normaal:

Xlib/X11-compatibiliteitslaag aangeboden voor Haiku OS
Xlib/X11-compatibiliteitslaag aangeboden voor Haiku OS
Xlib/X11-compatibiliteitslaag aangeboden voor Haiku OS

Laten we niet vergeten dat het Haiku-project in 2001 werd opgericht als reactie op de inperking van de BeOS OS-ontwikkeling en werd ontwikkeld onder de naam OpenBeOS, maar in 2004 werd hernoemd vanwege claims met betrekking tot het gebruik van het BeOS-handelsmerk in de naam. Het systeem is rechtstreeks gebaseerd op BeOS 5-technologieën en is gericht op binaire compatibiliteit met applicaties voor dit besturingssysteem. De broncode voor het grootste deel van het Haiku-besturingssysteem wordt gedistribueerd onder de gratis MIT-licentie, met uitzondering van enkele bibliotheken, mediacodecs en componenten die zijn geleend van andere projecten.

Het systeem is gericht op personal computers en gebruikt een eigen kernel, gebouwd op een hybride architectuur, geoptimaliseerd voor een hoge responsiviteit op gebruikersacties en efficiënte uitvoering van multi-threaded applicaties. OpenBFS wordt gebruikt als bestandssysteem, dat uitgebreide bestandskenmerken, logboekregistratie, 64-bit pointers en ondersteuning voor het opslaan van metatags ondersteunt (voor elk bestand kunt u attributen opslaan in de vorm sleutel=waarde, waardoor het bestandssysteem lijkt op een database ) en speciale indexen om het ophalen ervan te versnellen. “B+-bomen” worden gebruikt om de directorystructuur te organiseren. Van de BeOS-code omvat Haiku de Tracker-bestandsbeheerder en Deskbar, die beide open source waren nadat BeOS de ontwikkeling stopte.

Bron: opennet.ru

Voeg een reactie