1. Unix ? Linux!

1.1. Pár szó a Unix világról

A Unix nem egy új operációs rendszer. Elég régóta (informatikai mértékkel mérve nagyon régóta) stabilan és egyre növekvő arányban jelen van a számítástechnikai világban. Hosszú ideig az egyetemi, kutatói szférában volt egyeduralkodó, és mostanában egyre újabb és újabb területeket (banki, vállalati, adatfeldolgozó szféra) hódít meg. Legfőbb ereje dinamikusságában, alkalmazkodóképességében rejlik: képes ugyanazt a környezetet nyújtani mind a multiprocesszoros mainframe, mind az otthoni 386-os PC-je előtt ülő felhasználónak. Manapság, amikor az otthoni számítogépek teljesítménye, illetve a velük szemben támasztott igények, a végzendő feladatok már egyre közelebb kerülnek a egykori "nagygépek" szintjéhez, egyre inkább szükség van egy olyan környezetre, amely képes hardvertől, platformtól függetlenül mindenhol ugyanazt nyújtani: a számítástechnikai világ "utolérte" a Unix-ot.

1.2. A Unix rövid története

Mert a Unix meglehetősen régi dolog. Első változatát 1969-ben készítette Ken Thomson és Dennis Ritchie az AT&T Bell Labratóriumában egy PDP-7 típusú számítógépre. A rendszer magját 1973-ban átírták C nyelvre - ennek köszönheti a Unix mind a mai napig legnagyobb előnyét, a kőnnyű hordozhatóságot. Az AT&T kezdetben ingyen az amerikai egyetemek rendelkezésére bocsátotta a Unix forráskódját, így tíz éven belül százezer fölé emelkedett a működő Unix rendszerek száma (ne felejtsük, ez még a "hőskorszakban" volt - a 80-as évek elején százezer számítógép még hatalmas nagy szám volt). A gyors terjedésnek azonban jelentkeztek a hátulütői is: nem volt egységes ellenőrzése senkinek sem a forráskód, a rendszer egysége felett, így számos (helyi módosításokon alapuló) változat alakult ki, amelyek közül a két legjelentősebb a Berkeley egyetemen kifejlesztett BSD Unix, amely jelenleg a 4.4-es verziónál tart, illetve az AT&T "hivatalos" változata a System V (System Five, amely a 4. Release-nél tart, rövidítve SVR4), amelyet a Unix System Laboratories fejleszt tovább. (Az USL-t egyébként a Novell vásárolta fel a közelmúltban). Ezen fő változatok mellett számos kisebb-nagyobb alváltozat van forgalomban még napjainkban is.

Amint a Unix egyre népszerűbbé kezdett válni a kereskedelni szférában, egyre több cég ismerte fel egy egységes Unix szabvány fontosságát, és több egységesítő, szabványosító bizottság és csoportosulás kezdett dolgozni. Az USL köré tömörülő cégek az SVR4 mögé sorakoztak fel, a BSD irányból érkezők pedig az OSF (Open Systems Foundation) ajánlását, az OSF/1-et támogatják. Időközben független (nem az érdekelt cégek támogatásával létrejött) bizottságok is próbálták valamennyire egységesíteni a BSD és System V ajánlásokat, és az IEEE kidolgozta (az ANSI és az ISO támogatásával) a "POSIX" (Portable Operating System Interface (x)) ajánlást, amely igyekszik egyesíteni a két fő szabványt. Végül 1993-ban a Novell átruházta a UNIX védjeggyel kapcsolatos jogait az X/Open konzorciumra, amely lényegében a világ összes jelentősebb gyártó és felhasználó szervezetét tömöríti, így tulajdonképpen többé-kevésbé függetlennek mondható.

Fontos megjegyezni a "UNIX" és a "Unix" terminológia közötti különbséget: a szakmában meghonosodott szokás szerint "UNIX"-szal jelölik az "igazi", az USL licensszel rendelkező, USL forráskódból származó rendszereket, míg a "Unix" jelölés általában jelöl mindenféle "Unix típusú" rendszert, amelyek a "józan ész" alapján Unixnak mondhatók, függetlenül attól, hogy van-e valami közük az USL-hez vagy sem. Újabban lehetővé vált, hogy bármely gyártó - függetlenül attól, hogy USL forrásból származik-e a rendszere vagy sem - kérje az X/Open-t, hogy egy szoftver- specifikáció és teszt alapján (ezt nevezik SPEC 11.70-nek) minősítse termékét "igazi" UNIX-nak, az UNIX védjegy viselésére jogosultnak, azonban ez a specifikáció annyira új még, hogy mindezidáig egy cég sem kért ilyen minősítést. A közeljövőben azonban, amint a cégek befejezik termékeik hozzáigazítását specifikációhoz, tömegesen várható az egységes szabványnak megfelelő UNIX rendszerek megjelenése.

