Hálózatok, elosztott rendszerek Dr. Kallós Gábor
2007-2008.
Hálózati alapfogalmak
Széchenyi István Egyetem
Az elosztott rendszer fogalma •
•
Elosztott rendszernek (hálózatnak) nevezzük azt a – kommunikációs csatornán keresztül összekötött, autonóm műveletvégző egységekből álló – számítógépes rendszert, amely a komponensek összehangolásával képes informatikai feladatok közös megoldására A procik együttműködésének természete alapján az elosztott rendszer lehet – Szorosan csatolt (multiprocesszor) – a procik közös órajelet használnak, és részben vagy egészben osztott, közös memóriát – Lazán csatolt – a prociknak független környezetük van, nincs közös órajel és osztott memória, a kommunikáció fizikai hálózaton keresztül történik – A kétféle típusú rendszerben lényegesen különböző problémák adódnak
• • •
A szakirodalomban elosztott rendszer alatt kizárólag lazán csatolt rendszert értenek, mi is ezt fogjuk használni a továbbiakban A hálózat lehet egyenrangú és nem egyenrangú gépekből álló A nem egyenrangú hálózatokban van néhány kitüntetett szerepű számítógép, ami a többi gép számára kiszolgáló, szolgáltató jellegű – Szerver és kliens vagy munkaállomás
•
Az elosztott rendszerek alkalmazása igen széles, az élet szinte minden területén megtaláljuk őket, pl: – Multimédia hálózatok, irodai és banki alkalmazások 2
Hálózati alapfogalmak
Széchenyi István Egyetem
Az elosztott rendszerek jellemzői •
Gyors terjedésük fő oka, hogy lehetőséget biztosítanak olyan előnyös számítástechnikai környezet kialakítására, amely integrált rendszerrel nem, vagy csak nehézkesen valósítható meg – Fontos motiváció pl. a kommunikációs igény (levelezés, információ csere), a közös erőforrások használatának igénye, a biztonság növelése (ld. köv. pont)
•
Az ilyen rendszer tulajdonságai: – Erőforrás-megosztás (Resource Sharing) • Az erőforrás lehet hardver- vagy szoftverelem is • Hardver elemeknél cél a (drága) perifériák minél jobb kihasználása, a költségtakarékosság (nyomtatók, háttértárak) • A szoftver erőforrások megosztása elsősorban a hatékonyság növelését szolgálja (pl. raktárkészlet nyilvántartás, helyfoglaló rendszerek vagy közös fejlesztésű szoftver) – De persze mindig vannak olyan erőforrások is, amiket nem lehet, vagy nem célszerű megosztani (pl. a memória)
• Az erőforrás kezelésre leggyakrabban a kliens-szerver modellt használják, eszerint a szerver a szolgáltató, és ő nyújtja a szolgáltatást a kliensek (ügyfelek) részére • A kliens a szolgáltatáshoz egy előre definiált protokoll szerint kérést küld a szervernek, a szerver pedig egy válasz üzenetben értesíti őt a szolgáltatás megvalósulásáról ill. az esetleges hibákról
3
1
Hálózati alapfogalmak
Széchenyi István Egyetem
• Az elosztott rendszerek tulajdonságai (folyt.): – Nyílt rendszer (Open System) • Egy rendszert akkor tekintünk nyílt rendszernek, ha az támogatja önmaga új hardver- ill. szoftverelemekkel történő bővítését – Hardverbővítés lehet pl. egy új periféria vagy új memóriaelem, szoftverbővítés pedig az op. rendszer új funkcióval történő ellátása
• A nyílt rendszerek létrehozásának legfontosabb eszköze és ismérve a rendszer komponensei közötti interfészek alapos specifikációja és az specifikált interfészek publikációja – Hagyományosan a számítógéprendszerek általában nem voltak nyitottak, a UNIX támogatta először a nyílt rendszerarchitektúrát, ennek hatására alakultak ki később a nyílt rendszerek
• A jól definiált interfészek lehetővé teszik a különböző gyártóktól való komponensek biztonságos beépítését is
– Méretezhető rendszer (Scalability) • A rendszer méretezhető, ha kapacitása és mérete megnövelhető anélkül, hogy a rendszer működő részeiben lényeges változtatást kellene végezni – Ilyen probléma adódott pl. az eredetileg hatjegyű mobilszámokkal, mert nem bizonyult elégnek az egymillió lehetőség
4
Hálózati alapfogalmak
Széchenyi István Egyetem
• Az elosztott rendszerek tulajdonságai (folyt.): – Konkurrens (párhuzamos) működés (Concurrency) • N processzor esetén elvileg N folyamat futhat párhuzamosan a rendszerben, ez egy részekre bontható feladat végrehajtási idejét jelentősen lerövidítheti • Szinkronizáció és kommunikáció szükséges
– Hibatűrés, megbízhatóság (Fault Tolerance, Reliability) • Hibatűrő rendszer: képes az előforduló hibákat úgy kezelni, hogy a rendszer funkcionalitása ne, vagy csak kismértékben változzon • A hibatűrővé tétel legalapvetőbb eszköze a redundancia alkalmazása – Homogén (azonos funkcionalitású csomópontokból álló) hálózat esetén egy tartalék gép veheti át bármikor a meghibásodott csomópont szerepkörét – A „szavazó rendszerben” legalább 3 párhuzamosan működő komponens ugyanazt a feladatot oldja meg, és a végső kimenetet többségi szavazógép állítja elő – csak akkor lehet gond, ha ugyanaz a hiba fordul elő több komponensnél
• Recovery block módszer – a program futásába checkpoint-okat iktatnak be, és eléréskor mindig elmentik az adatokat egy független tárba. Ha az ellenőrzés később hibát talál, a korábbi állapot visszaállítható. 5
Hálózati alapfogalmak
Széchenyi István Egyetem
• Az elosztott rendszerek tulajdonságai (folyt.): – Áttetszőség (Transparency) • Áttetszőség: a rendszer elfedi a felhasználó elől az egyes szolgáltatások ill. erőforrások fizikai elhelyezkedését • Ilyenkor az elérési mód független a szolgáltatás vagy az erőforrás fizikai helyétől, pl. – Hozzáférés áttetszősége: lokális és távoli adat(objektum)ok azonos módon kezelhetők – Elhelyezkedés áttetszősége: adat(objektum)ok kezelése anélkül, hogy elhelyezkedésüket ismernünk kellene » Ezekre példa az e-mail rendszer kialakítása intézményeken belül, nálunk jó a
[email protected] és a
[email protected] is, az aktuális mail szervert nem kell megadni – Vándorlás áttetszősége: adat(objektum)ok hordozásának a lehetősége anélkül, hogy a felhasználók ill. programok ezt észrevennék
• Megj: A fenti tulajdonságok megléte nem egyenes következménye az elosztott felépítésnek, de kialakításukra az elosztott struktúra ad lehetőséget – Gondos tervezés szükséges a topológiánál és a szoftver komponenseknél 6
2
Hálózati alapfogalmak
Széchenyi István Egyetem
• A hálózatok megvalósításához szükséges elemek: – Számítógépek – Hálózati jelek továbbítására alkalmas átviteli közeg • Koaxiális kábel, csavart érpár, fénykábel, mikrohullám
– A számítógépekhez a hálózaton érkező jelek fogadására alkalmas berendezések, kártyák – A jelek erősítésére, a különböző hálózatok illesztésére alkalmas berendezések (kapcsoló elemek) – A hálózatot kezelni tudó operációs rendszer (szerver és munkaállomás) • A hálózatok fontos elemei azok a szoftver komponensek, amelyek az elosztott hardver elemeket egységes rendszerré fogják össze, és képessé teszik feladatok hatékony és közös megoldására • Az integráló feladatot általában az elosztott hardveren futó (hálózati) operációs rendszer valósítja meg (plusz feladatok pl: erőforrás-megosztás, távoli gépek közötti kommunikáció) 7
A hálózatok struktúrája
Széchenyi István Egyetem
Az elosztott rendszerek osztályozása •
Az elosztott rendszereket a csomópontokat összekötő hálózat mérete alapján osztályozzuk: – Lokális (helyi) hálózat (LAN – Local Area Network) • Kisméretű hálózat, egy épületen belül, vagy néhány szomszédos épületen belüli gépek, jellemző a nagy adatátviteli sebesség és a megbízható adatátvitel • A 70-es évektől kezdve terjedtek el (perifériák jobb kihasználása)
– Távoli csomópontokat összekötő hálózat (WAN – Wide Area Network) • Ilyen az Internet is, amely lokális és távoli hálózatok összekapcsolásával számítógépek milliói között teremt összeköttetést • A WAN-ok a 60-as években jelentek meg • A gépek általában nem közvetlenül, hanem valamilyen kommunikációs processzorokból álló kommunikációs hálózat segítségével vannak összekötve • Az átviteli sebesség kisebb, mint a LAN-oknál, és előfordulhat adatvesztés, ill. az üzenetek sérülése (ezt megfelelő módon kezelni kell)
8
A hálózatok struktúrája
Széchenyi István Egyetem
LAN topológiák • A topológia a hálózat elemi struktúráját szemlélteti – Fizikai topológia: a kábelezést és a berendezések elrendezését írja le • Három alapvető típus: csillag, sín és gyűrű
– Logikai topológia: az adatok áramlását szemlélteti
9
3
Széchenyi István Egyetem
Hálózati szabványok
Szabványok •
A növekvő igények miatt egyre több cég kezdett el hálózati kommunikációt kiszolgáló eszközök gyártásával foglalkozni
•
A LAN szabványok készítésével és terjesztésével 3 nagyobb, független szervezet foglalkozik:
– Ezek saját fejlesztések voltak, más gyártmányokkal nem törődtek, szabványosítás kellett – CCITT – a telekommunikációs szabványokat felügyeli (pl. V és X sorozat, V.24, X.25) – ISO (International Standards Organisation, Nemzetközi szabványügyi szervezet) – mindenre kiterjedő szabványosítással foglalkozik (pl. OSI összekapcsolási szabványok) – IEEE – ajánlásaik közül kiemelkedők az Ethernet és a Token Ring protokollok
•
Az OSI modellben a hálózati teendőket rétegekre bontják, és a rétegek jól meghatározott adat- és szolgáltatáskapcsolatban állnak egymással – A modell jó keretet ad a hardver és szoftverelemek együttműködéséhez 10
Széchenyi István Egyetem
Hálózati szabványok Az OSI modell rétegeinek funkciói: Sorsz. Elnevezés/szint
Funkció
7
Alkalmazási réteg
Kapcsolatot teremt a gép felhasználójával, a felhasználói programok számára hozzáférhetővé teszi a hálózati szolgáltatásokat.
6
Megjelenítési réteg, átadási szint
Elsősorban a kódkonverziókért felelős, a küldemények szintaktikai elemzését végzi.
5
Viszony réteg, érintkezési szint
A gépek közötti kapcsolatokért felel (azonosítás, felépítés, adatcsere, bontás).
4
Szállítási réteg, továbbítási szint
Az adatcsomagok küldését és fogadását felügyeli.
3
Hálózati réteg
A csomagok útvonal-irányítását felügyeli. Ha szükséges, a protokollok konverzióját is elvégzi.
2
Adatkapcsolati réteg, Csomagszinten felügyeli a hibátlan adatátvitelt. A adatkapcsolási szint bitfolyamból előállítja a csomagokat, és ellenőrző összegekkel látja el őket.
1
Fizikai réteg
Adatbitek hibátlan küldését/fogadását végzi az átviteli közegen.
Hálózati szabványok
11
Széchenyi István Egyetem
Hálózatok összekapcsolása • A hálózatok összekapcsolásának módját és eszközét az alhálózatok OSI modell szerinti rétegstruktúra eltérése határozza meg • A megfelelő eszközök: – Jelismétlő (repeater) – azonos OSI rétegű alhálózatok esetén, a jelek erősítése a hálózat méretének növelése miatt szükséges – Hálózati híd (bridge) – eltérő fizikai rétegű alhálózatok esetén, a felesleges (belső) adatforgalom kiszűrésére – Forgalomirányító, átjáró (router) – eltérő adatkapcsolati, de azonos hálózati réteg esetében, WAN-LAN, ill. WAN-WAN összekapcsolásra – Hálózati kapu (gateway) – ha a hálózati réteg vagy ennél magasabb szint is eltérő 12
4
Széchenyi István Egyetem
Hálózati szabványok (Hálózatok összekapcsolása folyt.) • A modem (modulátor-demodulátor) speciális A/D és D/A átalakító – Segítségével össze lehet kapcsolni távoli számítógépeket az analóg jeleket használó távközlési hálózat (telefonvonal) segítségével – Átvitel közben a modem kiszűri a zajokat, javítja a hibákat, végzi a vonali adminisztrációt (hívás, bontás, foglalt jel felismerés) – Legfontosabb jellemzője az adatátviteli sebesség (mértékegysége: bit/sec vagy baud), a jó értékek manapság 70000 bps felettiek
13
Széchenyi István Egyetem
Hálózati szabványok
Protokollok •
Protokoll: a csomópontok egymással történő kommunikációjának a szabályrendszere, tartalmazza pl., hogy – Milyen címzést használnak a csomópontok egymás azonosítására – Milyen formában küldik az adatokat – Milyen redundáns infókkal egészítik ki a továbbítandó adatokat az esetleges hibák felismerése és javítása érdekében
•
Az alkalmazandó protokoll típusa a hálózat típusától függ – Más-más protokollok működnek hatékonyan széles sávszélességű és megbízható átviteli közegben, mint lassú és megbízhatatlan adatátvitel esetén – LAN-ok esetén a leggyakrabban használt átviteli protokoll az Ethernet • 1973-ban fejlesztették ki, 1985-ben IEEE szabvánnyá vált • Alacsony szintű protokoll, az adatkapcsolat és a fizikai közeg elérésének módját szabályozza • A csomópontok busz struktúrába vannak szervezve, közvetlenül csatlakoznak egy mindenki által elérhető összeköttetéshez • Minden csomópont figyeli a hálózati forgalmat, a buszra üzenetet küldhetnek, és a számukra érkezett üzenetet feldolgozzák • Előny, hogy párhuzamosan minden csomópont elérheti az üzeneteket, viszont hátrány, hogy a csatorna sérülése esetén minden összeköttetés megszűnik a csomópontok között (ezért WAN hálózatoknál nem jó ez a módszer)
14
Hálózati szabványok •
Széchenyi István Egyetem
Protokollok (folyt.) – WAN-ok esetén a TCP/IP protokollok a legelterjedtebbek • Ezek a fizikai átvitel fölé épülnek, a csomópontok címzési módját ill. a hálózaton továbbított adatcsomagok méretét és formátumát rögzítik
– Az IP (Internet protokoll) a család legalacsonyabb szintű protokollja • Az IP nem garantálja a megbízható átvitelt, az adatcsomagok késhetnek, sérülhetnek, elveszhetnek – ha az IP által használt hálózat hibázik • Az IP adatcsomagok mindig egy header résszel kezdődnek, amely tartalmazza a küldő és a címzett csomópont IP címét – Az üzenet ezen része redundáns, és így védett a sérülések ellen, ezzel az IP-t megvalósító szoftver fel tudja ismerni az esetleges hibákat
• Az adatcsomagot a protokollt megvalósító szoftver ezután a helyi hálózatban (alkalmas módosításokkal: cím, adat) továbbküldi a megfelelő helyre
– A TCP (Transport Control Protocol) az IP-re épülve megbízható hálózati átvitelt garantál • A TCP-t használó ismertebb szolgáltatások: ftp (file transfer, fájlok hordozása távoli gépekre), telnet (távoli gépekre történő belépés), e-mail szolgáltatás (ld. később)
15
5
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
Elosztott rendszerek operációs rendszerei •
Hálózati operációs rendszer – A távoli csomópontok elérhetők, de a hozzáférés nem áttetsző, eltér a lokális eléréstől (a környezet alapján a felhasználó tisztában van azzal, hogy elosztott hardveren futó rendszert használ)
•
Tipikus szolgáltatások: – Bejelentkezés távoli gépekre (remote login) • Általában a telnet vagy ssh programmal, pl. telnet rs3.szif.hu
– Adattovábbítás távoli gépre vagy gépről (file transfer protocol – ftp) • A fájlhordozásra szolgáló legelterjedtebb program az ftp (az ftp protokollt valósítja meg) • Az ftp programmal sok esetben guest vagy anonymous felhasználóként is tudunk csatlakozni az adott szerverhez pl. ftp ftp.mmt.bme.hu
•
Elosztott operációs rendszer
•
Tipikus szolgáltatások:
– A távoli csomópontok áttetsző módon elérhetők (a környezet alapján a felhasználó nincs feltétlenül tudatában annak, hogy elosztott hardveren futó rendszert használ) – Adatvándorlás, számítások vándorlása, folyamatok vándorlása • 1: Ha lokálisan egy távoli csomóponton elhelyezkedő adathalmazra van szükség, az op. rendszer automatikusan átmásolja az adatokat a helyi környezetbe, a változtatás után pedig vissza • 3: Az előző tevékenységek kiterjesztése, mert pl. – Így arányosabb a terhelés vagy gyorsabb a számítás (a folyamatok párhuzamosan dolgoznak) – A folyamat hatékonyabban tud futni egy másik csomóponton valamely speciális hardver vagy szoftver adottság miatt
16
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
(Elosztott rendszerek operációs rendszerei folyt.) • Védelem és biztonság – A korszerű hálózati rendszerek legalább négyszintű biztonsági rendszerrel rendelkeznek • Bejelentkezési védelem – Kategóriák a felhasználókra, mint korábban, guest, „sima” user, kiemelt felhasználó, rendszergazda
• Jogosultságok védelmi rendszere – Mint korábban, olvasás, írás, végrehajtás, törlés, engedélyek módosítása
• Attribútumok védelmi rendszere – Könyvtárhoz vagy fájlhoz tartozik, erősebb a sima jogosultságnál » Pl. adhatunk jogot külső felhasználóknak egyes saját fájljainkhoz
• Szerver védelem – Pl. a szerver konzolja már eleve jelszóval védett, megadható, hogy ki jogosult bejelentkezni, ki jogosult a rendszer leállítására, újraindítására, ki férhet hozzá az eseménynaplóhoz
17
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
Elosztott fájlrendszerek •
Elosztott állományrendszernek azt a (szoftver)modult nevezzük, amely az op. rendszerrel együttműködve biztosítja a távoli fájlok elérését a lokális fájlokéval azonos módon
•
Az elosztott fájlrendszerekkel szemben támasztott igények (nem minden rendszer tud maradék nélkül megfelelni ezeknek az elvárásoknak):
– Ezek a rendszerek ill. a működésüket szabályozó protokollok (Network File System, Remote FS) a 80-as évek elején jelentek meg
– Fájlok hozzáférésének, elhelyezkedésének és vándorlásának áttetszősége • A fájlok a rendszer minden pontjáról elérhetők, a lokális és távoli fájlok azonos módon kezelhetők; a fájlok neve nem hivatkozik fizikai elhelyezkedésükre és átnevezés nélkül mozgathatóak a rendszerben
– A rendszer méretezhető és hibatűrő (esetleg csökkentett funkcionalitással)
•
Az elosztott fájlrendszerben adódó problémák közül az egyik legjelentősebb az esetleges párhuzamos módosítás • Gyakori megoldás, hogy minden felhasználó a fájl csak egy általa látott másolatán dolgozik, és a fájlt utoljára bezáró felhasználó módosítása érvényesül 18
6
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
(Elosztott fájlrendszerek folyt.) • SUN Network File System – 1985-ben publikálták, szabadon elérhető protokollt és referencia implementációkat is közzétettek, a rendszer gyorsan elterjedt – Bár voltak konkurens rendszerek, de mégis, a SUN NFS az elosztott fájlrendszerek „de facto” szabványa lett – Tervezési célok: • Minden op. rendszer alatt lehetséges legyen megvalósítani a protokollt • A protokoll hardverfüggetlen legyen • Létezzen egyszerű újraindítási lehetőség a kliens ill. a szerver számára
– A rendszer jellemzői: • Kliens-szerver modellt valósít meg, a szolgáltatás a távoli eljárás hívásra épül (RPC, Remote Procedure Call) – A fájl szerver szolgáltatásként nyújtja a távoli gépeken futó klienseknek a lokális fájlrendszer elérésének a lehetőségét
• A távoli fájlrendszerek mountolhatók (a lokális fájlrendszerhez csatlakoztathatók), így a lokális fájlokkal azonos módon érhetők el – Az elérés pl. felhasználói azonosítók alapján szabályozható
• A SUN NFS működését egymásra épülő protokollok halmaza biztosítja – NFS, RPC, XDR (EXtended Data Representation) és Mount protokoll 19
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
(Elosztott fájlrendszerek folyt.) • X Window rendszer – Grafikus kimenettel rendelkező alkalmazások felhasználói felületének kialakítására ad lehetőséget – 1983-84-ben kezdték el fejleszteni az MIT-n (Michigan Institute of Technology), tehát a Windows előtt!) – Cél: olyan kommunikációs felület készítése, amely hálózattal összekötött, különböző operációs rendszereket futtató gépeken azonos kezelői felületet biztosít – Jellemzői: • Forráskódja publikus, elsősorban UNIX rendszerek támogatják • Kliens-szerver modellt használ – A szerver egy grafikus terminálon futó folyamat, és ő kezeli a grafikus X munkahelyet (képernyő, billentyűzet, egér, …) – A kliens egy grafikus kimenetű (általában interaktív) folyamat
• A rendszer magja az X protokoll, amely definiálja a kliens és a szerver együttműködésének a módját (lehetséges grafikus funkciók) • A grafikus képernyő kezelése ablakok létrehozásával történik, az ablakok rendszere hierarchikus, a leszármazott ablakok területe csak az ős felületén látszik
– Az X rendszer fő elemei: • Windowing system – az X protokoll megvalósításáért felel • Window manager – kitüntetett kliens folyamat, a felhasználó által végzett ablakműveleteket intézi (mozgatás, méretezés, zárás, ikonizálás, menükezelés) • Session manager – a felhasználó beléptetését végzi 20
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
21
7
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
UNIX •
Széles körben elterjedt, nagyon népszerű hálózati op. rendszer – A UNIX-ot nagyon sok területen alkalmazzák: oktatási, kutatási, katonai, vállalati, közigazgatási szféra és pl. gyártásirányítás, folyamatszabályozás
•
Története – Eredeti ötlet, „álom”: több amerikai cég közösen egy „mindentudó”, korszakalkotó op. rendszert akart kifejleszteni (Multics) • Nem sikerült, de az egyik fejlesztő önállóan tovább dolgozott, szerényebb célokat kitűzve maga elé…
– Első változat: Ken Thompson, Bell Laboratories, 1969, egy DEC PDP-7-es gépre, eredetileg assembly nyelven – A rendszer neve: Uniplexed Operating and Computing System (UNICS) • Tréfás változatok szerint a név eredete: eunuch Multics :-)
– Később Brian Kernighan és Dennis Ritchie is csatlakozott a fejlesztéshez • Ők ketten alakították ki a C programnyelvet is • Cél: hatékony futtatható kódot lehessen a forráskódból előállítani
– A UNIX rendszer kódját ettől kezdve nagy részben C nyelven írták (hordozhatóság) 22
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
• A UNIX története (folyt.) – Publikusan kibocsátott első változat: 1976, 6-os verzió • Forráskódja is nyilvános volt, számos változat készült a következő években • Gyorsan terjedt, kutató intézetekben és egyetemeken használták
– 1978: új, sikeres rendszerváltozat (DEC VAX gépre) • A memóriakezelő egység ügyes megvalósítása nagyméretű programok futását is lehetővé tette
– Ennek hatására a Védelmi Minisztérium (USA) finanszírozásával egy szabványos UNIX rendszert hoztak létre, amely egy katonai hálózati rendszert is kiszolgált – A nagyobb gépgyártó cégek általában saját UNIX változatot fejlesztettek ki • DEC VAX és Alpha gépeken: Utrix • MS PC-kre kezdetben: XENIX • IBM PC-kre és kis- ill. nagygépekre: AIX
– Szabad terjesztésű, ingyenes UNIX-szerű rendszer: Linux, FreeBSD 23
Operációs rendszerek hálózatokon •
Széchenyi István Egyetem
A UNIX története (folyt.) – Ma már nagyon erős piaci igény mutatkozik arra, hogy bármely UNIXos alkalmazói program futni tudjon bármelyik UNIX-os gépen (akár más platformú UNIX alatt) • Ez még nem teljesül, a különböző platformok közötti eltéréseket jelenleg interfészekkel hidalják át
– Az egységesítésre történő kísérletek közül kiemelendő a POSIX szabvány, amely az op. rendszerek szolgáltatásait definiálja. Ehhez most már a gyártók többsége alkalmazkodik – Több más egységesítési projekt is folyamatban van, ezek ipari ill. szabványügyi testületekhez köthetők (IEEE, ANSI, ISO) • A konvergenciához a C nyelv megtörtént szabványosítása is hozzájárul
•
A UNIX részei – A UNIX két részből áll: a belső magból és a rendszerprogramokból • A belső mag fő részei a fájlkezelő rendszer, a CPU-ütemező, és a memóriakezelő egység • A belső mag szolgáltatásai rendszerhívásokon keresztül érhetők el, ezek a hívások három csoportba sorolhatók: fájlkezelés, folyamatok vezérlése és információ manipulálása • A rendszerprogramok a belső mag rendszerhívásaira támaszkodva különböző funkciókat látnak el (programfordítás és futtatás, fájlkezelés) 24
8
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
(UNIX folyt.) • A UNIX jellemzői – A fájlok fa struktúrájú könyvtárakba vannak szervezve • A könyvtárleírók maguk is fájlok, amelyek az adott könyvtár fájl- és könyvtárlistáját, ill. a megfelelő hivatkozásokat (fájl adatmezők, szülőkönyvtár) tartalmazzák
– Az I/O eszközöket a UNIX speciális fájlokként kezeli, az I/O kezelő is a fájlrendszerbe épül be • A különböző I/O eszközökhöz a rendszer külön meghajtókat használ
– A UNIX multiprogramozott, időosztásos op. rendszer – A folyamatok újabb folyamatokat hozhatnak létre (fork hívás, szülőgyerek viszony) – A folyamatok csoportokba szervezhetők • Lehetőség van a csoport minden tagján ugyanazt a műveletet végezni, pl. üzenetküldés
– A felhasználói módú folyamatok ütemezése prioritásos, és preemptív időszeletes • Egy adott folyamat prioritási száma változhat a futás során • Megadott időszeletenként a futó folyamat futása megszakad, és a rendszer ellenőrzi, hogy nincs-e magasabb prioritású futásra kész folyamat, ha igen, akkor az aktuális futás megszakítható 25
Operációs rendszerek hálózatokon •
Széchenyi István Egyetem
A UNIX jellemzői (folyt.) – Ha kevés a memória, akkor a UNIX tárcserét (swapping) alkalmaz: egyes várakozó folyamatokat a háttértárra ment el (időlegesen) • Ezek időigényes műveletek, ezért a UNIX igyekszik minimalizálni a számukat virtuális memóriakezelés segítségével
– A UNIX-ban lehetőség van a folyamatok kommunikációjára a csővezeték (pipe, FIFO tároló) segítségével, pl. ls -l | more • A csővezetékben a forgalom egyirányú, de több folyamat is elérheti
– A FIFO-s tárolási elvet a folyamatok közötti hálózati kommunikációra is kiterjesztették az ún. foglalat (socket) bevezetésével • Itt a forgalom kétirányú is lehet
•
A UNIX egyszerűbb parancsai – – – – – – –
Könyvtár- és fájlműveletek: ls cd pwd mkdir rm rmdir cp find touch mv Fájlok szerkesztése és nézegetése: more less ed vi emacs head tail Szöveg feldolgozás: echo cat grep sort uniq sed awk cut tr split printf Fájl összehasonlítás: comm cmp diff patch Rendszer adminisztráció: chmod chown ps su w who Kommunikáció: mail telnet ftp finger ssh Hozzáférés: su login passwd 26
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
27
9
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
Novell NetWare • • •
Nagyon sikeres „korai” PC-s op. rendszer LAN hálózatokon 1984-ben lépett piacra vele a NetWare cég Első, üzleti alkalmazásokra is hatékonyan használható változatai a 3.x-es verziók voltak (1992-) – Ezekben már volt alapszintű TCP/IP támogatás – Magyarországon a 90-es évek elején-közepén a 3.1-es és 3.11-es verziók terjedtek el széles körben, ezek magas szintű biztonsági rendszert nyújtottak, és az akkori DOS-alapú környezetben barátságos volt a használatuk
•
A 4.0-ás változatban (1993-) új, hierarchikus címtárszolgáltatást vezettek be (NDS, Novell Directory Services), amelynek segítségével az erőforrások (lemezek, nyomtatók) egyszerűbben elérhetők – A Windows NT Server változat megjelenése előtt a Novell uralta a PC-s szerver-piac 90%-át – A tervezők viszont elkövették azt a hibát, hogy túlzottan leragadtak a DOS alapnál, és az új, Windows-os felhasználók már korszerűtlennek tartották a DOS parancsok tanulását
• •
Az 5.x-es verzióknál (1998-) a piacvesztés drasztikussá vált, a cégek sorban NT-s op. rendszerekre cserélték le a Novell szervereket A 6.5-ös verziótól (2003-) lehetőség nyílt az NT szerverekkel való direkt együttműködésre 28
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
(Novell NetWare folyt.) • Néhány fontosabb Novell parancs: – – – –
LOGIN, LOGOUT, USERLIST, WHOAMI (useradmin) MAP (hálózati meghajtók kezelése) FLAG, FLAGDIR, GRANT, RIGHTS (attribútumok, jogosultságok kezelése) SEND, CASTOFF, CASTON (üzenetek kezelése)
–
29
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
Windows NT •
A Microsoft cég modern hálózati op. rendszere – Modern, 32 bites mikroprocikhoz készült – Intel procikon és DEC Alpha rendszerekben működik – Van NT Workstation és NT Server változata is
•
Története – A MS 1988-ban indította el az NT (New Technology) fejlesztését – A kitűzött célok a következők voltak: kiterjeszthetőség, átvihetőség, megbízhatóság, kompatibilitás és nagy teljesítmény • Eredetileg az OS/2-ből indultak ki
– 1993-ban jelent meg a 3.1-es verzió (az első NT, a Windows 3.1 alapján, magyarul is) – A 4.0-ás változat (1996) már a Windows 95-ös felületet tartalmazta
•
Jellemzői – Kompatibilis az MS-DOS és Windows alkalmazásokkal – Az átvihetőség érdekében az NT rendszer nagyobb részét C és C++ nyelven írták • A procitól függő kódokat külön könyvtárban gyűjtötték össze, ami egyúttal külön rétegben helyezkedik el (közvetlen hardverkezelés) • A felsőbb rétegek ettől függenek, nem pedig magától a hardvertől 30
10
Operációs rendszerek hálózatokon •
Széchenyi István Egyetem
A Windows NT jellemzői (folyt.) – A Windows NT főbb rétegei: • Hardverkezelő • Belső mag – Mindig a memóriában marad, funkciói: szálütemezés, megszakításkezelés, prociszinkronizáció és hálózatkiesést követő helyreállítás
• Meghajtók • Végrehajtó réteg – Funkciói: virtuális memória kezelése, folyamatok kezelése, I/O kezelés, objektumvezérlés, biztonsági felügyelet
• Környezeti alrendszerek gyűjteménye – Felhasználói módú folyamatok, a végrehajtó rétegre épülnek
– Az NT fő működtetési környezete a 32-bites Windows alrendszer, a Win32 • A Win32 grafikus vagy karakteres (80x25-ös képernyő) kategóriába sorolja az alkalmazásokat, és a karaktereseket is grafikusan jeleníti meg • Az alkalmazások futtatása mellett ez a rendszer kezeli az összes billentyűzetes, egeres, és képernyős I/O forgalmat
– További alrendszerek: MS-DOS környezet, Win16 (16-bites Windows környezet), POSIX alrendszer, OS/2 alrendszer, bejelentkezési és biztonsági alrendszer 31
Operációs rendszerek hálózatokon •
Széchenyi István Egyetem
A Windows NT jellemzői (folyt.) – A Windows NT fájlrendszere (NT File System, NTFS) a köv. fő tulajdonságokkal rendelkezik: • Adat helyreállítás, biztonság, hibatűrés, nagy méretű fájlok kezelése, többszörös adatfolyamok kezelése, fájltömörítés
– Az áramkimaradásból származó fájlsérülések ellen az NTFS úgy védekezik, hogy a fájlok adatstruktúráját a tranzakciókon belül folyamatosan eltárolja, naplózási rekordokban – A hozzáférési biztonságot a fájlokhoz rendelt biztonsági attribútumokon keresztül garantálja az NTFS – Az NT hibatűrő diszkmeghajtóval is el van látva, neve FtDisk • A lemeztükrözést is alkalmazzák
– Az NT az egyenrangú és a kliens-szerver hálózati kapcsolatot is támogatja – Számos hálózati technikában használt protokollt támogat, pl. • TCP/IP, NetBIOS (Network Basic I/O System), NWLink (NetWare hálózatokhoz)
– Az NT nem tekinthető elosztott op. rendszernek, de mégis biztosít elosztott rendszerű feldolgozást – Az NT támogatja homogén felhasználói csoportok létrehozását, ehhez tartományokat (domain) biztosít (pl. egy munkahelyi részleg dolgozói) • A csoportok között együttműködés és hierarchia is kialakítható 32
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
Windows 2000, XP és Vista •
A Windows 2000 (vagy Win2K, eredetileg NT5) az NT op. rendszerek családjába tartozik – Úgy tervezték, hogy felváltsa a Windows 95, 98 és NT 4-es verziókat – Fontos továbbfejlesztéseket nyújt a megbízhatóság, könnyű használat (pl. USB eszközök), és a mobil számítógépezés támogatásának területén
•
A Windows XP (2001-) a Windows 2000 továbbfejlesztett változata – Az XP az experience (élmény) szóra utal, ezzel szimbolizálva a felhasználók részére nyújtott „innovatív élményeket” – Az XP új, valamelyest egyszerűsített grafikus felhasználói felülettel rendelkezik, a Start menüt és a keresési megoldást újratervezték – Az XP újításokat tartalmaz a multimédiás anyagok kezelésében (pl. fejlettebb Windows Media Player, és a digitális fényképezőgépek jobb támogatása) – 64 bites változata is létezik – Több Service Pack is megjelent hozzá, elsősorban biztonsági javítások
•
A Vista a legújabb Windows NT családtag, 2007-től elérhető – Egy éve jött ki, egyelőre még nem tekinthető kiforrottnak 33
11
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
34
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
A „kék halál” •
A „kék halál” megnevezés a MS Windows op. rendszerekben az „összeomlás” után megjelenő kék hátterű képernyőre utal
•
Az „első típusú kék halál” akkor következik be, amikor az NT (Windows 2000, XP) rendszermagja nem tud helyreállni egy hibából
– A kék képernyők különböző variánsai az összes Windows operációs rendszerben megjelentek a Windows 2.0 óta – Ilyenkor az egyetlen, amit a felhasználó tehet, az op. rendszer újraindítása, elvesztve ezzel a nem mentett munkát, és valószínűleg megtörve a fájlrendszer integritását – A kék képernyőn megjelenített információ nem elég annak megállapítására, hogy mi nem működött megfelelően, csak azt írja ki, hogy mely pontnál történt meg a kód összeomlása, amely akár már teljesen különbözhet a hiba eredeti származásától
•
A „második típusú kék halál” a Windows 95, 98 és Me esetén fordul elő – Ezekben az op. rendszereken a kék képernyő a fő mód arra, hogy a virtuális hardver meghajtók (VxD) jelentsék a hibákat a felhasználónak • Pl. szabálytalanul eltávolított USB
– Bár ezek a kék képernyők egyes esetekben lehetőséget adnak a felhasználónak a folytatásra, általában mégis olyan hibát jeleznek, amelyet nem lehet javítani a gép újraindítása nélkül (a halál után a rendszer sokszor instabil vagy nem válaszol) 35
Operációs rendszerek hálózatokon
Széchenyi István Egyetem
36
12