Vrije software en Linux

Definitie

Volgens Wikipedia is computer software "de Engelse term voor alle computerprogramma's, bibliotheken en bijbehorende data die niet aanwezig is bij het starten van een computer maar achteraf wordt geladen en is daarom een zeer vage term". De term software wordt vaak gebruikt om een computer programma aan te duiden, en andersom. Software kan bestaan uit één enkel, uniek computer programma, zoals het vooral in de moderne microcomputer wereld wordt toegepast, waar de kracht van de processoren en de beschikbaarheid van goedkoop geheugen het mogelijk maken om grote uitvoerbare programma's te maken.

In het algemeen is software niet alleen samengesteld uit één of meer programma's, maar ook uit gegevens die het mogelijk maken dat de software werkt. De programma's kennen verschillende verschijningsvormen: uitvoerbare programma's (executables), dynamische bibliotheken (Windows .dll of GNU/Linux .so bestanden), of bron-bestanden die bestemd zijn voor een interpreter (bijvoorbeeld Perl scripts of PHP). De gegevens kennen op hun beurt ook verschillende varianten: klassieke bestanden, databases (relationele, hiërarchische, etc.). In de microcomputer wereld zijn grafische bestanden, vooral iconen, vaak geïntegreerd in een uitvoerbaar bestand.

Algemene Definitie van Software

Software bestaat uit instructies die worden uitgevoerd door een computer, in tegenstelling tot het fysieke apparaat waarop het wordt uitgevoerd (de "hardware"). Een "programma" bestaat uit een serie van instructies die door een programmeur is samengesteld met behulp van een programmeertaal (zoals C, C++, Java of Python), en bestaat vaak uit een enkel bestand.

De term "software" wordt daarentegen gebruikt om een een hoeveelheid instructies te beschrijven die is vastgelegd in één of meer programma's. Het programma is leesbaar voor een elke persoon met de daartoe benodigde kennis. Deze verschijningsvorm van een programma wordt de broncode of "source code" genoemd. Deze broncode kan worden gezien als het recept van het programma, en wordt goed bewaard door de bouwers ervan (alleen met zogenaamde vrije of open source software wordt de broncode meegeleverd).

