Nakon godinu dana razvoja, objavljeno je izdanje Arcan 0.6.2 desktop engine-a koji kombinira display server, multimedijski okvir i game engine za obradu 3D grafike. Arcan se može koristiti za stvaranje raznih grafičkih sustava, od korisničkih sučelja za ugrađene aplikacije do samostalnih desktop okruženja. Uključujući i na temelju Arcana, razvija se trodimenzionalna radna površina Safespaces za sustave virtualne stvarnosti i Durden desktop okruženje. Kôd projekta napisan je u C-u i distribuira se pod BSD licencom (neke komponente pod GPLv2+ i LGPL).
Novo izdanje nastavlja razvoj alata za daljinski rad sa radnom površinom preko mreže. Pristup mreži omogućuje arcan-net grafički poslužitelj koji implementira A12 protokol koji objedinjuje mogućnosti tehnologija kao što su mDNS (local service definition), SSH (interactive text shell), X11/VNC/RDP (interactive graphical shell), XXNUMX/VNC/RDP (interactive graphical shell), RTSP (multimedijski streaming) i HTTP (preuzimanje izvora i sinkronizacija stanja).
Arcan nije vezan za zasebni grafički podsustav i može raditi na vrhu različitih sistemskih okruženja (BSD, Linux, macOS, Windows) koristeći pluggable backendove. Na primjer, moguće je pokrenuti na vrhu Xorg, egl-dri, libsdl i AGP (GL/GLES). Arcan Display Server može pokretati X, Wayland i SDL2 klijentske aplikacije. Ključni kriteriji korišteni u dizajnu Arcan API-ja su sigurnost, performanse i mogućnost otklanjanja pogrešaka. Kako bi se pojednostavio razvoj sučelja, predlaže se korištenje jezika Lua.
Arcane značajke:
- Kombinacija uloga kompozitnog poslužitelja, poslužitelja za prikaz i upravitelja prozorima.
- Mogućnost rada u samostalnom načinu rada, u kojem aplikacija djeluje kao samodostatna veza.
- Ugrađeni multimedijski okvir koji pruža alate za rad s grafikom, animacijom, obradu strujanja videa i zvuka, učitavanje slika, rad s uređajima za snimanje videa.
- Višeprocesni model za povezivanje rukovatelja dinamičkim izvorima podataka - od video streamova do izlaza pojedinačnih programa.
- Kruti model razdvajanja privilegija. Komponente motora rastavljene su u male, neprivilegirane procese koji komuniciraju kroz shmif dijeljeno memorijsko sučelje;
- Ugrađeni alati za praćenje i analizu rušenja, uključujući motor, mogu serijalizirati unutarnje stanje Lua skripti kako bi se pojednostavilo uklanjanje pogrešaka;
- Rezervna funkcija, koja u slučaju kvara zbog programske pogreške može pokrenuti backup aplikaciju uz zadržavanje istih vanjskih izvora podataka i veza;
- Napredni alati za dijeljenje koji se mogu koristiti za snimanje ili emitiranje odabranih podskupa audio i video izvora tijekom implementacije dijeljenja radne površine.
Izvor: opennet.ru