Haiku OS-ի համար առաջարկված Xlib/X11 համատեղելիության շերտ

Haiku բաց կոդով օպերացիոն համակարգի մշակողները, որը շարունակում է BeOS գաղափարների զարգացումը, պատրաստել են միջշերտի նախնական ներդրում՝ Xlib գրադարանի հետ համատեղելիությունը ապահովելու համար, որը թույլ է տալիս գործարկել X11 հավելվածները Haiku-ում՝ առանց X սերվեր օգտագործելու: Շերտը իրականացվում է Xlib ֆունկցիաների նմանակմամբ՝ կանչերը թարգմանելով Haiku-ի բարձր մակարդակի գրաֆիկական API-ին:

Իր ներկայիս տեսքով շերտը ապահովում է սովորաբար օգտագործվող Xlib API-ների մեծ մասը, սակայն որոշ զանգեր առայժմ մնում են կոճղված: Շերտը թույլ է տալիս կազմել և գործարկել GTK գրադարանի վրա հիմնված հավելվածներ, սակայն Windows-ի տարրերի դասավորության որակը դեռ պետք է բարելավվի: Ստեղնաշարի և մկնիկի սեղմումների միջոցով մշակվող մուտքագրումը դեռ չի բերվել աշխատանքային ձևի (ավելացվել է միայն մկնիկի շարժման իրադարձությունների մշակումը):

Haiku-ում Qt գրադարանի աջակցությունը նախկինում իրականացվել է՝ ստեղծելով Qt-ի բնիկ նավահանգիստ, որն աշխատում է Haiku API-ի վերևում: Սակայն GTK-ի աջակցության համար X11 էմուլյացիայի օգտագործումը դիտվում է որպես նախընտրելի տարբերակ, քանի որ GTK-ի ներքին տարրերն այնքան էլ լավ վերացական չեն, և Haiku-ի համար առանձին GTK backend ստեղծելը կպահանջի զգալի ռեսուրսներ: Որպես ելք՝ դիտարկվել է Haiku-ի համար X11 սերվերի նավահանգիստ ստեղծելու հնարավորությունը, սակայն այս մոտեցումը համարվել է ոչ պատշաճ այն պայմաններում, երբ X11 API-ն կարող է իրականացվել անմիջապես Haiku API-ի վերևում։ X11-ն ընտրվել է որպես երկարաժամկետ կայուն և անփոփոխ արձանագրություն, մինչդեռ Wayland-ի հետ փորձերը դեռ շարունակվում են, պահանջվում է ստեղծել մեր սերվերի ներդրումը, և ոչ բոլոր անհրաժեշտ արձանագրությունների ընդլայնումները վերջնականապես հաստատվել են:

Haiku OS-ի համար առաջարկված Xlib/X11 համատեղելիության շերտ

Tcl / Tk-ի և wxWidgets-ի վրա ավելի պարզ հավելվածների շերտով աշխատելիս նկատվում են նաև խնդիրներ, որոնք դեռևս չեն լուծվել, բայց տեսքն արդեն ավելի մոտ է նորմալին.

Haiku OS-ի համար առաջարկված Xlib/X11 համատեղելիության շերտ
Haiku OS-ի համար առաջարկված Xlib/X11 համատեղելիության շերտ
Haiku OS-ի համար առաջարկված Xlib/X11 համատեղելիության շերտ

Հիշեցնենք, որ Haiku նախագիծը ստեղծվել է 2001 թվականին՝ որպես արձագանք BeOS OS-ի զարգացման սահմանափակմանը և մշակվել OpenBeOS անունով, սակայն վերանվանվել է 2004 թվականին՝ անվանման մեջ BeOS ապրանքանիշի օգտագործման հետ կապված պնդումների պատճառով: Համակարգն ուղղակիորեն հիմնված է BeOS 5 տեխնոլոգիաների վրա և ուղղված է այս ՕՀ-ի հավելվածների հետ երկուական համատեղելիությանը: Haiku OS-ի մեծ մասի սկզբնական կոդը բաշխվում է MIT-ի անվճար լիցենզիայի ներքո, բացառությամբ որոշ գրադարանների, մեդիա կոդեկների և այլ նախագծերից փոխառված բաղադրիչների:

Համակարգը կենտրոնացած է անհատական ​​համակարգիչների վրա, օգտագործում է իր սեփական միջուկը՝ կառուցված հիբրիդային ճարտարապետության հիման վրա, օպտիմիզացված օգտատերերի գործողություններին բարձր արձագանքելու և բազմաշերտ հավելվածների արդյունավետ կատարման համար: OpenBFS-ն օգտագործվում է որպես ֆայլային համակարգ, որն աջակցում է ընդլայնված ֆայլերի ատրիբուտներ, ամսագրում, 64-բիթանոց ցուցիչներ, մետա պիտակներ պահելու աջակցություն (յուրաքանչյուր ֆայլի համար կարող եք ատրիբուտները պահել key=value ձևով, որը ֆայլային համակարգը դարձնում է նման: տվյալների բազա) և հատուկ ինդեքսներ՝ նրանց կողմից որոնումն արագացնելու համար: B+ ծառերը օգտագործվում են գրացուցակի կառուցվածքը կազմակերպելու համար: BeOS կոդից Haiku-ն ներառում է Tracker ֆայլերի կառավարիչը և Deskbar-ը, որոնք բաց կոդով են օգտագործվել BeOS-ի դադարեցումից հետո:

Source: opennet.ru

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