A Linux világa

A szabad szoftver születése

2008. február 29.

A nyílt forráskód legismertebb képviselői a különféle Linux disztribúciók. Azonban azt kevesen tudják, hogy a nyílt forráskódú fejlesztési modell már korábban megszületett - a Linux mindössze sikerre vitte azt, és bebizonyította életképességét. Ugyanakkor a Linux sikeréhez nagyban hozzájárultak a korábban indult nyílt forrású projektek. Sorozatunk tizenegyedik részében a szabad szoftverek születését mutatjuk be.

A számítógépek az ötvenes években kezdtek elérhetővé válni a kutatók számára, és egészen a nyolcvanas évekig elzárva maradtak a tömegek elől. Ekkoriban a kutatók közösen használtak egy-egy gépet, és mindent megosztottak egymással. Az egyes intézetekben dolgozók pedig gyakran adták át egymásnak a fejlesztéseiket, így akkoriban az informatika fejlődése nagyon hasonló volt ahhoz, ahogy ma a nyílt forráskódú modell működik - azonban ekkoriban ezt még senki sem hívta így.

A szabad szoftver mozgalom szellemi atyja és megalapítója, Richard M. Stallman (akire gyakran csak mint rms-re hivatkoznak) 1971-ben kezdett el dolgozni a legendás amerikai tudományos egyetemnél, a MIT-nél (Massachusetts Institute of Technology - Massaschusetts-i Technológiai Intézet). Stallman a mesterséges intelligencia kutatásával foglalkozó részlegnél dolgozott, ahol a kor egy legendás számítógépét, a PDP-10-est használta. A gépen egy ITS (the Incompatible Timesharing System - Inkompatibilis időosztásos rendszer) nevű operációs rendszer futott. Stallman egyike volt azoknak a hackereknek, akik a rendszer továbbfejlesztésén dolgoztak.

A hacker szóra talán többen felkapták a fejüket, hiszen sajnos a tömegmédia hatására sokan rosszul ismerik a kifejezés jelentését. A hackerek nem valamiféle internetes bűnözők - a legnagyobb tudású, lelkes programozók nevezik így magukat. Stallman ezt úgy fogalmazta meg, hogy a hacker az, "aki imád programozni, és élvezi, hogy ügyesen csinálja" (forrás).

A nagy számítógépek köré tömörülő közösség azonban a nyolcvanas évek elejére összeomlott. A Digital befejezte a PDP-10-es fejlesztését, és az intézetnek új gépek után kellett néznie. A kor modern gépei, mint a VAX vagy a 68020-as saját operációs rendszerrel rendelkeztek, azonban ezek nem voltak szabadok - már ahhoz is alá kellett írni egy titoktartási szerződést, hogy egyáltalán egy futtatható másolatot kapjanak. Ez gyakorlatilag azt jelentette, hogy tilos segíteni a másiknak. Megtiltották a közösségek együttműködését, az új szabály pedig így hangzott: "Ha segítesz másoknak, kalóz vagy. Ha bármilyen módosításra lenne szükséged, könyörögj nekünk, hogy csináljuk meg."

A fejlesztők jelentős része beállt a sorba, és elfogadta az új játékszabályokat. A korábban élő, aktív közösségeket szétverték. Richard Stallman számára ez komoly morális dilemmát jelentett. Számára egy ilyen szerződés elfogadhatatlan volt. Felmerült benne, hogy elhagyja az informatika területét, azonban ez azt jelentette volna, hogy veszni hagyja a tudását. Ezért tovább gondolkodott. A kérdés az volt, hogy tudna-e olyan programot írni, ami újraélesztené a korábbi közösségeket?

