Cuarzo OS նախագծի մշակողները ներկայացրել են Լուվրի գրադարանի առաջին թողարկումը, որը բաղադրիչներ է տրամադրում Wayland արձանագրության հիման վրա կոմպոզիտային սերվերների մշակման համար։ Կոդը գրված է C++-ով և տարածվում է GPLv3 լիցենզիայի ներքո:
Գրադարանը հոգ է տանում ցածր մակարդակի բոլոր գործողությունների մասին, ներառյալ գրաֆիկական բուֆերների կառավարումը, մուտքային ենթահամակարգերի և գրաֆիկական API-ների հետ փոխազդեցությունը Linux-ում, ինչպես նաև առաջարկում է Wayland արձանագրության տարբեր ընդլայնումների պատրաստի իրականացումներ: Պատրաստի բաղադրիչների առկայությունը հնարավորություն է տալիս ամիսներ շարունակ չծախսել ստանդարտ ցածր մակարդակի տարրերի ստեղծման վրա, այլ անմիջապես ստանալ պատրաստի և աշխատող կոմպոզիտային սերվերի շրջանակ, որը կարող է հարմարեցվել ձեր կարիքներին և համալրվել անհրաժեշտով: ընդլայնված ֆունկցիոնալություն: Անհրաժեշտության դեպքում, մշակողը կարող է անտեսել գրադարանի կողմից տրամադրված մեթոդները՝ արձանագրությունները, մուտքագրման իրադարձությունները և իրադարձությունները ցուցադրելու համար:
Ըստ մշակողների՝ գրադարանն իր կատարողականությամբ նկատելիորեն գերազանցում է մրցակցային լուծումներին: Օրինակ, կոմպոզիտային սերվերի օրինակ՝ louvre-weston-clone, որը գրված է Լուվրի միջոցով, որը վերարտադրում է Weston նախագծի ֆունկցիոնալությունը՝ համեմատած Weston-ի և Sway-ի հետ, թեստերում ավելի քիչ CPU և GPU ռեսուրսներ է սպառում, ինչպես նաև թույլ է տալիս Ձեզ։ հետևողականորեն բարձր FPS-ի հասնելու համար, նույնիսկ բարդ սցենարներում:
Լուվրի հիմնական առանձնահատկությունները.
- Աջակցություն բազմակի GPU կոնֆիգուրացիաներին (Multi-GPU):
- Աջակցում է օգտատերերի մի քանի նիստերին (Multi-Session, TTY switching):
- Վերարտադրման համակարգ, որն աջակցում է 2D ցուցադրման (LPainter), տեսարանների և դիտումների վրա հիմնված մեթոդներին:
- Ձեր սեփական շեյդերները և OpenGL ES 2.0 ծրագրերն օգտագործելու ունակություն:
- Ավտոմատ վերագծագրումը կատարվում է ըստ անհրաժեշտության (միայն այն դեպքում, երբ տարածքի բովանդակությունը փոխվում է):
- Բազմաթելային աշխատանք, որը թույլ է տալիս հասնել բարձր FPS՝ միացված v-sync-ով նույնիսկ բարդ սցենարներ ներկայացնելիս (մեկ թելերով իրականացումները խնդիրներ ունեն բարձր FPS-ի պահպանման հետ կապված բացակայող շրջանակների պատճառով, որոնք չեն կարող մշակվել շրջանակի փակման զարկերակի հետ համաժամացման սպասման ուշացումների պատճառով: (vblank).
- Աջակցում է մեկ, կրկնակի և եռակի բուֆերացմանը:
- Տեքստային տվյալների համար clipboard-ի ներդրում:
- Wayland-ի և ընդարձակման աջակցություն.
- XDG Shell-ը ինտերֆեյս է մակերեսների՝ որպես պատուհանների ստեղծման և փոխազդեցության համար, որը թույլ է տալիս դրանք տեղափոխել էկրանով, նվազագույնի հասցնել, ընդլայնել, չափափոխել և այլն:
- XDG Decoration - պատուհանի դեկորացիաների մատուցում սերվերի կողմից:
- Ներկայացման ժամանակ - ապահովում է տեսանյութի ցուցադրում:
- Linux DMA-Buf - մի քանի վիդեո քարտերի փոխանակում dma-buf տեխնոլոգիայի միջոցով:
- Աջակցում է աշխատել Intel (i915), AMD (amdgpu) և NVIDIA վարորդների վրա հիմնված միջավայրերում (սեփական վարորդ կամ nouveau):
- Առանձնահատկություններ, որոնք դեռ չեն իրականացվել (պլանների ցանկում).
- Touch Events - սենսորային էկրանով իրադարձությունների մշակում:
- Ցուցանիշի ժեստեր - սենսորային էկրանի կառավարում:
- Viewporter - Հաճախորդին թույլ է տալիս կատարել սերվերի կողմից մասշտաբում և մակերեսի եզրերի կտրում:
- LView օբյեկտների փոխակերպում:
- XWayland - գործարկում է X11 հավելվածները:
Source: opennet.ru