Xlib/X11 suderinamumo sluoksnis siūlomas Haiku OS

Разработчики открытой операционной системы 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 suderinamumo sluoksnis siūlomas Haiku OS

При запуске через прослойку более простых приложений на Tcl/Tk и wxWidgets также отмечаются ещё не решённые проблемы, но внешний вид уже более близок к нормальному:

Xlib/X11 suderinamumo sluoksnis siūlomas Haiku OS
Xlib/X11 suderinamumo sluoksnis siūlomas Haiku OS
Xlib/X11 suderinamumo sluoksnis siūlomas Haiku OS

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

Sistema skirta asmeniniams kompiuteriams ir naudoja savo branduolį, sukurtą hibridinės architektūros pagrindu, optimizuotą taip, kad reaguotų į vartotojo veiksmus ir efektyviai vykdytų daugiagijas programas. OpenBFS naudojama kaip failų sistema, kuri palaiko išplėstinius failo atributus, registravimą, 64 bitų rodykles, metažymų saugojimo palaikymą (kiekvieno failo atributai gali būti saugomi forma key=value, todėl failų sistema yra panaši į duomenų bazę) ir specialius indeksus, kad paspartintų jų paiešką. „B+ medžiai“ naudojami katalogų struktūrai organizuoti. Iš BeOS kodo „Haiku“ apima „Tracker“ failų tvarkyklę ir „Deskbar“, kurios abi buvo atvirojo kodo, kai „BeOS“ nustojo kurti.

Šaltinis: opennet.ru

Добавить комментарий