Una delle cose affascinanti di Linux è la capacità di vedere diversi componenti di sistema. Uno dei componenti più importanti di un sistema Linux è l'ambiente desktop. Ti consente di ottenere il massimo dal tuo computer, fornendo diverse funzioni come l'accesso, l'avvio di app, la visualizzazione di widget come il pannello e così via.
Quindi, è un software complicato.
Qui chiariremo parte di questa complessità spiegando tre dei componenti più importanti di un ambiente desktop: il server di visualizzazione, il gestore di finestre e il gestore di accesso.
1. Il server di visualizzazione
Il server di visualizzazione si trova alla base dell'ambiente desktop. Il compito principale del server di visualizzazione è gestire le funzioni di disegno di basso livello, il che significa che disegna direttamente sullo schermo. Altri programmi grafici non disegnano direttamente sullo schermo; invece inviano richieste di disegno al server di visualizzazione, che disegna sullo schermo per loro.
Per dirla semplicemente, il server di visualizzazione fornisce l'accesso ai pixel delle applicazioni. Quindi tutte le applicazioni che richiedono l'accesso ai pixel parleranno con il server di visualizzazione. Ad esempio, se un'app desidera creare una finestra, richiede al server di visualizzazione di creare quella finestra. Un altro esempio di applicazioni che richiedono l'accesso ai pixel sono i registratori dello schermo, che ottengono i dati dello schermo da un'API fornita dal server di visualizzazione.
Qualsiasi applicazione che dipende dal server di visualizzazione è detta client. Il server di visualizzazione è responsabile della gestione della comunicazione tra i suoi client e i dispositivi hardware. Invia segnali di eventi di tastiera e mouse ai suoi client.
Il server di visualizzazione è anche responsabile del disegno del puntatore del mouse e del controllo della sua posizione.
X11 e Wayland sono le due opzioni principali dei server di visualizzazione. X11 è molto più vecchio di Wayland. In effetti, Wayland è stato sviluppato per essere il successore di X11. Tuttavia, X11 è ancora ampiamente utilizzato tra le distribuzioni Linux.
I concetti sopra menzionati si applicano sia a X11 che a Wayland. Tuttavia, ci sono grandi differenze tra loro nel modo in cui comunicano con i loro clienti. I client Wayland sono più isolati dei client X11. Pertanto, Wayland è considerato più sicuro di X11.
Ci sono altre differenze che potresti considerare se prevedi di passare a Wayland, ma nella maggior parte dei casi non devi preoccuparti di queste differenze. Questo perché gli sviluppatori di app utilizzano toolkit di alto livello (come Gtk+ e Qt) che supportano sia X11 che Wayland. Anche GNOME e KDE funzionano sia con X11 che con Wayland.
Per saperne di più: Cosa devi sapere sull'utilizzo di Wayland
Dopo aver capito cos'è un server di visualizzazione e cosa fa, passiamo al componente successivo.
2. Il gestore delle finestre
La funzione del window manager (come suggerisce il nome) è quella di gestire le finestre aperte. La gestione delle finestre implica il controllo delle dimensioni delle finestre e della loro posizione (come richiesto dall'utente o dalle applicazioni). Quindi, ogni volta che inizi a trascinare una finestra o a ridimensionarla, il window manager è responsabile dell'elaborazione della tua richiesta.
Ricorda che per trascinare una finestra è sufficiente fare clic sulla sua barra del titolo, mentre per ridimensionarla fai clic e trascina sui suoi bordi. Questo ci sposta alla funzione successiva dei gestori di finestre, che è disegnare decorazioni attorno alle finestre (la barra del titolo e i bordi sono chiamati decorazioni delle finestre).
Potresti chiederti, perché il server di visualizzazione non gestisce la gestione delle finestre? Bene, lo fa. In realtà, i gestori di finestre fanno ciò che fanno comunicando con il server di visualizzazione. Poiché il controllo delle finestre e il disegno delle loro decorazioni richiedono l'accesso ai pixel, è necessario parlare con il server di visualizzazione. Quindi il gestore di finestre istruisce semplicemente il server di visualizzazione e il server di visualizzazione esegue le operazioni effettive.
Un'altra caratteristica importante che può avere un gestore di finestre è la composizione delle finestre. Se ha questa funzione, allora si chiama un compositore di finestre. Ciò consente alle applicazioni di fare alcune cose interessanti, come consentire la trasparenza, la sfocatura, disegnare le ombre delle finestre, animare le finestre quando vengono spostate/ridotte a icona/ingrandite e altri effetti visivi.
Esempi di gestori di finestre
Ci sono molte opzioni disponibili (a differenza dei server di visualizzazione, dove ci sono solo due opzioni). Tra i più popolari ci sono:
- Kwin (fornito con KDE).
- Mutter (fornito con GNOME).
- Xfwm (il gestore di finestre di Xfce).
- Muffin (un fork di borbottio per desktop Cinnamon).
Ci sono molte altre opzioni disponibili, alcune fanno parte di un ambiente desktop, altre sono sviluppate come singoli pacchetti. puoi anche usa solo un gestore di finestre invece di un ambiente desktop completo.
Alcuni ambienti desktop ti permetteranno di utilizzare un gestore di finestre di terze parti. Ad esempio, puoi scegliere di utilizzare Xfce con kwin. Sebbene GNOME e Cinnamon non supportino i gestori di finestre di terze parti (ad esempio, se hai provato a sostituire con forza muffin in una sessione di Cinnamon con un altro gestore di finestre, il pannello scomparirà).
Ora che hai capito il window manager passiamo al componente successivo.
3. Il Gestore degli accessi (o Gestore display)
Il gestore degli accessi è il primo programma grafico che viene visualizzato per fornirti un elenco di utenti in modo da selezionarne uno ed effettuare il login. Ti dà anche la possibilità di scegliere l'ambiente desktop che desideri. Ciò consente di passare da un ambiente desktop all'altro semplicemente disconnettendosi, scegliendo un altro ambiente desktop ed effettuando nuovamente l'accesso. Ecco perché il gestore di accesso è chiamato gestore di visualizzazione (da non confondere con il server di visualizzazione).
Il gestore degli accessi identifica gli ambienti desktop attualmente installati esaminando /usr/share/xsessions directory. Questa directory contiene diversi .desktop File. Ogni file corrisponde a uno degli ambienti desktop attualmente installati.
Ci sono anche molti gestori di accesso in giro. I più popolari sono:
- Gdm (gestore display di GNOME).
- Kdm (gestore di visualizzazione di Kde).
- lightdm (molti ambienti desktop e distribuzioni Linux sono dotati di lightdm perché è molto personalizzabile e flessibile).
I tre componenti summenzionati sono i componenti più essenziali di qualsiasi ambiente desktop. Ciò significa che per avere un ambiente grafico funzionale dovresti almeno avere quei pacchetti installati. Tuttavia, gli ambienti desktop completi vengono forniti con vari altri pacchetti che hanno lavori più specifici.
Altri componenti comuni di un ambiente desktop
Oltre ai componenti di cui sopra, l'ambiente desktop che stai utilizzando probabilmente contiene i seguenti pacchetti:
- Gestore sfondi: responsabile dell'impostazione dello sfondo del desktop.
- Istanza del file manager per il desktop: responsabile della visualizzazione delle icone del desktop, fa parte del file manager installato sul sistema. Ad esempio, il file manager nautilus ha "nautilus_desktop" e nemo ha "nemo_desktop".
- Blocco schermo: blocca il computer dopo un po' di inutilizzo.
- Network Manager: Network Manager è ciò che gestisce le tue connessioni Internet e passa automaticamente dalla connessione Wi-Fi a quella cablata. Il programma stesso non aggiunge alcun elemento visivo al tuo desktop, ma il tuo ambiente desktop deve aver implementato una GUI per esso, accessibile dal pannello o altrove.
- Demone di notifica: quando un'applicazione desidera mostrare una notifica, la invia al demone di notifica per visualizzarla.
- Agente di autenticazione Policy Kit: è come una GUI per sudo. Questa app viene visualizzata quando si eseguono azioni che richiedono privilegi di root come l'installazione di software o l'applicazione di aggiornamenti.
- E molti altri.
Notare che l'impostazione dello sfondo e la visualizzazione delle icone del desktop sono gestite da due applicazioni separate. Inoltre, gli ambienti desktop completi vengono forniti con molti altri pacchetti che esulano dallo scopo di questo articolo.
Conosci gli interni del tuo sistema
Per gli utenti Linux, conoscere i componenti del proprio ambiente desktop è essenziale per la risoluzione dei problemi e la risoluzione dei problemi. Questa conoscenza può anche diventare utile se decidi di creare il tuo ambiente desktop.
Il sottosistema Windows per Linux viene fornito senza desktop. Ecco come installare un ambiente desktop WSL come GNOME o LXDE su Windows.
Leggi Avanti
- Linux
Iscriviti alla nostra Newsletter
Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!
Clicca qui per iscriverti