Vervolgens wordt door middel van een compiler deze broncode vertaald naar machinetaal. Machinetaal bestaat uitsluitend uit binaire reeksen, die vaak worden uitgedrukt in series van de cijfers 0 en 1. Alleen machinetaal wordt door de hardware begrepen. Na de compilatie worden de binaire bestanden (binary's) verkregen, die door de machine kunnen worden uitgevoerd.

Elk besturingssysteem (Microsoft Windows, Mac OS, Linux, BSD, etc.) heeft zijn eigen vereisten voor een binary, dus zal een binary alleen geschikt zijn voor het platform waar het voor gecompileerd is. Na compilatie kan de resulterende binaire software worden geïnstalleerd en uitgevoerd. Software kan als volgt worden ingedeeld:

Presentatie van vrije software

Hoe het begon ...

Het verhaal begint aan het begin van de tachtiger jaren, toen Richard Stallman, een onderzoeker van het MIT (Massachusetts Institute of Technology, U.S.A.), zich gesteld zag voor een gewetenskwestie op het moment dat de IT onderzoeksafdeling waartoe hij behoorde had opgehouden te bestaan. Jarenlang had hij met grote overtuiging zijn kennis met vakgenoten gedeeld. Nu werd hij geacht zijn kennis te verkopen aan de hoogste bieder, en zo de kans te verliezen om zijn opgedane kennis beschikbaar te stellen aan de rest van de wereld.

Om met zichzelf in het reine te komen bedacht RMS het principe van vrije software, zodat zijn kennis voor een grotere groep mensen bereikbaar werd. Hij stelde vier elementaire principes voor vrije software op:

Het GNU Project

Nadat hij deze verklaring had opgesteld, creëerde Stallman de Free Software Foundation , die de verspreiding en de ontwikkeling van vrije software tot doel had. Via deze stichting startte startte hij met het schrijven van programma's die de basis van een compleet vrij systeem moesten gaan vormen. Om de GNU software te beschermen tegen commercieel misbruik besloot Richard Stallman om een speciale licentie op te stellen: de GNU Public License. Deze bevatte weer de vier elementaire principes, en alle beschikbare juridische bepalingen die bescherming konden bieden.

De vuurproef voor de GPL vond overigens twintig jaar later plaats, in 2004, toen een rechter in Duitsland bepaalde dat een bedrijf de bepalingen van de GPL overtrad. Hij noemde het geheel project GNU, een recursief acroniem voor "GNU's Not Unix". Hierbij moet men bedenken dat Unix in het begin van de jaren '80 het schoolvoorbeeld was van een proprietary systeem.

Het Open Source initiatief

Een andere beweging verscheen aan het einde van de vorige eeuw, 1998 om precies te zijn. Deze stroming van voorstanders van vrije software beschouwde zich als "soepeler" dan de FSF. Alles is begonnen met de aankondiging van Netscape dat het software vrij ging maken. Een groep voorstanders van vrije software wilden hierop inhaken, en hebben zich hierbij laten leiden door het Debian concept van vrije software . Hun tien criteria zijn hier te vinden: originele versie van de OSI licentie (versie 1.9)

Vrije software begrijpen

Waar komt "vrije software" vandaan?

De eerste vrije software werd ontwikkeld door Richard Stallman zelf. Hij maakte ontwikkelsoftware die onmisbaar was om zijn doelstellingen te realiseren. Dat was op de eerste plaats ontwikkelsoftware en andere programma's om vrije ontwikkeltools te realiseren. Na enige tijd was de basis om het vrije besturingssysteem te ontwikkelen gelegd, en restte er alleen nog de kernel met de naam Mach, de basis van zijn besturingssysteem, die hij Hurd noemde. Hij stelde zichzelf een voor die tijd technologisch zeer ambitieus doel: de ontwikkeling van een micro-kernel. De ontwikkeling van deze kernel verliep niet zo voorspoedig als gewenst: twintig jaar later was het Hurd systeem nog steeds niet productierijp. In 1991 besloot een Finse student, Linus Torvalds, om de werking van x386 processoren te bestuderen en schreef hiervoor een programma dat aan de POSIX-normen (standaarden uit de Unix-wereld) voldeed. Hij schreef een kernel, en maakte daarbij gebruik van de GNU software voor Unix. Omdat al deze software onder de GPL licentie valt, bracht hij zijn kernel eveneens onder GPL licentie uit. Door de combinatie van de GNU software en de Linux kernel versnelde de ontwikkeling in een razend tempo dankzij de hulp van hackers. De term hacker betekent van oorsprong IT enthousiasteling, en niet computer crimineel zoals het woord tegenwoordig veel gebruikt wordt. Bij de officiële lancering van versie 1.0 in maart 1994 had Linux reeds een solide reputatie verworven. Hoewel het tot dan toe vooral het domein van hackers was, beloofde Linux veel voor de toekomst. Sinds december 2003 is kernel 2.6.x beschikbaar, die de mogelijkheden van het GNU/Linux/systeem nog verder verbeterde. De motor achter de ontwikkeling van vrije software is het internet: eigenlijk is het zo dat het informatieverkeer de levensader is van de vrije software gemeenschap. Het GNU/Linux systeem is het meest in het oog springende voorbeeld hiervan: dit systeem had waarschijnlijk nooit het daglicht gezien zonder informatieuitwisseling tussen ontwikkelaars die zich verspreid over de hele wereld bevinden. Als gevolg hiervan is de vrije softwaregemeenschap verrijkt met software die evenzeer gevarieerd als effectief is in alle domeinen (kantoorsoftware, Computer Aided Design (CAD), internet browsers, instant messaging, etc.). Hoewel oorspronkelijk ontwikkeld voor vrije systemen als GNU/Linux en BSD, is veel hoogwaardige software nu ook beschikbaar voor Microsoft Windows en Mac OS. Daarbij tonen ze zich in vele gevallen de evenknie van, en niet zelden superieur aan, de producten uit de proprietary software wereld. Hier is een opsomming van bekende en kwalitatief hoogwaardige vrije software, die beschikbaar is voor alle platformen:

De vrije software is volwassen geworden na twintig jaar, en de vrije softwaregemeenschap is tot rijpheid gekomen. Dit is het tijdperk van de erkenning. De principes die aan de ontwikkeling ten grondslag liggen zijn gestabiliseerd. Vrije software heeft een degelijke reputatie opgebouwd, op zodanige wijze dat de grootste bestuurslichamen op deze planeet niet meer aarzelen om gebruik maken van vrije software.

Waarom moet ik vrije software gebruiken ?

Vanwege de ethiek

Dit is een tijdperk dat burgers zich steeds meer bewust worden van problemen rond het uitputten van energiebronnen en de verwerking van afvalstoffen, waarvoor duurzame ontwikkelingen nodig zijn. De ontwikkeling van vrije software ligt in deze lijn van het streven naar duurzame ontwikkelingen, volgens de volgende definitie van een overheid: "een ontwikkeling die beantwoordt aan de behoeften van hier en nu zonder de mogelijkheden van toekomstige generaties aan te tasten om aan hun behoeften te voldoen." (1987 - Mw. Gro Harlem Bruntland, vroegere minister-president van Noorwegen).