De Help Desk punt NL
Kennisbank
De Helpdesk > De Helpdesk > Kennisbank

Inleiding

Oplossing

Wat is Linux?

Om bij het begin te beginnen: wat is Linux? Linux is een kernel, de kern van een besturingssysteem, waar Linus Torvalds aan is begonnen. De eerste versies heeft hij geheel zelf gemaakt. In de loop der tijd kreeg hij echter steeds meer hulp van allerlei mensen van over de hele wereld, bij elkaar gebracht dankzij internet. De bekendste „kernel hacker” naast Linus is Alan Cox.

Een besturingssysteem (of operating system, OS) is basissoftware voor een computer die de gebruiker de mogelijkheid biedt het systeem te gebruiken. De kernel is het deel dat als eerste wordt geladen en dan aanwezig blijft in het geheugen. Het vervult essentiële taken, zoals geheugenmangament, scheduling om taken te verdelen over de processortijd, en communicatie met de hardware via device drivers.

Unix was een van de eerste besturingssystemen, maar werd niet gebruikt op computers voor het grote publiek. De pc van IBM en de Macintosh van Apple waren computers die de mensen in de jaren 1980 thuis gingen gebruiken. Voor de pc was het eerste OS MS-DOS. MS-DOS is een typisch voorbeeld van een tekstgebaseerd OS dat je via een command line bestuurt. Zo werkten alle OS'en tot dan toe, ook Unix. Een nieuwer paradigma is de desktop, een grafische interface die je met de muis bedient. Voorbeelden van grafische OS'en zijn Windows voor de pc en Mac OS voor de Macintosh.

Er bestaan vele verschillende hardwareplatformen en OS'en. Niet elk OS werkt op elke hardware. De meeste mensen hebben thuis een IBM-compatible pc en sommige een computer van Apple. Andere hardware is veel minder gangbaar. Als je een pc koopt, zit daar vrijwel standaard Windows bij. Dat is echter niet het enige OS dat je op een pc kunt gebruiken. Andere mogelijkheden zijn NetBSD, FreeBSD en Linux, alle Unix-achtige OS'en. Hiervan is vooral Linux bekend geworden.

Strikt gesproken is Linux de naam van de kernel. Op zichzelf is de kernel niet zo interessant. Het biedt geen mogelijkheid voor de gebruiker om de computer te bedienen. Er is meer nodig. Wat vaak met „Linux” wordt bedoeld, is een Linux-distributie. Dat is een samengesteld geheel van de kernel en andere software. Samen vormt het wel een volledig OS, en meer. Belangrijk zijn de GNU-utility's. GNU is een recursief acroniem dat staat voor GNU's Not Unix. Het is een set utility's die is gemaakt door de FSF (Free Software Foundation) en een alternatief vormt voor de utility's die bij Unices te vinden zijn. (Meer over de FSF en GNU komt verderop.) Bij deze utility's hoort o.a. een shell, software die een command line toont zoals bij MS-DOS. De kernel en GNU-utility's vormen samen een volledig functionerend OS dat dezelfde mogelijkheden biedt als Unix, maar dan op een pc. Omdat de software van het GNU-project net zo belangrijk is als de kernel, is het eigenlijk correcter het systeem GNU/Linux te noemen.

De moderne gebruiker wil graag een grafische desktop. Ook dat is beschikbaar bij Linux-distributies. Ten grondslag aan alle grafische software voor Linux (en andere Unices) ligt X. Software die een desktopomgeving vormt, maakt gebruik van X. Er zijn twee belangrijke projecten voor desktopsoftware: GNOME en KDE.

Je merkt dat een Linux-distributie is opgebouwd uit een hoop verschillende onderdelen. Naast de hier genoemde onderdelen is er nog veel meer software te vinden bij een distributie. Wat al deze software gemeen heeft, is dat het open source is. Verder wordt het door vele verschillende individuen en groepen gemaakt.

Enkele begrippen

