Предложен е слой на съвместимост с Xlib/X11 за операционната система Haiku

Разработчиците на откритата операционна система Haiku, която продължава да развива идеите на BeOS, подготвиха начална реализация на прослойка за осигуряване на съвместимост с библиотеката Xlib, която позволява стартиране на X11-приложения в Haiku без използване на X-сървър. Прослойката е реализирана чрез емуляция на функциите на Xlib, като се трансформират повикванията в високопрофилен графичен API на Haiku.

В текущия си вид прослойката предоставя голяма част от обичайно използваните програмни интерфейси Xlib, но някои повиквания все още са заменени с модули. Прослойката позволява компилиране и стартиране на приложения, базирани на библиотеката GTK, но качеството на подреждането на елементите в прозорците все още изисква допълнителна работа. Обработката на входа чрез клавиатурата и кликванията на мишката не е доведена до работещ вид (досега е добавена само обработка на събитията за движение на мишката).

Поддръжката на библиотеката Qt в Haiku преди беше реализирана чрез създаване на роден порт на Qt, работещ върху API на Haiku. Но за поддръжка на GTK, използването на емуляция на X11 се счита за по-предпочитан вариант, тъй като вътрешностите на GTK не са толкова добре абстрахирани и създаването на отделен GTK-бекенд за Haiku ще изисква значителни ресурси. Като изход се разглеждаше възможността за създаване на порт на X11-сървър за Haiku, но този подход беше признат за нецелесъобразен при условие, че API X11 може да бъде реализиран директно върху API на Haiku. X11 беше избран, тъй като е отдавна стабилизиран и неизменен протокол, докато с Wayland все още продължават експерименти, изисква се създаване на собствена реализация на сървър и не всички необходими разширения на протокола са окончателно утвърдени.

Предложен е слой на съвместимост с Xlib/X11 за операционната система Haiku

При стартиране на по-прости приложения на Tcl/Tk и wxWidgets през прослойката също се отбелязват нерешени проблеми, но външният вид вече е по-близък до нормалното.

Предложен е слой на съвместимост с Xlib/X11 за операционната система Haiku
Предложен е слой на съвместимост с Xlib/X11 за операционната система Haiku
Предложен е слой на съвместимост с Xlib/X11 за операционната система Haiku

Напомняме, че проектът Haiku е създаден през 2001 година като реакция на спирането на разработката на ОС BeOS и е развиван под името OpenBeOS, но е преименуван през 2004 година поради претенции, свързани с използването на търговската марка BeOS в името си. Системата е директно базирана на технологиите на BeOS 5 и е насочена към бинарна съвместимост с приложенията за тази ОС. Изходните кодове на по-голямата част от ОС Haiku се разпространяват под свободна лицензия MIT, с изключение на някои библиотеки, медийни кодеци и компоненти, заимствани от други проекти.

Системата е ориентирана към персонални компютри, използва собствено ядро, построено на основата на хибридна архитектура, оптимизирано за висока отзивчивост на действията на потребителя и ефективно изпълнение на многопоточни приложения. Като файлова система се използва OpenBFS, която поддържа разширени атрибути на файловете, журнализиране, 64-битови указатели, поддръжка на съхранение на мета етикети (за всеки файл могат да се запазят атрибути във формата ключ=стойност, което прави файловата система подобна на база данни) и специални индекси за ускоряване на извличането по тях. За организация на структурата на директориите се използват «B+ tree» дървета. От кода на BeOS в състава на Haiku е включен файловият мениджър Tracker и панелът Deskbar, изходните кодове на които бяха отворени след прекратяване на развитието на BeOS.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster