Benvenuti in questo mio nuovo post, in cui, sotto consiglio di un mio lettore, vi vado a parlare di un argomento che tengo a trattare. Un argomento che ho sempre voluto scrivere qui nel mio blog, ma che alla fine ho sempre rimandato in quanto pensavo che a nessuno importasse realmente. Ma dato che un mio lettore mi ha detto che a lui interesserebbe e dato che ultimamente stanno uscendo molti post, su numerosi gruppi Facebook, ho deciso di prendere la palla al balzo e di pubblicare finalmente questo post.
Non sono poche le persone che vanno contro o favore a Systemd. Molto spesso, le stesse persone che iniziano questa battaglia, non sanno neppure cosa sia questo componente, in un sistema Linux.
Quindi: che cos’è systemd?
Per semplificare il più possibile per tutti, Systemd non è altro che un avviatore. È un componente fondamentale del sistema operativo Linux, di avviare tutti i componenti dell’OS stesso. Systemd va in esecuzione subito dopo il grub. Per prima cosa provvede a caricare il kernel sulla ram. Poi provvede a caricare i driver. Quindi il kernel a questo punto avvia tutti i servizi. Per servizi si intendono tutte le funzioni del computer. Quindi avvia i servizi di connessione di rete, i servizi audio, i servizi di grafica (grazie ovviamente ai driver della propria scheda grafica). Infine systemd si riattiva nuovamente per avviare il motore grafico e quindi il DE.
Successivamente systemd rimane in standby e interviene soltanto se l’utente necessita di avviare un programma. A questo punto, systemd non fa altro che caricare l’avviatore del programma nella ram del computer. Tutto il resto delle operazioni, necessarie per il corretto funzionamento del programma, come per esempio la gestione delle risorse grafiche del computer e così via, ci pensa il kernel.
Dato che questo articolo si rivolge a un pubblico generale, non posso spingermi a spiegare nel dettaglio, tutti i tecnicismi di queste operazioni. Però se ti interessa sapere come funziona dall’interno un sistema Linux, fammelo sapere nei commenti. Per questo post, ti basta sapere che questo tipo di sistema, viene definito sistema di init, in quanto avvia e inizializza l’esecuzione dei processi.
Chi ha creato systemd?
Systemd è un prodotto realizzato da Red Hat. Questo sistema venne poi adottato per Debian.
Quali differenze ci sono tra un sistema che ha come init systemd e un sistema che ha come init un altro software?
Beh la risposta è molto semplice. Quasi nessuna. Eh si, Systemd è solo un init. Non influisce sul funzionamento del sistema. Non caratterizza la stabilità del sistema. Per la maggior parte degli utenti che utilizzano Linux, ovvero per un buon 90%, non cambia nulla. Solo per chi usa dei super computer magari potrebbe e ripeto, potrebbe, riscontrare delle differenze. Dato che nei super computer si deve calcolare al millesimo una quantità di informazioni enorme, allora magari si hanno esigenze diverse, anche da sotto il punto di vista di un init. Ma per il resto, non cambia nulla.
Anzi. C’è un problema in realtà. Tutti i driver attualmente creati sono stati sviluppati per essere avviati sotto il richiamo di Systemd. Questo vuol dire che se uno installa un altro sistema di init, potrebbe avere dei problemi con alcuni dispositivi.
Quindi ha senso la battaglia pro o contro systemd?
Ricapitolando il post in 4 semplici parole: no, non ha senso.
Spero che con questo post sia stato abbastanza chiaro ed esaustivo. Per il momento ti saluto e ti aspetto al mio prossimo post!