De geschiedenis van Linux
Linux bestaat al meer dan 20 jaar en dient met plezier in zowel desktop- als serverrollen. Maar het kwam niet van de ene op de andere dag opdagen. Linux is het resultaat van de samenwerking van veel mensen door de jaren heen.
Om Linux te begrijpen, moet je terug naar de geboorte van Unix. In 1969 wilden Dennis Ritchie en Ken Thompson, een paar programmeurs bij Bell Labs, hun onderzoek naar besturingssystemen voortzetten. Bell Labs had deelgenomen aan het Multics, een onderzoeksproject dat MIT en GE omvatte, om een besturingssysteem te creëren dat een informatiehulpprogramma zou bieden. Het idee leek veel op wat nu 'cloud computing' wordt genoemd, maar in de jaren zestig was dit het besturingssysteem-equivalent van Duke Nukem Forever, waarbij de ontwikkeling langzaam verliep. Bell Labs trok zich terug uit het project, waardoor Thompson en Ritchie de programmeeromgeving die ze bij Multics hadden ervaren, misten.
Ze gebruikten een PDP-7 van Digital Equipment Corporation, die toen al als oud werd beschouwd, om een veel eenvoudiger systeem te implementeren. The called it Unics, een woordspeling op Multics. Multics stond voor Multiplexed Information and Computing Service en aangezien hun systeem eenvoudiger en gecastreerd was, werd het de Uniplexed Information and Computing Service genoemd. De naam werd later ingekort tot Unix.
Niettemin verspreidde Unix zich als een lopend vuurtje binnen Bell Labs. Een belangrijke innovatie was de mogelijkheid om de uitvoer van het ene programma naar de invoer van een ander te sturen, waardoor programmeurs applicaties konden bouwen van reeds bestaande programma's zoals LEGO. Een andere was het idee om Unix in C opnieuw te implementeren, een taal die is uitgevonden door Ritchie en Brian Kernighan. C is een taal op hoog niveau die elke computer met een compiler kan gebruiken. Eerder werden besturingssystemen ontwikkeld in assembler en ontwikkeld voor een specifieke computer. Door Unix in C te herschrijven, kon het een universeel besturingssysteem worden, dat met zeer weinig wijzigingen op verschillende computers kon worden uitgevoerd.
Dit systeem verspreidde zich buiten Bell Labs toen Thompson en Ritchie er een paper over publiceerden in het prestigieuze computerwetenschapstijdschrift Communications of the ACM . AT & T, het moederbedrijf van Bell Labs, gaf het gratis aan universiteiten omdat het was uitgesloten van niet-telefonische markten.
Een van de universiteiten die het te pakken kreeg, was UC Berkeley, waar programmeurs snel begonnen met het aanbrengen van wijzigingen, omdat het systeem werd geleverd met de broncode. Dit systeem werd BSD of Berkeley Software Distribution genoemd en bevatte een aantal innovaties zoals het integreren van TCP / IP en diverse andere hulpprogramma's.
In de tussentijd begon AT & T zijn intellectuele eigendom nog meer te versterken. Een programmeur bij MIT's AI Lab, Richard Stallman, was hier niet blij mee en startte het GNU-project, dat staat voor "Gnu's Not Unix" als een gratis vervanging. Stallman legde zijn redenering in een manifest uit:
Ik ben van mening dat de gouden regel vereist dat als ik een programma leuk vind, ik het moet delen met andere mensen die het leuk vinden. Softwareverkopers willen de gebruikers verdelen en overwinnen, waardoor elke gebruiker ermee instemt om niet met anderen te delen. Ik weiger op deze manier de solidariteit met andere gebruikers te verbreken. Ik kan niet met een goed geweten een geheimhoudingsovereenkomst of een softwarelicentieovereenkomst ondertekenen. Jarenlang werkte ik binnen het laboratorium voor kunstmatige intelligentie om weerstand te bieden aan dergelijke neigingen en andere onmenselijkheden, maar uiteindelijk waren ze te ver gegaan: ik kon niet in een instelling blijven waar zulke dingen voor mij worden gedaan tegen mijn wil.
Stallman recruteerde programmeurs om gratis (zoals in spraak, evenals in bier) programma's te bouwen die bij de broncode kwamen en gaf expliciet toestemming aan programmeurs om hun verbeterde versies te wijzigen en opnieuw te distribueren. Het laatste stuk dat moeilijk bleek te zijn, was de kernel, of het hart van het besturingssysteem.
Tegelijkertijd schreef Andrew Tanenbaum, een professor computerwetenschappen, een boek over besturingssystemen dat een vervanging was van een eerder boek van John Lions met de volledige broncode van een eerdere versie van Unix en commentaar. Tanenbaum creëerde een gratis vervanger die hij Minix noemde en nam deze in zijn boek op.
Een van de vele mensen die Minix gebruikte was een Finse student met de naam Linus Torvalds die de 386-microprocessor wilde verkennen, dus besloot hij om zijn eigen kernel te schrijven voor de lol, ontworpen als de Unix-systemen die hij gewend was te gebruiken. Hier heeft hij het eind 1991 op Usenet aangekondigd:
Ik ben bezig met een (gratis) besturingssysteem (alleen een hobby, zal niet groot en professioneel zijn zoals GNU) voor 386 (486) AT-klonen. Dit brouwt sinds april en begint zich voor te bereiden. Ik zou graag feedback krijgen op dingen die mensen leuk / niet leuk vinden in minix, omdat mijn besturingssysteem er enigszins op lijkt (dezelfde fysieke lay-out van het bestandssysteem (onder andere om praktische redenen)).
Toen dit werd gecombineerd met de GNU-tools, bleek dit een formidabel systeem dat kon concurreren met Windows en Mac OS (dat nu op Unix is gebaseerd). Als je de geschiedenis van Linux bekijkt, is het duidelijk dat Linus een paar behoorlijk grote reuzen had om op de schouders te staan.
Foto's: Wikipedia, Martin Streicher (foto Linus Torvalds), Sam Williams (foto van Stallman)