Met open-sourcesoftware sta je dichter bij de broncode. Veel wat je bij Linux ziet, zul je beter begrijpen als je iets weet over hoe software gemaakt wordt en in elkaar zit. De volgende begrippen zijn belangrijk.

  • Broncode of source code: Om het eenvoudiger te maken software te ontwikkelen zijn programmeertalen uitgevonden. Broncode of source code is het programma in de een of andere programmeertaal. Het moet door een compiler (vertaler) heen om er machinecode van te maken, een serie instructies die de computer direct kan uitvoeren.
  • Assembler: Programmeertaal op het laagste niveau. Het staat net iets boven machinecode, maar niet veel. Je beschrijft er instructies mee die de processor moet uitvoeren.
  • C: Een programmeertaal van een hoger niveau. C is gemaakt voor Unix en zodoende is veel software voor Linux (en de kernel en GNU-software zelf ook) in C geschreven. In C kun je functies of routines maken.
  • Executable: Een bestand dat direct kan worden uitgevoerd door de computer. Broncode is dat niet. Na het te hebben gecompileerd zal een bestand in objectformaat worden aangemaakt. Dat bevat code die wel door de computer is uit te voeren. In Linux hebben deze bestanden een speciale flag die aangeeft dat het uitvoerbaar is en verder geen extensie. In Windows hebben ze exe als extensie.
  • Library of bibliotheek: Een (shared) library is een collectie voorgecompileerde routines die door een programma gebruikt kunnen worden. Een library is ook in objectformaat opgeslagen. De bestandsnamen eindigen op .so in Linux en .dll in Windows. Een library is handig voor routines die in meer software nodig zijn. Zo zijn er library's voor het decoderen van MP3 en het tekenen van GUI-componenten.
  • Porten: Een stuk software naar een ander platform (hardware/OS) omzetten. Dit is het eenvoudigste als het geschreven is in een hogere programmeertaal zoals C. Het kan dan door een andere compiler gehaald worden om code voor het nieuwe platform te maken. Tussen Unix-achtige OS'en is porten vrij eenvoudig, zodat de meeste open-sourcesoftware onder alle Unices te gebruiken is.

Geschiedenis van Linux

De tekst in deze paragraaf is onder het GNU „copyleft” gedoneerd door Hans Paijmans. Het geeft een goed beeld van hoe open source, GNU en Linux zijn ontstaan. Er zijn enkele toevoegingen gemaakt.

Unix

Linux is voor alles een Unix en Unix is van oudsher een systeem voor en van universiteiten. En als zodanig is het stevig verankerd in de eeuwenoude wetenschappelijke traditie van open communicatie en uitwisseling. In deze omgeving worden systemen en ideeën niet, of niet alleen, ontwikkeld om er geld mee te verdienen, maar eerst en vooral om aanzien te verwerven binnen de eigen groep: de peer recognition. Zowel Unix als Linux zijn voortgekomen uit een zeer sterke en constante drang in de mens: de wens voor vol aangezien te worden door je collega's. En zolang de aard van het beestje niet verandert is het voortbestaan van Linux hierdoor waarschijnlijk beter verzekerd dan dat van andere computersystemen, die afhankelijk zijn van de altijd grillige economische marktwerking. Unix werd aan het einde van de zestiger, begin zeventiger jaren ontwikkeld als een „klein” operating system dat in staat moest zijn op de meest uiteenlopende platforms meerdere gebruikers tegelijkertijd verschillende taken uit te laten voeren. Vanaf het begin werd de source (of broncode) ter beschikking gesteld aan iedereen die er maar aan wilde sleutelen. Dat gebeurde natuurlijk vooral aan de universiteiten en onderzoeksinstituten, en het is geen overdrijving om te zeggen dat het uiteindelijke Unix het resultaat was van honderden computerdeskundigen en hackers. (Hackers zijn begaafde computergebruikers en -programmeurs. De populaire pers verwart ze ten onrechte met „crackers”, ofwel mensen die inbreken in computersystemen. Maar de populaire pers weet nu eenmaal zelden waar zij het over heeft…)

