Ciao, e benvenuto nella seconda puntata della sedicesima stagione. Nella scorsa puntata abbiamo capito perché gli sviluppatori scelgono la riga di comando, e abbiamo nominato in continuazione Linux. Ma cos'è, esattamente, Linux? E prima ancora, cos'è un sistema operativo, quella cosa di cui Linux è un esempio? Oggi rispondiamo a queste due domande fondamentali, perché capire cos'è un sistema operativo e perché Linux domina il mondo dei server è la base per tutto il resto della stagione.
Partiamo dal concetto di sistema operativo, che molti usano ogni giorno senza sapere davvero cosa sia. Un computer, nudo e crudo, è un insieme di componenti fisici: un processore che calcola, della memoria, dei dischi, uno schermo, una tastiera. Ma questi pezzi di ferro, da soli, non sanno cosa fare. Serve qualcosa che li governi, che faccia da tramite tra i programmi che vogliamo usare e l'hardware fisico sottostante. Quel qualcosa è il sistema operativo: uno strato di software fondamentale che sta in mezzo, tra le applicazioni e la macchina, e coordina tutto. È il direttore che fa funzionare l'orchestra dei componenti.
Vediamo cosa fa, concretamente, questo direttore, perché i suoi compiti sono più importanti di quanto sembri. Il sistema operativo gestisce le risorse del computer e le distribuisce ai programmi che ne hanno bisogno. Decide quale programma usa il processore, e per quanto tempo. Assegna la memoria a chi la richiede. Controlla l'accesso ai dischi, allo schermo, alla rete. Fa sì che tanti programmi possano girare insieme senza pestarsi i piedi, condividendo ordinatamente le risorse limitate della macchina. Senza il sistema operativo, ogni programma dovrebbe sapere come parlare direttamente con ogni pezzo di hardware, un caos ingestibile. Il sistema operativo nasconde questa complessità e offre a tutti un ambiente ordinato in cui lavorare.
Ora che sappiamo cos'è un sistema operativo, veniamo a Linux, che è appunto uno di questi sistemi operativi, ma con una storia e una natura particolari. Linux è un sistema operativo nato come progetto aperto e libero, e questa è la sua caratteristica distintiva. Ricordi la stagione sull'open source? Linux ne è forse l'esempio più glorioso: il suo codice è aperto, chiunque può vederlo, studiarlo, modificarlo e contribuire a migliorarlo. Non è proprietà di una singola azienda che lo tiene chiuso: è un bene comune, costruito e curato da una comunità mondiale enorme, di volontari e di aziende, nel corso di decenni. Questa apertura è parte del suo dna e una delle ragioni del suo successo.
Ed è un successo straordinario, che voglio farti apprezzare, perché Linux è ovunque, anche se sul tuo computer di casa forse non lo vedi. Pensa a questo: la stragrande maggioranza dei server del mondo, quei computer che fanno funzionare siti, servizi e applicazioni, gira Linux. Quasi tutta la nuvola, l'infrastruttura su cui poggiano i servizi moderni, è Linux. I telefoni con il sistema più diffuso al mondo hanno Linux nel loro cuore. I container, di cui abbiamo parlato, sono Linux. Moltissimi dispositivi che ci circondano, dai televisori agli elettrodomestici intelligenti, hanno Linux dentro. È il sistema operativo più diffuso del pianeta, anche se lavora perlopiù nell'ombra, invisibile.
Fermiamoci a chiederci perché Linux ha conquistato proprio il mondo dei server e dell'infrastruttura, perché le ragioni sono istruttive. Primo, è aperto e gratuito: non devi pagare licenze per ogni macchina, il che, quando ne hai migliaia, conta enormemente. Secondo, è affidabile e stabile: può restare acceso a lavorare per anni senza problemi, qualità essenziale per un server. Terzo, è flessibile e controllabile: essendo aperto, puoi adattarlo con precisione alle tue esigenze, togliere il superfluo, ottimizzarlo. Quarto, è nato e pensato per essere comandato dalla riga di comando e gestito da remoto, esattamente ciò che serve per i server. Queste qualità lo hanno reso la scelta naturale per chi costruisce infrastruttura seria.
Voglio chiarire un piccolo punto che a volte confonde, perché ti aiuterà a orientarti: quando si parla di Linux, si incontrano tanti nomi diversi. Questo perché, attorno al cuore comune di Linux, esistono molte versioni confezionate in modo diverso, ciascuna pensata per usi o gusti diversi, un po' come tante ricette diverse a partire dallo stesso ingrediente base. Alcune sono pensate per i server, altre per l'uso quotidiano, altre per scopi speciali. Ma sotto le differenze di confezionamento, il cuore e i concetti fondamentali sono gli stessi, ed è di quei concetti condivisi che parleremo in questa stagione. Non lasciarti confondere dai molti nomi: la sostanza, il modello, è comune a tutti.
Per oggi ci fermiamo qui. Un sistema operativo è lo strato di software fondamentale che sta tra i programmi e l'hardware, gestendo e distribuendo le risorse della macchina e nascondendo la complessità. Linux è uno di questi sistemi operativi, ma nato come progetto aperto e libero, un bene comune costruito da una comunità mondiale. È il sistema operativo più diffuso del pianeta, che regge la stragrande maggioranza dei server, la nuvola e i container, grazie a essere gratuito, affidabile, flessibile e pensato per la gestione da riga di comando. Esistono molte versioni, ma il cuore e i concetti sono condivisi. Nella prossima puntata conosciamo il nostro interlocutore diretto: la shell. Nelle note trovi qualche spunto. Se ti è utile, condividila. Grazie per l'ascolto, e ci sentiamo alla prossima.