Természetesen, mivel a Unix nagyon könnyen hordozható, már elég korán megszülettek az Intel-PC-alapú Unixok is, először csak oktatási célokra (pl. a már 286-oson működő XENIX), majd megjelentek a már komoly munkára is képes PC-s Unix verziók, melyeknek kereskedelmi ára 500 és 2000 $ között van.

1.3. Hogy kerül ide a Linux ?

1.3.1. A lehetőség

Amikor a Unix még csak az egyetemi és akadémiai szférában volt közismert, kialakult körülötte egy hatalmas programkörnyezet: minden egyetem, kutatóintézet elkészítette saját megoldásait felmerülő számítástechnikai problémáira (a szövegszerkesztéstől, táblázatkezeléstől kezdve a mindenféle apró utility-n keresztül a különböző fordítóprogramokig), és mivel ezek az intézmények non-profit szervezetek voltak, elkészült szoftvereiket publikussá tették. Forráskódban, C nyelven adták közre ezeket a programokat, egyre inkább a terebélyesedő Hálózat segítségével, és a C nyelv és az egységes környezet miatt minden Unix felhasználó lefordíthatta, használhatta, módosíthatta és továbbfejleszthette őket szinte teljes szabadsággal. Ennek a folyamatnak az eredményeként alakult meg Richard Stallman kezdeményezésére az FSF (Free Software Foundation) alapítvány, melynek célja egy szabadon (forráskódban is) ingyen hozzáférhető szoftverkörnyezet biztosítása bárki számára, illetve ennek részeként a GNU project (GNU is Not UNIX), amely pedig egy minél teljesebb Unix rendszert kíván létrehozni és biztosítani. Ennek jogi megfogalmazása a GPL (GNU General Public License). GPL alá eső szoftvert bárki készíthet, amennyiben megfelel bizonyos feltételeknek, és jogi (copyright) probléma esetén számíthat az FSF segítségére. GPL alá eső szoftvert bárki használhat, sőt módosíthatja is azt, amennyiben amikor a szoftvert továbbadja, továbbadja annak teljes forráskódját is, esetleges módosításai feltüntetésével. GPL szoftverért pénzt kérni nem szabad, viszont fel lehet számítani a másolással, terjesztéssel, installálással konfigurálással stb. kapcsolatos költségeket. A szoftver módosításáért sem szabad pénzt kérni - GPL forrás módosítva is GPL forrás marad.

1.3.2. Linus Torvalds operációs rendszert ír

Megvolt tehát a GNU környezet: fordítók, segédprogramok, és a szabadon terjeszthető XFree grafikus felület, egy olyan operációs rendszer mag hiányzott csak, amely bizonyítottan szabad (nem tartalmaz copyright alá eső USL vagy BSD kódot). Ennek megírását kezdte el helsinki egyetemista korában Linus Torvalds, hogy aztán több száz segítőjével egyűtt létrehozza azt, amit ma Linuxként ismerünk: egy teljes, szabad operációs rendszert bárki 386-os PC-jére. Bár Linus Torvalds egyedül kezdett hozzá operációs rendszere elkészítéséhez, ma már a Linux oly sokfelé ágazott és akkorára nőtt (ma már talán ez a legtöbb PC-s hardvert támogató szoftver, es átírása más architektúrákra - Sun, MIPS, DEC Alpha, 68000 stb. - folyamatban van), hogy Linus maga már leginkább csak koordinálja a fejlesztéseket.

A Linux jogi értelemben nem UNIX tehát, leghelyesebb volna Unix-klónnak nevezni, és nem is követi szigorúan egyik szabványt sem: sok BSD-s és SYSV jellemvonást egyesít magában. Legközelebb a független POSIX-hoz áll, mind a mai napig a Linux tekinthető a legteljesebb POSIX implementációnak. Maga a Linux, illetve a Linuxon futó szoftverek legnagyobb része a GPL alá esik.

1.3.3. Az Internet közössége felkarolja a fejlesztést

