Rilascio del motore desktop Arcan 0.7

Dopo un anno di sviluppo è stato rilasciato il motore desktop Arcan 0.7, che combina un server di visualizzazione, un framework multimediale e un motore di gioco per l'elaborazione della grafica 3D. Arcan può essere utilizzato per creare una varietà di sistemi grafici, dalle interfacce utente per applicazioni integrate agli ambienti desktop autonomi. Sulla base di Arcan sono costruiti tra l'altro il desktop tridimensionale Safespaces per sistemi di realtà virtuale e l'ambiente desktop Durden. Il codice del progetto è scritto in C ed è distribuito sotto licenza BSD (alcuni componenti sono sotto GPLv2+ e LGPL).

Arcan non è vincolato a specifici sottosistemi grafici e può essere eseguito su vari ambienti di sistema (BSD, Linux, macOS, Windows) utilizzando backend plug-in. Ad esempio, può essere eseguito su Xorg, egl-dri, libsdl e AGP (GL/GLES). Sotto il controllo del display server Arcan è in grado di eseguire applicazioni client basate su X11, Wayland e SDL2. I criteri chiave utilizzati nella progettazione dell'API di Arcan includono sicurezza, prestazioni e debuggabilità. Per semplificare lo sviluppo dell'interfaccia, si propone l'utilizzo del linguaggio Lua.

Caratteristiche degli Arcani:

  • Combinazione di funzionalità di server composito, server di visualizzazione e gestore di finestre.
  • Supporto per lavorare in modalità autonoma, in cui l'applicazione è un'unità autosufficiente.
  • Framework multimediale integrato che fornisce strumenti per lavorare con la grafica, elaborare streaming video e audio, animazioni, caricare immagini e lavorare con dispositivi di acquisizione video.
  • Modello multiprocesso per il collegamento di processori di origini dati (ad esempio flussi video e output di programmi in esecuzione).
  • Modello rigoroso di separazione dei privilegi: i componenti del motore sono divisi in piccoli processi non privilegiati che interagiscono attraverso l'interfaccia di memoria condivisa Shmif.
  • Strumenti integrati per il monitoraggio e l'analisi degli arresti anomali dei processi, ad esempio, il motore può serializzare lo stato interno degli script Lua per semplificare il debug.
  • La possibilità di eseguire il rollback (Fallback) su un altro gestore: in caso di guasto dovuto a un errore nel programma, il motore può avviare un'applicazione di fallback, mantenendo le stesse origini dati e connessioni esterne.
  • Strumenti per la condivisione e la connessione remota al desktop. L'accesso alla rete è fornito dal server grafico arcan-net, che implementa il protocollo A2 P12P, combinando le capacità di tecnologie come mDNS (definizione del servizio locale), SSH (shell di testo interattivo), X11/VNC/RDP (shell grafica interattiva) , RTSP (streaming multimediale) e HTTP (caricamento delle risorse e sincronizzazione dello stato).

La nuova versione continua a lavorare sul sottosistema di rete e sul protocollo A12. Sono state ampliate le capacità del server di directory, che viene sviluppato per collegare insieme componenti distribuiti in rete in un unico stack, può essere utilizzato, ad esempio, per collegare dispositivi esterni come dispositivi di archiviazione, fotocamere e schermi al desktop; Il server Xarcan X ha aggiunto il supporto per l'esecuzione di gestori di finestre di terze parti. Quando viene lanciato in questo modo, Xarcan assume il controllo delle funzioni di visualizzazione di basso livello, sicurezza e gestione della configurazione, mentre il gestore delle finestre è responsabile dell'elaborazione e della decorazione delle finestre (video di esempio).

 Rilascio del motore desktop Arcan 0.7

Sono state ampliate le capacità di Lash, un ambiente per l'esecuzione di script in linguaggio Lua, e della shell di comandi Cat9 costruita sulla sua base, fornendo la possibilità di associare l'esecuzione dei comandi a singole celle che formano qualcosa come un foglio di calcolo (video con dimostrazione ). Il concetto proposto consente di reindirizzare i flussi di dati tra finestre, collegando dati e gestori in finestre diverse, in modo simile alle celle nei fogli di calcolo (ad esempio, è possibile reindirizzare l'output da una finestra a un gestore di shell in esecuzione nel terminale e utilizzare il risultato in un'altra finestra).

 Rilascio del motore desktop Arcan 0.7


Fonte: opennet.ru

Aggiungi un commento