Het is kenmerkend voor deze anarchistische omgeving van wetenschappers en studenten dat er al snel een ware cultuur van humor en sterke verhalen om dit operating system ontstond en het kwam dan ook voor velen als een klap dat in het begin van de tachtiger jaren Unix opeens werd gecommercialiseerd. Het was afgelopen met het inspecteren van de source, het experimenteren met alternatieve algoritmes. Computers waren „big business” geworden en de sources van programmatuur werden even jaloers geheimgehouden als het recept van Coca Cola. Het logische gevolg was dat de softwarebedrijven steeds meer een wurggreep kregen op hun klanten: elke wijziging in de code, elke aanpassing aan een programma moest duur worden betaald, zonder dat de klant enig zicht had op wat zich achter de schermen afspeelde.

Microsoft en Bill Gates zijn de voortbrengselen van deze commerciële cultuur. Programmatuur was alleen nog maar een van de vele manieren om geld te maken en alles werd ondergeschikt gemaakt aan de winst. De gebruiker was volledig afhankelijk van de grillen van de producent, want hij had geen keus. Alleen had Bill Gates begrepen wat de eigenaars van Unix nooit hadden ingezien: dat je beter duizend systeempjes van honderd dollar kon verkopen dan vijf van tienduizend dollar. De bezitters van Unix hadden dat niet door en de commercialisering van Unix leidde in korte tijd tot de versplintering van dit operating system in evenveel peperdure varianten als er hardwareplatforms voor bestonden. En ondertussen haalde Microsoft de markt van de huiscomputer naar zich toe.

Het GNU copyleft

Deze commercialisering van wat in zijn ogen vrij zou moeten zijn voor iedere gebruiker stootte een zekere Richard Stallman zozeer tegen de borst dat hij besloot actie te ondernemen. Met de typisch Amerikaanse mengeling van naïviteit en dadendrang richtte hij in 1984 de „Free Software Foundation”, de FSF op. Het essentiële verschil tussen de producten van de FSF en die van de commerciële bedrijven was nadrukkelijk niet dat de FSF-software per definitie gratis zou moeten zijn. In tegenstelling tot wat veel mensen denken wordt er over het verkopen van de software niets bepaald in de legale definitie van het „GNU copyleft” (een parodie op copyright), zoals het in de wandelgangen wordt genoemd. Maar wel is iedereen verplicht om de source van de betreffende software altijd mee te leveren en geen beperkingen te leggen op de verdere verspreiding ervan. Het woord „free” moet hier dan ook worden gezien zoals in de uitdrukking „free speech”, niet „free beer”. Om Richard Stallman zelf aan te halen: „Een programmeur mag best geld verdienen. Hij en zijn gezin moeten goed kunnen eten als ieder ander, maar hij hoeft dat niet elke dag in een driesterrenrestaurant te doen.”

Natuurlijk werden de ideeën van Richard Stallman door de rest van de wereld weggehoond. Dat verhinderde hem en zijn geestverwanten echter niet om een groot aantal uitstekende softwarepakketten te schrijven die op praktisch elke Unix konden draaien. Vooral op universiteiten gooiden de systeemadministrators zo snel mogelijk de commerciële versies van hun respectievelijke Unixen overboord om daarvoor in de plaats de GNU-utility's te kunnen draaien. En dat gebeurde niet uit het oogpunt van kostenbesparing, want de commerciële applicaties waren immers al betaald, maar omdat de source open was en door honderden programmeurs over de hele wereld kon worden bekeken en verbeterd. Daardoor stak de GNU-software met kop en schouders boven de andere programmatuur uit.

Linux

Niettemin zag het er in het begin van de negentiger jaren slecht uit voor Unix. De massamarkt was door Microsoft veroverd en de hoge prijs van de verschillende Unixen verhinderde dat er serieus aan een Unix voor pc's werd gewerkt. Alleen Microsoft had geëxperimenteerd met een eigen Unix voor pc's, Xenix geheten, en die was als SCO Unix een eigen leven gaan leiden. Unix op de pc kon dus wel, alleen kostte een volledige installatie toen nog (omgerekend) zevenduizend euro en dat kon natuurlijk geen enkele thuisgebruiker opbrengen.

