Release av skrivbordsmotorn Arcan 0.6.1

Efter ett års utveckling är releasen av skrivbordsmotorn Arcan 0.6.1 tillgänglig, som kombinerar en displayserver, ett multimediaramverk och en spelmotor för bearbetning av 3D-grafik. Arcan kan användas för att skapa en mängd olika grafiska system, från användargränssnitt för inbyggda applikationer till fristående skrivbordsmiljöer. I synnerhet utvecklas Safespaces tredimensionella skrivbord för virtuell verklighetssystem och skrivbordsmiljön Durden på basis av Arcan. Projektkoden är skriven i C och distribueras under BSD-licensen (vissa komponenter är under GPLv2+ och LGPL).

Den nya utgåvan inkluderar utvecklingen som ackumulerats under året, huvudsakligen fokuserad på utvecklingen av ett delsystem för åtkomst till skrivbordet över nätverket. I allmänhet presenteras planen för att förbereda den första betydande utgåvan 1.0: I nästa gren 0.7 förväntas arbete med att utöka ljudsubsystemet, förbättra kompatibiliteten och utveckla verktyg för 3D-grafik. Branch 0.8 kommer att fokusera på optimering och prestanda, och 0.9 kommer att fokusera på säkerhet.

Bland de mest märkbara förändringarna i version Arcan 0.6.1 är moderniseringen av arcan-wayland-skärmservern, som använder Wayland-protokollet, som implementerar ett lager för att använda EGL och möjliggör dma-buf-stöd som standard. Xarcan X-servern har förbättrad hantering av GPU-switchar och lagt till stöd för urklipp och hårdvaruacceleration av markörrendering. Förbättrat stöd för skärmar med varierande innehållsuppdateringsfrekvens. Arbete har gjorts i inmatningssystemet för att minska förseningarna.

Många interna förändringar har gjorts för att förbättra synkroniseringen och förbättra effektiviteten i händelseköhantering. Utvecklingen av den grafiska servern "arcan-net" för fjärrarbete med skrivbordet över nätverket och A12-protokollet som används i denna server, utvecklat för att ersätta SSH/VNC/RDP/X11, har fortsatt. Uppdaterade bindningar för utveckling av komponenter i Lua.

Pipeworld-konceptet har föreslagits, vilket gör att du kan omdirigera dataflöden mellan fönster, länka data och hanterare i olika fönster, liknande celler i kalkylblad, vilket bildar ett blandat arbetsflöde som kombinerar grafiska gränssnitt och konsolgränssnitt (du kan till exempel omdirigera utdata från ett fönster till ett skal som körs i terminal -hanteraren och använd resultatet i ett annat fönster).

Låt oss påminna dig om att Arcan inte är knuten till ett separat grafikundersystem och kan fungera ovanpå olika systemmiljöer (BSD, Linux, macOS, Windows) med plug-in-backends. Det är till exempel möjligt att köra ovanpå Xorg, egl-dri, libsdl och AGP (GL/GLES). Arcan displayserver kan köra klientapplikationer baserade på X, Wayland och SDL2. De nyckelkriterier som används i utformningen av Arcan API är säkerhet, prestanda och felsökningsbarhet. För att förenkla utvecklingen av gränssnitt föreslås det att språket Lua används.

Arcana funktioner:

  • En kombination av roller för sammansatt server, displayserver och fönsterhanterare.
  • Möjligheten att arbeta i ett separat läge, där applikationen fungerar som en självförsörjande länk.
  • Inbyggt multimediaramverk som tillhandahåller verktyg för att arbeta med grafik, animering, bearbeta strömmande video och ljud, ladda bilder och arbeta med videoinspelningsenheter.
  • En multiprocessmodell för att ansluta processorer av dynamiska datakällor - från videoströmmar till utdata från enskilda program.
  • Stel privilegiedelningsmodell. Motorkomponenter bryts ner i små oprivilegierade processer som kommunicerar genom gränssnittet för shmifs delade minne;
  • Inbyggda kraschövervaknings- och analysverktyg, inklusive motorn som kan serialisera det interna tillståndet för Lua-skript för att förenkla felsökningen;
  • Fallbacks-funktion, som i händelse av fel på grund av ett programfel kan starta en reservapplikation som bibehåller samma externa datakällor och anslutningar;
  • Avancerade delningsverktyg som kan användas för att spela in eller sända specifika delmängder av ljud- och videokällor samtidigt som skrivbordsdelning implementeras.

Dessutom kan det noteras att en ny version av Durden 0.7-skrivbordet förbereds för användning med Arcan. I version 0.7 kommer stöd för vertikal placering av fönstrets titel och statusfält att visas, och ett verktyg för röstvägledning (text till tal) kommer att läggas till. Durden stöder både ett sida vid sida med fullständiga tangentbordskontroller och ett fritt flytande läge för att visa fönster på skärmen. Alla inställningar, inklusive inmatningsmetoder, typsnitt och visuella effekter, kan ändras i farten, utan att behöva ladda om konfigurationen.

Det är möjligt att konfigurera separat beteende för varje fönster och använda ett oberoende urklipp som är bundet till fönstret. Stöder arbete på system med flera bildskärmar med olika DPI:er. Det är möjligt att visa applikationsmenyn i panelen (global meny) eller placera menyn i fönstrets titel. Widgetar kan placeras på skrivbordet. Det finns en inbyggd möjlighet att spela in åtgärder på skrivbordet och i enskilda fönster. Undersystemet för ingångskontroll stöder ändrade tangentbordslayouter och möjligheten att arbeta med avancerade enheter som spelkonsoler.

Källa: opennet.ru

Lägg en kommentar