Efter ett Ärs utveckling har den desktop-motorn Arcan 0.7 slÀppts, vilket kombinerar en displayserver, ett multimedia-ramverk och en spelmotor för hantering av 3D-grafik. Arcan kan anvÀndas för att skapa olika grafiska system - frÄn anvÀndargrÀnssnitt för inbÀddade applikationer till fristÄende desktop-miljöer. Bland annat har den tre-dimensionella skrivbordet Safespaces för virtuella verklighetssystem och desktop-miljön Durden byggts pÄ Arcan. Projektets kod Àr skriven i C och distribueras under BSD-licens (vissa komponenter under GPLv2+ och LGPL).
Arcan Àr inte knuten till specifika grafiska undersystem och kan fungera ovanpÄ olika systemmiljöer (BSD, Linux, macOS, Windows), med hjÀlp av modulÀra backend-lösningar. Till exempel finns det möjlighet att köra ovanpÄ Xorg, egl-dri, libsdl och AGP (GL/GLES). Under kontroll av displayservern servern Arcan kan klientapplikationer baserade pÄ X11, Wayland och SDL2 köras. Som nyckelkriterier som tillÀmpas vid designen av Arcan API nÀmns sÀkerhet, prestanda och anvÀndbarhet för debug. För att förenkla utvecklingen av grÀnssnitt rekommenderas anvÀndning av Lua-sprÄket.
Funktioner i Arcan:
- Kombination av funktionerna i en kompositserver, displayserver och fönsterhanterare.
- Stöd för att arbeta i ett isolerat lÀge dÀr applikationen Àr en fristÄende enhet.
- Inbyggt multimedia-ramverk som tillhandahÄller verktyg för grafikkontroll, bearbetning av strömmande video och ljud, animation, bildladdning och arbete med videoinspelningsenheter.
- Multiprocessmodell för anslutning av hanterare för datakÀllor (till exempel videoströmmar och utmatning av körda program).
- Strikt modell för priviligierad separation - motorkomponenter bryts ner i smÄ, icke-privilegierade processer som kommunicerar genom den delade minnesgrÀnssnittet Shmif.
- Inbyggda medel för övervakning och analys av kraschar, till exempel kan motorn serialisera det inre tillstÄndet hos Lua-skript för att förenkla debug.
- Möjlighet för fallback till en annan hanterare - vid ett fel pÄ grund av ett programfel kan motorn lansera en reservapplikation och behÄlla samma externa datakÀllor och kopplingar.
- Verktyg för fjÀrrÄtkomst och delning av skrivbord. NÀtverksÄtkomst ger grafisk server «arcan-net», som implementerar P2P-protokollet A12, kombinerar funktionerna hos teknologier sÄsom mDNS (lokala tjÀnster), SSH (interaktivt textgrÀnssnitt), X11/VNC/RDP (interaktiv grafisk miljö), RTSP (strömning av multimedia) och HTTP (hÀmtning av resurser och synkronisering av tillstÄnd).
I den nya versionen har arbetet med det nÀtverksbaserade systemet och protokollet A12 fortsatt. Möjligheterna för katalogservrarna har utökats, vilket utvecklats för att koppla samman komponenter spridda över nÀtverket, exempelvis kan det anvÀndas för att ansluta skrivbordet till externa enheter som lagringssystem, kameror och skÀrmar. I X-servern Xarcan har stöd för att starta externa fönsterhanterare lagts till. Vid denna typ av start tar Xarcan pÄ sig lÄg nivÄ-funktioner för skÀrmen, sÀkerhet och konfigurationshantering, medan fönsterhanteraren ansvarar för hantering och dekoration av fönster (video med exempel).

Möjligheterna för Lash, en miljö för att köra skript i Lua-sprÄket, samt den kommandoradsgrÀnssnittet Cat9 som bygger pÄ den, har utökats. Det ger möjligheten att binda kommandokörning till separata celler, som bildar en liknelse till ett kalkylblad (video med demonstration). Den föreslagna konceptet möjliggör omdirigering av datastreams mellan fönster, som kopplar samman data och hanterare i olika fönster, liknande hur celler fungerar i kalkylblad (till exempel kan du omdirigera utdata frÄn ett fönster till en körande shell-hanterare i terminalen och anvÀnda resultatet i ett annat fönster).

KĂ€lla: opennet.ru
