Ugrás a tartalomhoz Lépj a menübe
 


2008.12.27

AZ Unix :

nem egy új operációs rendszer. Régóta stabilan jelen van a számítástechnikai világban. Hosszú ideig az egyetemi, kutatói szférában volt egyeduralkodó, majd egyre újabb és újabb területeket (banki, vállalati, adatfeldolgozó szféra) hódított meg. Első változatát 1969-ben Ken Thomson és Dennis Ritchie készítette, az AT&T Bell Laborató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 egyes felhasználók azonosítására a "login név" (account) rendszert használja a Unix: minden felhasználónak van egy azonosítója és jelszava. A finomabb hozzáférés-hierarchia kialakítása érdekében a felhasználókat csoportokba oszthatjuk: minden felhasználónak van egy elsődleges csoportja, és ezen kívül tartozhat még más csoportokhoz is. Léteznek kitüntetett felhasználónevek is, illetve legalább egy, amelyik minden rendszerben megvan: ez a "root" felhasználó, a rendszergazda azonosítója, aki felelős az adott rendszer karbantartásáért és üzemeltetéséért, és akinek a rendszeren "mindent szabad": ő az, akinek a rendszer egészéhez hozzáférése van.

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. A gyors terjedésnek azonban jelentkeztek a hátulütői is: senkinek nem volt ellenőrzése 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, illetve az AT&T "hivatalos" változata, a System V (System Five), amelyet a Unix System Laboratories fejleszt tovább. Ezen fő változatok mellett számos kisebb-nagyobb alváltozat van forgalomban még napjainkban is. 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 verziók.

Linux :

Image:tux.gif

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ó segédprogramokon 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á, ingyenesen elérhetővé tették. Már csak egy olyan operációsrendszer-mag hiányzott, amely nem tartalmaz szerzői jogvédelem alá eső programrészeket. 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 Linux-ként ismerünk: egy teljes, szabad operációs rendszert, bárki 386-os (és kompatibilis) 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, hogy ő 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.

A Linux - a DOS-tól eltérően - valódi többfeladatos (multitasking) operációs rendszer. Kihasználva az Intel 80386 processzor nyújtotta fejlett tár és taszkkezelési lehetőségeket, valódi időosztásos környezetet biztosít. A Linux, eltérően a PC-n futó más operációs rendszerektől, nem csak többfeladatos, ahol egy felhasználó egyidejűleg több programot futtathat (mint például a MS-Windows és az OS/2), hanem többfelhasználós is, vagyis egyidejűleg több felhasználó használhatja ugyanazt a rendszert, és mindegyikük akár több programot is futtathat. Ennek megvalósításához azonban szükség volt néhány új fogalom, koncepció bevezetésére: Rögtön első problémaként jelentkezik az, hogy egy PC-nek csak egy billentyűzete, és (kevés kivételtől eltekintve) csak egy monitora van, amit értelemszerűen egyszerre csak egyvalaki használhat. A Unix filozófia minden egyes bejelentkezett felhasználóhoz hozzárendel egy úgynevezett terminált: egy terminál pedig egy billentyűzet + megjelenítő egység (leggyakrabban szöveges display) együttesét jelenti. Az adott Unix-os géphez legközvetlenebbül csatolt terminált (Linux esetén a gép saját billentyűzetét és monitorát) konzol terminálnak nevezzük, ez abból a szempontból kitüntetett, hogy bizonyos rendszeradminisztrációs feladatok csak innen hajthatók végre. További terminálok csatolhatók még a géphez soros vonalon, de köthetünk soros vonalra modemet is: ekkor a felhasználói terminál a telefonvonal "túlsó végén" lesz, távolról is elérhetővé téve rendszerünket. A hálózaton vagy grafikus felületen keresztül bejelentkezett felhasználókhoz ún. pszeudo-terminálokat rendel a rendszer, ahol is a billentyűzet és a képernyő annak a gépnek a billentyűzetéhez és képernyőjéhez rendelődik, amely előtt a felhasználó ül.