In 1991 veranderde dat dramatisch. Een Finse student, Linus Torvalds, ergerde zich aan het feit dat zijn favoriete besturingssyteem, Unix, niet thuis op zijn pc kon draaien. Toen hij hoorde van Minix, een OS gemaakt door Andy Tanenbaum op de Vrije Universiteit in Amsterdam, was hij direct geïnteresseerd. Minix was geïnspireerd door Unix. Linus vond Minix aardig, maar miste functionaliteit. Hij wilde het gaan uitbreiden, maar Tanenbaum wilde dat niet. Hij wilde Minix klein houden om het te kunnen gebruiken als onderwijsmateriaal. Toen besloot hij zelf maar een OS te gaan schrijven. Dat was echter niet zijn grootste verdienste. Het geniale van Linus Torvalds was dat hij het op universiteiten toen al lang populaire internet gebruikte om medestanders te vinden die samen met hem aan een Unix voor pc's wilden werken en dat wilden uitbrengen onder het GNU copyleft. Het befaamde usenetbericht van Linus uit 1991 begon als volgt: „Hello everybody out there using minix - I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones.” We moeten niet vergeten dat op een typisch Linux-systeem met honderden megabytes aan „vrije” programmatuur, slechts een miniem gedeelte van vijf- à zeshonderd kilobytes (de kernel) echt „Linux” is. De rest bestaat uit software die door anderen in het kader van het GNU copyleft is geschreven en aan de rest van de wereld ter beschikking gesteld. En daarin ligt de grote verdienste van Linus Torvalds: het bij elkaar brengen van al deze bestaande stukjes tot een coherent besturingssysteem.

Hiermee is Unix eindelijk weer terug waar het thuishoort: in de wereld van openheid, onderwijs en experiment, van samenwerking en peer recognition. En het is hoopgevend dat deze onbetaalde aandrang om erkend te worden binnen het wereldje van hackers, programmeurs en internet erin is geslaagd waar miljoenenfirma's als IBM, Sun, Novell en al die andere hebben gefaald: het vormen van een serieuze bedreiging voor het gigantische Microsoft.

Ongeacht wat de toekomst brengt, één ding is zeker. Met Linux is de geest van vrije software definitief uit de fles en niemand zal hem er ooit weer in. Hiermee is Unix eindelijk weer terug waar het thuishoort: in de wereld van openheid, onderwijs en experiment, van samenwerking en peer recognition. En het is hoopgevend dat deze onbetaalde aandrang om erkend te worden binnen het wereldje van hackers, programmeurs en internet erin is geslaagd waar miljoenenfirma's als IBM, Sun, Novell en al die andere hebben gefaald: het vormen van een serieuze bedreiging voor het gigantische Microsoft.

Ongeacht wat de toekomst brengt, één ding is zeker. Met Linux is de geest van vrije software definitief uit de fles en niemand zal hem er ooit weer in terug kunnen stoppen. De GNU-filosofie van open source, die iedereen kan bekijken en die door iedereen kan worden aangepast en verbeterd, bestaat nu al 20 jaar en anders dan de commerciële bovenbazen graag beweren: zij heeft niet tot versnippering geleid. In tegendeel: de GNU-software is verreweg de beste software die er bestaat.

Andere Unices

Wat waarschijnlijk wel duidelijk is geworden, is dat Unix belangrijk is geweest in de geschiedenis van besturingssystemen. Vele OS'en zijn ervan afgeleid of erdoor geïnspireerd. Unix is oorspronkelijk ontwikkeld in Bell Labs in 1969, door (onder anderen) Ken Thompson en Dennis Ritchie. De broncode van het besturingssysteem werd aan universiteiten geleverd. Gebruikers konden hierdoor gemakkelijk zelf aanpassingen maken. Er ontstonden een hoop verschillende varianten van het systeem, die Bell Labs tussen 1977 en 1982 tot een enkel systeem combineerde. Hierdoor ontstond UNIX System III. Er werden steeds meer mogelijkheden toegevoegd, wat leidde tot UNIX System V.2, ook wel bekend als SysV.

