Louvre 1.0, een bibliotheek voor het ontwikkelen van samengestelde servers op basis van Wayland, is beschikbaar

De ontwikkelaars van het Cuarzo OS-project presenteerden de eerste release van de Louvre-bibliotheek, die componenten levert voor de ontwikkeling van samengestelde servers op basis van het Wayland-protocol. De code is geschreven in C++ en wordt gedistribueerd onder de GPLv3-licentie.

De bibliotheek zorgt voor alle handelingen op laag niveau, inclusief het beheren van grafische buffers, interactie met invoersubsystemen en grafische API's in Linux, en biedt ook kant-en-klare implementaties van verschillende uitbreidingen van het Wayland-protocol. De aanwezigheid van kant-en-klare componenten maakt het mogelijk om niet maandenlang te werken aan het creëren van standaard low-level elementen, maar direct een kant-en-klaar en werkend samengesteld serverframework te ontvangen, dat aan uw wensen kan worden aangepast en aangevuld met de nodige uitgebreide functionaliteit. Indien nodig kan de ontwikkelaar de door de bibliotheek geleverde methoden voor het afhandelen van protocollen, invoergebeurtenissen en weergavegebeurtenissen overschrijven.

Volgens de ontwikkelaars presteert de bibliotheek merkbaar beter dan concurrerende oplossingen. Een voorbeeld van een samengestelde server, louvre-weston-kloon, geschreven met behulp van Louvre, die de functionaliteit van het Weston-project reproduceert, verbruikt in vergelijking met Weston en Sway bijvoorbeeld minder CPU- en GPU-bronnen in de tests, en stelt u ook in staat om consistent hoge FPS te bereiken, zelfs in complexe scenario's.

Louvre 1.0, een bibliotheek voor het ontwikkelen van samengestelde servers op basis van Wayland, is beschikbaar

Belangrijkste kenmerken van het Louvre:

  • Ondersteuning voor multi-GPU-configuraties (Multi-GPU).
  • Ondersteunt meerdere gebruikerssessies (Multi-Session, TTY-switching).
  • Een weergavesysteem dat methoden ondersteunt die zijn gebaseerd op 2D-weergave (LPainter), scènes en weergaven.
  • Mogelijkheid om uw eigen shaders en OpenGL ES 2.0-programma's te gebruiken.
  • Automatisch opnieuw tekenen wordt indien nodig uitgevoerd (alleen als de inhoud van het gebied verandert).
  • Multi-threaded werk, waardoor u hoge FPS kunt bereiken met v-sync ingeschakeld, zelfs bij het renderen van complexe scenario's (single-threaded implementaties hebben problemen met het behouden van hoge FPS vanwege ontbrekende frames die niet kunnen worden verwerkt vanwege vertragingen bij het wachten op synchronisatie met de frame-onderdrukkingspuls (vblank).
  • Ondersteunt enkele, dubbele en drievoudige buffering.
  • Implementatie van een klembord voor tekstgegevens.
  • Wayland en extensies ondersteunen:
    • XDG Shell is een interface voor het maken van en communiceren met oppervlakken als vensters, waarmee u ze over het scherm kunt verplaatsen, minimaliseren, uitbreiden, vergroten of verkleinen, enz.
    • XDG Decoration - weergave van raamdecoraties aan de serverzijde.
    • Presentatietijd - biedt videoweergave.
    • Linux DMA-Buf - delen van meerdere videokaarten met behulp van dma-buf-technologie.
  • Ondersteunt werk in omgevingen gebaseerd op Intel (i915), AMD (amdgpu) en NVIDIA-stuurprogramma's (eigen stuurprogramma of nouveau).
  • Functies die nog niet zijn geïmplementeerd (in de lijst met plannen):
    • Aanraakgebeurtenissen - afhandeling van gebeurtenissen op het aanraakscherm.
    • Aanwijzerbewegingen - bedieningselementen op het aanraakscherm.
    • Viewporter - Hiermee kan de client server-side schalen en bijsnijden van oppervlakteranden uitvoeren.
    • LView-objecten transformeren.
    • XWayland - lancering van X11-applicaties.

Louvre 1.0, een bibliotheek voor het ontwikkelen van samengestelde servers op basis van Wayland, is beschikbaar
Louvre 1.0, een bibliotheek voor het ontwikkelen van samengestelde servers op basis van Wayland, is beschikbaar


Bron: opennet.ru

Voeg een reactie