A Linux képes arra, hogy többféle fizikai és logikai szervezésű fájlrendszert egy könyvtárszerkezetben kezeljen: támogatja többféle Unix-os fájlrendszer-formátum mellett a DOS FAT fájlrendszert, tudja olvasni az OS/2 HPFS fájlokat, ismeri a CD fájlformátumokat, és tudja kezelni a TCP/IP hálózat felett működő hálózati fájlrendszert, az NFS-t is.

A Linux, több ezer más, szabadon hozzáférhető szoftvercsomaggal együtt tesz ki egy disztribúciót. Több száz, különböző Linux disztribúció létezik, ezek közül a legnépszerűbbek: a Red Hat, a SuSE Linux, a Debian, a Slackware Linux Project és a Mandrake, valamint érdemes megemlíteni a magyar fejlesztésű UHU Linux disztribúciót. A Linux telepíthető optikai médiumról (CD, DVD), vagy más tárolóeszközökről, a helyi hálózaton keresztül, vagy az Internetről. Sőt, egyes disztribúciók (SuSE Live Eval, Knoppix) olyan módon is használhatók, hogy telepítésre, sőt merevlemezre sincs szükség: az ún. "live" CD-ROM-ról indítva a számítógépet, grafikus felülettel használható Linux-ot futtathatunk.

A Linux-ot használják oktatási és kutatási területen, nagyvállalatoknál, kormányzati intézményekben; számítógépes tervezési, grafikai és animációs feladatokhoz, stb. A modern Linux disztribúciók egyre komolyabb versenytársai a Microsoft operációs rendszereknek: egyrészt hálózati kiszolgálóként (az Internetre kapcsolt webszerverek kb. fele valamely Linux operációs rendszert futtat), de egyre inkább asztali operációs rendszerként használva is: ingyen nyújtják mindazokat a szolgáltatásokat, melyeket egy otthoni PC-től elvárhatunk (magyar nyelvű kezelőfelület és felhasználói dokumentáció, multimédia alkalmazások, Internet-elérés és elektronikus levelezés, DVD-lejátszás, CD- és DVD-írás, játékok, irodai alkalmazások, stb.).

A Linux könyvtárstruktúra

Ahogy a Windows telepítésekor is (pl. Windows, Dokumentumok, Program Files mappák), úgy a Linux esetében szintén létrejön egy alapértelmezett könyvtárrendszer. Bár a különböző Linux disztribúciók eltérő szerkezetet használhatnak, a könyvtárhierarchia legtöbbször hasonló. A gyökérkönyvtár: /, innen nyílnak a fő könyvtáraink, ezek rendszerint az alábbiak:
/bin - Rendszerparancsok, programok
/boot - A Linux kernel (rendszermag) és rendszerindítási információk
/dev - Linux eszközfájlok (a hardverösszetevőknek megfelelően)
/etc - Rendszerbeállítások, rendszerösszetevők
/home - A felhasználók saját könyvtárai
/usr/include - Az ún. header fájlok tárolóhelye
/lib - Szoftverösszetevők, programerőforrások, kernel modulok
/usr/lib - További szükséges szoftverösszetevők
/mnt - Az ideiglenesen csatlakozó tárolóeszközök - CD, DVD, hálózati könyvtár - becsatolási (mount) pontja
/opt - Opcionális szoftverek
/proc - Linux kernel folyamatok
/root - A root felhasználó saját könyvtára
/sbin - A rendszerint a root felhasználó által használt programok
/share - Közös használatú fájlok (pl. ikonok, súgófájlok, hangfájlok, stb.)
/tmp - Ideiglenes tárolómappa
/usr - Felhasználói és root programok, az X-Window rendszer és helyi rendszerfájlok
/var - Változó adatok, rendszernaplók, web- és ftp szerver fájlok, stb.

A Linux grafikus felülete

Amikor a UNIX rendszerek először megjelentek, még enm rendelkeztek grafikus felhasználói felülettel. A hálózatok akkor még igen lassúak voltak, ezért az áthaladó információk mennyiségét minimális szinten kellett tartani - gyakorlatilag minden tevékenységet szöveges konzolon végeztek. Az első grafikus munkakörnyezet a 70-es évek közepén, a Xerox Palo Alto kutatóközpontjában született meg.