Een andere belangrijke tak is die van BSD, de Berkeley Software Distribution van de Universiteit van Californië, Berkeley. Afgeleid van BSD zijn FreeBSD, NetBSD, OpenBSD, DragonFly BSD en Darwin, wat de basis vormt voor Mac OS X.

Sterke en zwakke punten van Linux en open-sourcesoftware

 

Sterke punten

  • Een Linux-distributie is voor geen of weinig geld (legaal) te verkrijgen.
  • Hiermee samenhangend: er is veel open-sourcesoftware beschikbaar, u aangeboden door een wereldwijd netwerk van programmeurs. Deze software is vaak kwalitatief beter dan commerciële.
  • Linux is leuk om te gebruiken en de mogelijkheden zijn vrijwel onbeperkt. De grootste beperking vormt de gebruiker vaak zelf.
  • Linux is stabiel. De meest voorkomende reden van vastlopers is hardwareproblemen. Er zijn veel mensen die het maanden of zelfs jaren achter elkaar draaien zonder een enkele reboot.
  • Er bestaan geen echte virussen of andere malware voor Linux. Een reëler gevaar vormen crackers (mensen die inbreken in computersystemen).
  • Het is prima te gebruiken op een server. Het is goed in multitasking, biedt geavanceerde firewallmogelijkheden en er is software voor webservers tot nieuws- en FTP-servers.

Zwakke punten

Sommige Linux-gebruikers zien Linux als hét ultieme OS. Ik zal je maar gauw uit die droom helpen: Linux kent ook wel zijn zwakke punten. Zoals eigenlijk met alles, is er geen OS dat voor iedereen en voor alle doeleinden perfect is.

  • Wat de gemiddelde pc-gebruiker lastig vindt wordt door veel technische mensen (die vaak achter open-sourcesoftware staan) zwaar onderschat.
  • Een besturingssysteem als Linux echt goed leren kennen kost wel wat tijd en inspanning.
  • Softwarefabrikanten richten hun software vaak op wat de meeste klanten zullen gebruiken, wat vandaag de dag nog altijd Windows is. Erg veel spellen zijn er bijv. niet voor Linux.
  • Voor hardwarefabrikanten geldt hetzelfde. Het kan zijn dat ze alleen drivers voor Windows maken. Of er drivers voor Linux zijn hangt er dan vanaf of er specificaties beschikbaar zijn van de hardware of dat iemand de moeite heeft genomen de hardware te gaan reverse-engineeren (meestal geen eenvoudige klus).
  • Het enorme aanbod aan open-sourcesoftware heeft als keerzijde dat je wel eens door de bomen het bos niet meer zou kunnen zien.
  • De snelle ontwikkeling heeft ook een keerzijde: informatie en kennis die nu van toepassing is, kan over een jaar al behoorlijk achterhaald zijn.

Waar Linux gebruikt wordt

  • Door mensen in technische vakgebieden en educatieve instellingen.
  • Door steeds meer overheden vanwege de veiligheid, controleerbaarheid en kosten.
  • Door Google, de populairste zoekmachine van het moment.
  • In film- en animatiestudio's zoals Disney, DreamWorks en Pixar.
  • Voor servers, o.a. bij internetproviders.
  • Voor embedded systemen.
  • Door een groeiend aantal bedrijven en thuisgebruikers.

Open-sourcesoftware die erg veel gebruikt wordt:

  • Apache, een webserver (software), wordt gebruikt op een goed deel van alle webservers (hardware).
  • MySQL en PHP, een database en een scripttaal, worden samen veel gebruikt voor dynamische websites.
  • Sendmail, een mailserver, wordt gebruikt op vele mailservers.
  • BIND (Berkeley Internet Name Daemon), een DNS-server, wordt gebruikt op het merendeel van alle DNS-servers.

Deze software is naast onder Linux ook onder verschillende andere OS'en te gebruiken.

Tux de pinguïn

De officiële mascotte en het logo van Linux is Tux de pinguïn, ontworpen door Larry Ewing in 1996 voor een logocompetitie. Linus vond dat het een pinguïn moest worden. De inzending van Larry won. Je komt hem overal tegen, soms enigszins verkleed voor de gelegenheid.