A válasz kézenfekvő volt: operációs rendszert kell fejleszteni. Ez a legfontosabb szoftver ahhoz, hogy el tudjunk kezdeni használni egy számítógépet, és ez az, amire minden más is építkezhet. Stallman 1984-ben elhagyta a MIT-et, hogy az új projekt jogilag teljesen független legyen az intézménytől, és munkához látott. Így született meg a GNU projekt, aminek jelentése (GNU's not Unix - a GNU nem Unix). Winston professzor, a MIT mesterséges intelligenciát kutató laboratóriumának vezetője megengedte ugyanakkor Stallmannak, hogy továbbra is használja az egyetem infrastruktúráját.

Stallman ekkor fogalmazta meg a szabad szoftverek alapelveit:

A megfogalmazott elveket azonban jogilag is értelmezhető formába kellett önteni: így született meg a GPL (General Public License), vagyis az általános nyílt licenc, amit ma a legtöbb nyílt forráskódú program használ. A licenc garantálja a fenti elvek sértetlenségét, és egy biztonsági kitétel is belekerült. Ez kimondja, hogy a módosított programnak továbbra is GPL licenc alatt kell maradnia, ha pedig valaki ilyen kódot épít a saját alkalmazásába (legyen akár az csak pár sornyi), akkor a teljes forráskódot ki kell adnia, a GPL licenc feltételeinek megfelelően. Ez biztosítja, hogy senki ne tehesse meg azt, hogy egy nyílt forráskódú programot továbbfejleszt, majd bezárja a kódot, így visszatartva a fejlesztéseit a közösségtől.

Ekkor kezdődött meg a ma is ismert első szabad szoftverek fejlesztése, mint amilyen például a GCC fordító (ami ma is szinte minden nyílt forráskódú program alapja), vagy a GNU Emacs. A legfontosabb szabad szoftvereket támogató alapítvány, az FSF 1985-ben alakult meg. 1987-ben megszületett a Bash shell, vagyis az a szöveges terminál, amit jól ismerhetünk a Linuxból. A fejlesztés jól haladt, és 1991-re szinte minden alapvető fontosságú elem elkészült. Már csak egyvalami hiányzott - egy kernel, vagyis rendszermag.

Ekkoriban kezdett egy finn egyetemista egy saját projekten dolgozni - Ő volt Linus Torvalds, a Linux kernel atyja. Linus 1991. augusztus 25-én az alábbi levelet küldte a Minix levelezőlistájára:

Üdvözletem minden minix felhasználónak

Egy (szabad) operációs rendszeren dolgozom (csak hobbi, nem lesz olyan nagy és professzionális, mint mondjuk a gnu) a 386/486 AT kompatibilis gépekre. Áprilisban kezdtem dolgozni rajta, és most már kezd szépen alakulni. Örülnék, ha visszajeleznének azok, akik szeretik vagy utálják a minixet, mivel az én operációs rendszerem arra emlékeztet valamennyire (hasonló felépítésű fájlrendszer (praktikus okokból) többek között).

Már portoltam a bash-t (az 1.08-ast) és a gcc-t (az 1.40-est), és úgy tűnik, működik. Ez azt jelenti, hogy pár hónapon belül egész használható lesz, ezért szeretném tudni, hogy milyen szolgáltatásokat szeretnének az emberek. Minden javaslatot szívesen fogadok, de azt nem garantálom, hogy be is kerül :-)

forrás: linux.org

Vagyis adott volt egy kernel, alkalmazások nélkül, és egy alkalmazásgyűjtemény, kernel nélkül. Hamarosan a GNU projekt és a Linux egymásra talált, és megszületett a GNU/Linux. Az első Linux disztribúciókra sem kellett sokat várni: 1992 közepén jelent meg az SLS, vagyis a Softlanding Linux System, amely már tartalmazta a Linux kernelt és az alapvető eszközöket, köztük egy TCP/IP stacket és az X Window grafikai rendszert. A Debiant pedig 1993. augusztus 16-án jelentették be - erről részletesebben a sorozat 3. részében írtunk.

A Linux sikerei másokat is arra ösztönöztek, hogy nyílt forráskódú projektbe vágjanak. Nem sokkal később pedig már az lett az új trend, hogy zárt forráskódú alkalmazás kódbázisát nyitják meg a közösség előtt. Így született meg az OpenOffice.org irodai programcsomag, ami a korábban zárt forráskódú StarOffice megnyitott kódjára épül, vagy a Firefox böngésző, ami a Netscape megnyitott kódbázisán alapul. Sőt, a Sun egy teljes operációs rendszer, a Sun Solaris forráskódját adta ki szabad licenc alatt.

A nyolcvanas évek elejének trendje tehát mára megfordult - egyre többen ébrednek rá, hogy a nyílt forráskódú fejlesztési modell sokkal hatékonyabb és eredményesebb, mint a zárt forráskódú modell. Azonban van valami, ami még a gazdasági hatékonyságnál is sokkal fontosabb: ez pedig a szabadság. Ma már az életünk egyre nagyobb része zajlik számítógépeken - ezt használjuk levelezésre, és csevegésre, ezen tároljuk kedvenc filmjeinket és zenéinket, itt tartjuk személyes fényképeinket és írásainkat. Lassan ugyanolyan fontossá válik számunkra, mint a minket körülvevő tapintható világ.

A nyílt forráskód a szabadságot hozta el a felhasználóknak - hogy a számítógépet úgy használhassák, ahogy az nekik tetszik, miközben nem kötik őket gúzsba szigorú licencfeltételekkel, és nem kell attól tartaniuk, hogy a szoftver fejlesztője titokban hátsó ajtót vagy kémprogramot csempészett a számítógépükre. Ez a szabadság pedig ma nem létezne, ha a 80-as évek közepén egy idealista hacker, Richard M. Stallman nem meri otthagyni a kényelmes, jól fizetett kutatói állását, és belevágni valamibe, amit ma úgy ismerünk: szabad szoftver.

Forrás és háttéranyagok:
Richard M. Stallman weboldal
GNU.org - a GNU projekt
A Free Software Foundation (FSF) oldala
A linux.org Linus Torvaldsról szóló oldala
Wikipedia: Softlanding Linux System