A mai Linux grafikus környezet több, különálló program, ill. szolgáltatás együttes működésének eredménye. Az X-Window rendszer (X11R6, X11, vagy egyszerűen X) a Linux és UNIX grafikus felületének alapja. Kliens/szerver modellt használ, olyan módon tervezték meg, hogy képes legyen nagy, akár több ezres hálózatokban működni. Az alkalmazások az X protokollt használják arra, hogy a grafikus alrendszernek megadják a megrajzolandó grafikus elemek (szöveg, négyzögek, ívek, stb) tulajdonságait. A megjelenítő rendszer, az X-szerver foglalkozik a megjelenítéssel és az input eszközök figyelésével, az alkalmazás pedig ebben a vonatkozásban az X-kliens, ami az X-szerverhez juttaja el grafikus kéréseit (mivel az X hálózati protokoll, ezért a kérés érkezhet akár a világ legtávolabbi sarkából is). Az X első linuxos változata az XFree86 2.1 volt; ma már majdnem minden Linux disztribúció tartalmazza, és több száz hardvereszköz (videokártya, monitor, billentyűzet, és egér) kezelésére.

Az X önmagában nem szabja meg, hogy egy grafikus felületnek hogyan kell működnie vagy kinéznie. Hogy használata egyszerűbb legyen, és ne kelljen egy alkalmazás fejlesztőjének közvetlenül a megjelenítési feladatokkal foglalkoznia, léteznek olyan X grafikus eszközkészletek (widget toolkit-ek, pl. Motif, Qt, GTK+), melyek ezt a feladatot elvégzik.

X

Az X használatát nagy mértékben megkönnyítik az ablakkezelő rendszerek (window manager-ek). Ezek olyan X-kliensek, programok, melyek a képernyűn megjelenő grafikus elemeket (ablakok, ikonok, gombok, gördítősávok, menük, hátterek, stb.) és azok viselkedését (mozgatás, átméretezés, fókusz, stb.) irányítják. Ebbe a kategóriába sorolható például az icewm, fvwm, twm, sawfish, metacity.

KDE
Gnome
Red Hat

Az újonc Linux-felhasználó általában a window manager-eknél összetetteb rendszerekkel találkozik: ezek az X grafikus munkakörnyezetek (desktop environment-ek). Az ablakkezelésen túl további fejlett szolgáltatásokat is nyújtanak: egységes grafikus megjelenés, programok közti kommunikáció, drag-and-drop műveletek, és még több száz szolgáltatás, melyek együttese adja ki az X munkakörnyezetet. A két legnépszerűbb rendszer ezek közül a KDE és a GNOME. A KDE ("K" Desktop Environment) 1996-ban született, legújabb verziója több száz, KDE-specifikus alkalmazást tartalmaz (KWin ablakkezelő, Konqueror fájlkezelő és webböngésző, KMail e-mail kliens, KOffice irodai szoftvercsomag, multimédia programok, játékok, adminisztrációs és rendszerfelügyeleti eszközök, stb.). A Linuxon kívül más UNIX változat alatt is futtatható (HP-UX, Solaris, FreeBSD, IRIX).
A
GNOME (GNU Network Object Model Environment) fejlesztése 1997-ben kezdődött. A GNOME nem kötődik egy meghatározott ablakkezelőhöz, azt a felhasználó tetszése szerint megválaszthatja. A GNOME a Gimp Toolkit-et (GTK+) használja minden grafikus alkalmazáshoz. A GNOME Session Management segítségével a programok támogatja a session-öket, az egyes felhasználók személyes beállításainak kezelését. A GNOME alkalmazások támogatnak több "Drag and Drop" protokollt, így biztosítva az együttműködést más alkalmazásokkal. A GNOME támogatja az OpenGL-es 3D-s programozást, ezzel a programozók háromdimenziós grafikát is használhatnak az alkalmazásaikban.