Szót kell itt még ejtenünk még egy fontos dologról, ami nélkül a Linux operációs rendszer nem születhetett volna meg: ez pedig az Internet világhálózat, amely összekötötte a fejlesztőket, és amelyen mindig bárki számára ingyen hozzáférhetők az egyes Linux változatok. A Unix és az Internet mindig is szorosan kötődött egymáshoz: az első IP (Internet Protocol) implementációkat BSD Unix rendszerekre készítették, a Unixot nyíltsága, jól bővíthetősége miatt választották a fejlesztők. Az Internetbe kötött gépek legnagyobb része Unix alatt fut, az Internet szolgáltatásait maximálisan csak Unix alatt tudjuk kihasználni. Manapság talán ez a Unix (Linux) rendszerek gyors terjedésének fő oka. A Linux az Interneten született: bár támogat más hálózati protokollokat is, igazán egyszerűen Internetes környezetbe illeszthető.

A Linux folyamatosan fejlődő rendszer. Gyors fejlődésének és terjedésének egyik oka az, hogy a fejlesztők már a munkaverziókat elérhetővé tették (és teszik jelenleg is) bárki számára, akárki kipróbálhatta (kipróbálhatja) a fejlesztés bármely stádiumában. Teljesen tipikus eset, hogy - mert a teljes forráskód mindig hozzáférhető - hogy az önkéntes (önjelölt) tesztelők a megtalált hibákat már a javítással együtt küldték vissza a fejlesztőknek - az Interneten.

1.4. Kernelek, disztribúciók, verziók

1.4.1. Folyamatosan fejlődő szoftver

Mivel a Linux rendkívül gyorsan fejlődik, (hetente, de néha két-három naponta is jelenik meg új verzió), szüséges talán már itt az elején kis rendet tennni a verziószámok dzsungelében. Legelőször is jegyezzük meg, hogy ha "stabil" verzióról beszélünk, akkor is csak saját felelősségünkre használhatjuk a Linuxot: mivel nem áll mögötte kereskedelmi cég, nincs aki a megbízható működésért garanciát vállaljon. (Ha hajlandók vagyunk áldozni rá, vásárolhatunk support-ot valamely erre szakosodott cégtől - bár Linuxra szakosodott cégek jelenleg leginkább csak az USA-ban működnek - az igyenes Linuxhoz azonban nem jár garancia.)

Ha lefagy, és fontos adataink vesznek el, csak magunkra számíthatunk - azonban a több százezer Linux felhasználó tanúsága szerint a Linuxnak nem igazán szokása lefagyni. Megjegyzendő egyébként, hogy szoftvereik hibamentességére gyakran nagy szoftvercégek sem vállalnak garanciát.

1.4.2. A kernel verziószámáról

Linux verziószám alatt az ún. "kernel", az operációs rendszer mag verziószámát értjük, ez a tulajdonképpeni Linux, azonban mint minden operációs rendszer esetén, önmagában ez nem jó semmire: arra való, hogy más (felhasználói) programokat futtassunk vele (rajta). A kernel verzió- számozása a következő: x.y.z, ahol az x a fő verziószám, ez jelenleg 1 (és még sokáig az is marad), az y, a középső szám az al-verziószám, amely ha páros, akkor az egy "stabil" béta-verziót jelent, és ha páratlan, akkor pedig alfa-verziót, amely tényleg teljesen fejlesztői változat. A harmadik szám, a z pedig az ún. patch-level: az apróbb változtatásokat sorszámozzák ezzel. E sorok irása idején a legutolsó stabil, béta állapotú verzió száma 1.2.11 volt, a fejlesztői verzióé pedig 1.3.10.

1.4.3. A disztribúciókról

Szokás még az ún. disztribúció verziószámáról is beszélni: a disztribúció egy Linux kernelen alapuló teljes (működőképes) Unix rendszer, segédprogramokkal, alkalmazásokkal együtt. Egy disztribúció elkészítése tulajdonképpen a C forrásban meglévő utility-k, programok lefordításából, könyvtárstruktúrába helyezéséből és összekonfigurálásából áll. Sokféle disztribúció létezik, ingyenesek is és kereskedelmiek is - a továbbiakban mi a legjobban elterjedt "Slackware" disztribúciót fogjuk ismertetni, amely ingyenes és az Internetről sok helyről letölthető. Elhangzott, hogy léteznek kereskedelmi (nem ingyenes) disztribúciók is - talán ez furcsa lehet egy szabad szoftver esetén, azonban mint azt már a GPL ismertetésekor láttuk, ezek a cégek nem a Linux-ért kérnek pénzt, hanem a disztribúció összeállításáért, illetve esetleg a disztribúcióban lévő, Linux alatt futó de nem ingyenes szoftverek használatáért.

Tovább...