Vrije software vs. open source

Vrije software slaat op het recht van de gebruiker om de software te gebruiken, kopiëren, verspreiden, bestuderen, veranderen en verbeteren. Vrije (Engels: free) software wordt vaak verward met „gratis”. De kostprijs is echter een natuurlijk gevolg. De volgende uitspraak van Richard Stallmann wordt vaak aangehaald om het duidelijk te maken: „Free as in speech, not as in beer.” Stallman en zijn geestverwanten zien vrije software als een sociaal proces: de wereld verbeteren door het verspreiden van vrije software. Software die niet vrij is, zien ze als suboptimaal. Dit is de visie van de FSF, de Free Software Foundation, opgericht door Stallman.

Er is een andere groep die de open-sourcebeweging genoemd wordt. Een van de bekendste personen die hiertoe behoort is Eric S. Raymond, die het Open Source Initiative (OSI) heeft opgericht. Zij hebben geen ethische bezwaren tegen software die niet open source is. Door dit verschil in visie keuren FSF en OSI andere soorten licenties goed. (Maar dit maakt uiteraard niets uit voor de geldigheid van de licentie.)

Meer informatie is te vinden op de websites van GNU en FSF (http://www.gnu.org) en OSI (http://www.opensource.org).

De term „open source” wordt vaak gebruikt om aan te geven dat de broncode van de software vrijelijk beschikbaar is. Het hoeft niet per se te slaan op de open-sourcebeweging.

Licenties

Er zijn verschillende licenties die gebruikt kunnen worden voor open-sourcesoftware. De meest gebruikte zijn GPL (General Public License) en LGPL (Lesser General Public License) van GNU en de BSD- en MIT-licenties.

De GPL-licentie bepaalt dat iedereen de software mag gebruiken (ook voor commerciële toepassingen) en het zonder restricties verder verspreid mag worden. Het is bij verdere verspreiding wel verplicht de broncode te leveren. Bijzonder aan de GPL-licentie is dat het verplicht stelt dat software waar GPL-software in gebruikt wordt ook onder de GPL-licentie wordt uitgebracht. Als gevolg moet de broncode er ook van worden vrijgegeven. Op die manier komt het ter beschikking voor de maatschappij. Sommigen, vooral makers van propriëtaire software, zien dit echter als het „infecteren” van de nieuwe software en zullen iets wat onder de GPL-licentie valt niet snel gebruiken. Alle GNU-software en Linux zijn voorbeelden van software die onder de GPL-licentie verspreid worden.

LGPL is een iets „lichtere” variant. Het stelt niet verplicht dat software waar LGPL-software in gebruikt wordt ook onder de LGPL-licentie wordt uitgebracht. Wel verplicht het wijzigingen in de LGPL-delen vrij te geven. LGPL was oorspronkelijk bedoeld voor library's, omdat die bij uitstek door veel andere software gebruikt worden.

De BSD-licentie is heel eenvoudig. Het vereist dat je de naam van de auteur vermeldt als je de software gebruikt in een ander product. Alle vormen van gebruik en verspreiding zijn zonder meer toegestaan. De besturingssystemen FreeBSD en OpenBSD en de webserver Apache dragen deze licentie. De MIT-licentie is vergelijkbaar. Die vereist enkel dat een verklaring wordt opgenomen waarin alle aansprakelijkheid van de auteur voor schade, in welke vorm dan ook, wordt afgewezen.

 
Was dit artikel bruikbaar? ja / nee
Gerelateerde artikelen Beginnen met Linux
Distributies
Linux een hype?
Windows-gerelateerd
Hardwareondersteuning
Blender - 3d computer graphics
Software
Google Chrome OS ?
Partities
Linux starten onder Windows
Artikel details
Artikel ID: 730
Categorie: Linux handboek 2008
Zoekwoorden linux, wat is Linux, kernel, besturingssysteem, Linus Torvalds, Linus, Torvalds,
Datum toegevoegd: 6-Dec-2008 03:06:27
Aantal bekeken: 202
Beoordeling (Stemmen): Artikel nog niet beoordeeld (0)

 
« Ga terug