Questo video della Linux Foundation spiega il processo di sviluppo del kernel Linux.
Il video è molto esplicativo e non necessita di commenti o di spiegazioni, mi limiterò a fare un piccolo riassunto per chi non ha molta familiarità con la lingua inglese.
Per prima cosa, viene spiegato che chiunque usa Linux quotidianamente, anche inconsapevolmente: difatti vengono venduti ogni giorno 850.000 cellulari e 700.000 televisioni che montano linux, 8 scambi commerciali su 10 sfruttano linux, il 90% dei supercomputer di tutto il mondo usano linux e la maggior parte dei colossi del web (google, facebook, twitter, amazon…) hanno linux sui propri server.
Ma come viene effettivamente sviluppato linux? A differenza degli altri sistemi operativi più conosciuti, Linux viene sviluppato collettivamente formando il progetto di sviluppo cooperativo più grande nella storia del computing; questo grazie all’intervento di più di 8000 programmatori (solamente dal 2005 ad oggi) provenienti da più di 800 aziende di tutto il mondo.
Attualmente, sono state scritte 15 milioni di linee di codice, di cui 1,5 negli ultimi anni. Questo è sorprendente pensando che un libro come Guerra e pace contiene 560.000 parole.
Al di là del semplice numero di linee di codice, la forza di linux sta nella velocità di rilascio di nuovi versioni: ogni 2 o 3 mesi si ha un nuovo kernel con numerose modifiche.
Gli sviluppatori aggiungono, rimuovono o modificano il codice creando Patches. Quando queste patches sono pronte per essere introdotte nel kernel, vengono inviate ad un “senior linux kernel developer” (comunemente “maintainer“) che le valuta e le testa attentamente. Se il maintener approva la patch, la firma e la invia al creatore di Linux, Linus Torvalds, che decreta infine se la patch sarà aggiunta al nuovo kernel o meno.
Si consideri che per ogni nuovo kernel vengono aggiunte 10000 nuove patches.