Opercis rendszerek Az opercis rendszerek fejldse A kezdetek

  • Slides: 62
Download presentation
Operációs rendszerek

Operációs rendszerek

 • Az operációs rendszerek fejlődése – A kezdetek • 1944: első elektronikus számítógép

• Az operációs rendszerek fejlődése – A kezdetek • 1944: első elektronikus számítógép – nincs operációs rendszere – huzalos programozású • 1946: Első Neumann elven működő szg. – még mindig nincs operációs rendszer – kapcsolók segítségével programozható • Hátrányok: – kényelmetlen programozás – kihasználatlanság • Hatékonyság növelése – kártyaolvasók a bevitel gyorsítására – első szimbolikus nyelv, az assembler 2

 • 1950: – szélesedő felhasználói kör (matematikusok) – Első magas szintű, algoritmusokra optimalizált

• 1950: – szélesedő felhasználói kör (matematikusok) – Első magas szintű, algoritmusokra optimalizált nyelv a FORTRAN bővülő feladatkör • Open Shop (Nyílt programozás) – a felhasználó a gép előtt ülve végzi el a műveleteket – gépidőt kell lefoglalni, csak ekkor tevékenykedhet – egy tipikus programfuttatás menete: » konzolon a jelszó begépelése tártörlés » FORTRAN fordító kártyacsomag behelyezése, fordítandó program a kártyaolvasóba majd betöltés » kártyalyukasztón megjelenik a lefordított program » tártörlés, majd a lefordított program futtatása » konzol írógépen az eredmény megjelenése (ha minden tökéletes volt) – nehézkes javítás, hosszú gépidőre várás 3

 • Kötegelt feldolgozás – hatékonyság növelésére szakképzett operátor alkalmazása – képes volt hibajavításra,

• Kötegelt feldolgozás – hatékonyság növelésére szakképzett operátor alkalmazása – képes volt hibajavításra, beérkező munkák rendszerezésére kevesebb fordítóprogram betöltés – a felhasználók nem érintkeztek a géppel (Closed Shop) – Kötegelt (batch) feldolgozás: Az egyes feladatokat leíró kártyakötegek utasításait egymás után sorjában hajtja végre a számítógép. – Növekedett a számítógép sebessége az operátor nem győzte • General Motors laboratorium – – – cél: operátor hibáinak kiküszöbölése első operációs rendszer(ecske) a monitor állandóan a memóriában volt az operátornak csak a perifériákat kellet kezelnie kártya helyett mágnesszalag 4

– feldolgozás menete: » felhasználói programok összegyűjtése (satellite) » az összegyűjtött program betöltése a

– feldolgozás menete: » felhasználói programok összegyűjtése (satellite) » az összegyűjtött program betöltése a számítógépbe » eredmény kiírása » eredmény közlése a felhasználókkal (satellite) – mágnesszalag előnye az operátor nélküli pozícionálhatóság – parancsnyelvek lérejötte • 1960: SPOOL rendszerek – a mágnesszalag is lassúnak bizonyult – gyors átmeneti tárak létrehozása az input és output adatok számára (mágneslemezek) – processzor nélküli adatátvitel (közvetlen memória hozzáférés) – művelet befejezése megszakítás kéréssel 5

 • Multiprogramozás (Többfeladatos rendszerek) – önállóan működő egységek párhuzamos adatfeldolgozás – átlapolt rendszerek

• Multiprogramozás (Többfeladatos rendszerek) – önállóan működő egységek párhuzamos adatfeldolgozás – átlapolt rendszerek JOB 4 JOB 3 JOB 2 IN EXEC OUT JOB 1 IN EXEC OUT 6

– együttes perifériaidő = együttes CPU idő igény hatékony rendszer – nagyon ritkán valósul

– együttes perifériaidő = együttes CPU idő igény hatékony rendszer – nagyon ritkán valósul meg – több program egyidejű végrehajtásának szükségessége • Az operációs rendszer – több periféria jelenik meg és több feladatot kell egyidejűleg kezelni – minőségi változások szükségesek – megjelenik az alapfunkciókat ellátó vezérlőprogram (rendszermag) a kezelői felület (monitor) mellett – Operációs rendszer = burok (shell) + mag (kernel) • Az operációs rendszerek feladatai – Eszközkezelők (Device Driver) » Egységes kezelői felület a különböző perifériáknak – Megszakításkezelés (Interrupt Handling) » A perifériák igényeinek kielégítésre 7

– Rendszerhívás, válasz (System Call, Reply) » felhasználói alkalmazások erőforrás igénylésének kiszolgálása – Erőforrás

– Rendszerhívás, válasz (System Call, Reply) » felhasználói alkalmazások erőforrás igénylésének kiszolgálása – Erőforrás kezelés (Resource Management) » közös eszközhasználat megelőzése illetve konfliktus feloldása – Processzor ütemezés (CPU Shceduling) » a várakozó munkák közötti processzoridő kiosztása valamilyen stratégia alapján » munkák közötti átkapcsolás – Memóriakezelés (Memory Management) » memóriaterület felosztása a munkák között – Állomány- és lemezkezelés (File and Disk Management) » rendszerezés, nyilvántartás – Felhasználói felület (User Interface) » kommunikáció biztosítása a felhasználóval 8

CPU Eszköz kezelő Rendszerhívások, válaszok Processzor kezelés Memória kezelés Állománykezelés Erőforrás kezelés Megszakítás kezelő

CPU Eszköz kezelő Rendszerhívások, válaszok Processzor kezelés Memória kezelés Állománykezelés Erőforrás kezelés Megszakítás kezelő Perifériák JOB 0 JOB 1 JOB 2 JOB x MEM 9

 • Interaktív rendszerek – a terminálon lehetett a programot és az adatot bevinni

• Interaktív rendszerek – a terminálon lehetett a programot és az adatot bevinni – programfejlesztés gyors növekedése – számológép funkció helyett információkezelés • Operációs rendszer újabb követelményei: – Válaszidő » órák, napok másodpercek – Időosztás » felhasználóval való foglalkozás » megjelenik az óra időosztás (time sharing) – Felhasználói felület » parancsnyelv helyett parancsértelmezők » felhasználóbarát felület – Felhasználói adminisztráció » jogi, biztonsági kérdések » felhasználók közötti kommunikáció 10

Eszköz kezelő CPU Rendszerhívások, válaszok Processzor kezelés Memória kezelés Állománykezelés Erőforrás kezelés Megszakítás kezelő

Eszköz kezelő CPU Rendszerhívások, válaszok Processzor kezelés Memória kezelés Állománykezelés Erőforrás kezelés Megszakítás kezelő Perifériák, óra JOB 1 JOB 2 Felhasználók KERNEL SHELL Felhasználói felület JOB x MEM 11

 • Valósidejű rendszerek (real time) – Olyan interaktív rendszer, melyben egy kiszolgálás kérésre

• Valósidejű rendszerek (real time) – Olyan interaktív rendszer, melyben egy kiszolgálás kérésre az adott válasz egy szigorúan meghatározott időn belül meg kell érkezzen. • A jelen és a közeljövő – Többprocesszoros rendszerek • programok párhuzamos végrehajtása gyorsabb feldolgozás • újabb feladatok megoldása – folyamatok közötti kommunikáció – folyamatok közötti szinkronizáció • Előnyök: – Megnövekedett átbocsátó képesség – Erőforrás megtakarítás – Megbízhatóság 12

 • Típusai: – szimmetrikus » minden processzor egyenértékű » mindegyiken egy példánya fut

• Típusai: – szimmetrikus » minden processzor egyenértékű » mindegyiken egy példánya fut az oprendszernek » minden folyamat bármelyik processzorra rábízható – aszimmetrikus » az egyes processzorok feladata rögzített – Elosztott rendszerek • A többprocesszoros rendszerek másfajta felépítése. • A processzoroknak saját memóriájuk és perifériáik vannak. • A processzorok közötti kapcsolat valamilyen kommunikációs csatornán történik. 13

 • Előnyök – Rugalmasság » Mindenféle feladathoz található(k) megfelelő számítógép(ek) – Erőforrás megosztás

• Előnyök – Rugalmasság » Mindenféle feladathoz található(k) megfelelő számítógép(ek) – Erőforrás megosztás » Hardver mellett információ megosztás – Sebességnövekedés – Megbízhatóság – Kommunikáció • Hátrányok – Illetéktelen hozzáférés – Operációs rendszer mindenhol • A mindennapi életben használt gépekben. 14

 • Alapfogalmak – Folyamatok • Program: egy algoritmust megvalósító utasítások sorozata. • Folyamat

• Alapfogalmak – Folyamatok • Program: egy algoritmust megvalósító utasítások sorozata. • Folyamat (task, process): Végrehajtás alatt lévő „élő” programok. • Egy program több folyamatból is állhat. • Ha több folyamat van, mint processzor a folyamatoknak várakozni kell. • Folyamatleíró blokk (Process Control Block-PCB, Task State Segment-TSS) – – – a folyamat számlálója, a programszámláló állása a folyamat állapota a regiszterek tartalma a folyamathoz tartozó memóriaterületek adatai a használt perifériák, állományok jellemzői 15

 • Folyamatok: Olyan programok, melyeknek van folyamatleíró blokkja. • A tábla alapján lehet

• Folyamatok: Olyan programok, melyeknek van folyamatleíró blokkja. • A tábla alapján lehet váltani a folyamatok között. • Szálak (thread): – – folyamathoz hasonlítanak kevesebb adat kell a nyilvántartásukhoz gyors átkapcsolás a szálak között közös memóriahasználat (veszélyforrás) – Erőforrások • Erőforrás: Minden, ami egy folyamat végrehajtásához szükséges. • Csoportosításuk: – Elvehető (preemptive): a folyamat vagy az erőforrás nem károsodik – Nem elvehető (non preemptive): a folyamat vagy az erőforrás is károsodhat 16

– Az operációs rendszer meghatározása • Erőforrás szemlélet: A folyamatok egy olyan csoportja, amely

– Az operációs rendszer meghatározása • Erőforrás szemlélet: A folyamatok egy olyan csoportja, amely a felhasználói folyamatok között elosztja az erőforrásokat. • Felhasználói szemlélet: A folyamatok egy olyan csoportja, amely megkíméli a felhasználókat a hardver kezelés nehézségeitől. – Az operációs rendszerek szerkezete, szolgáltatásai • Rendszermag (KERNEL) – Feladata az erőforrások elosztása és kezelése, a felhasználói folyamatok igényeinek kielégítése, adminisztrálása. – Folyamatok sokasága (rendszerfolyamatok) – Induláskor jönnek létre és leállításig tartanak. 17

– – – Felhasználói folyamatok létrehozása Folyamatleíró blokk elkészítése Memóriaterület biztosítása Processzoridő elosztása Folyamat

– – – Felhasználói folyamatok létrehozása Folyamatleíró blokk elkészítése Memóriaterület biztosítása Processzoridő elosztása Folyamat sorrendjének meghatározása Felhasználói folyamatok elválasztása és védelme • Rendszerhívások, válaszok – A felhasználói folyamatok és az operációs rendszer magja közötti kommunikáció – A rendszerhívások megvalósítására sok módszer létezik – A processzorok is támogatják » felhasználói üzemmód » rendszer üzzemmód 18

– Rendszerhívások kiszolgálása » A felhasználói folyamat legfontosabb paramétereinek elmentése » A kernel megfelelő

– Rendszerhívások kiszolgálása » A felhasználói folyamat legfontosabb paramétereinek elmentése » A kernel megfelelő folyamatára kerül a vezérlés » A paraméterek átadásra kerülnek a vermen, a regisztereken vagy valamely közösen használt memóriaterületen keresztül. » A processzor rendszermódba kapcsolódik át. » Elindul a megfelelő rendszerfolyamat, végrehajtja a kívánt feladatot. » A válaszok vagy hibakódok valamely paraméterátadásra szolgáló területre kerülnek. » A processzor visszatér felhasználói üzemmódba. » A megszakított folyamat visszakapja a vezérlést. 19

 • Eszközkezelők, megszakításkezelés – A perifériák és az operációs rendszer magja közötti kommunikáció

• Eszközkezelők, megszakításkezelés – A perifériák és az operációs rendszer magja közötti kommunikáció eszközei. – Az eszközkezelők feladata a kernel tehermentesítése. – Megszakítás kérés (interrupt request): az operációs rendszer figyelmének felhívása – Megszakítások típusai: » Megszakítás (interrupt) » Kivétel (Exception) » Nem maszkolható megszakítás (Non Maskable Interrupt) » Csapda (Trap) 20

– Megszakításkezelés lépései: » Megszakításkérés érkezik » A processzor befejezi az éppen végzett műveletet,

– Megszakításkezelés lépései: » Megszakításkérés érkezik » A processzor befejezi az éppen végzett műveletet, majd, ha nincs letiltva az adott szintű megszakítás, elfogadja a kérést, ellenkező esetben várakoztatja. » A processzor elmenti a futó folyamat állapotvektorát » A CPU privilegizált (kernel) üzemmódba kerül, és letiltódik az összes olyan megszakítás, melynek prioritása kisebb vagy egyenlő az érkezett megszakításéval. » A központi egység megállapítja a megszakításkérés helyét, és megszakítási vektortáblából kikeresi a megfelelő kiszolgáló rutin címét. » A kiszolgáló rutin fut. » A CPU visszatér felhasználóin (user) üzemmódba, és engedélyezi a letiltott megszakítási szinteket. » A processzor visszaállítja a megszakított folyamat állapotvektorát, ezzel visszaadva a vezérlést. 21

Felhasználói programok Programok készítési támogatás Felhasználói folyamatok kiszolgálása Rendszerhívások Válaszok Rendszermag (Kernel) Processzorkezelés, Memóriakezelés,

Felhasználói programok Programok készítési támogatás Felhasználói folyamatok kiszolgálása Rendszerhívások Válaszok Rendszermag (Kernel) Processzorkezelés, Memóriakezelés, Állománykezelés Eszközkezelők Megszakításkezelés Eszközvezérlő Megszakítás vezérlő Perifériák 22

 • Virtuális gépek – Hol van a határ a rendszer magja és a

• Virtuális gépek – Hol van a határ a rendszer magja és a felhasználói folyamatok között? – DOS + Windows 3. 1 + Windows folyamat Felhasználói folyamat Windows DOS BIOS Hardver 23

 • Többfelhasználós rendszereknél, multiprogramozott környezetben az operációs rendszerre, mint áthatolhatatlan falra szükség van.

• Többfelhasználós rendszereknél, multiprogramozott környezetben az operációs rendszerre, mint áthatolhatatlan falra szükség van. – Az IBM VM rendszere • • • Nincs nagyobb bonyolultságú rendszerhívás. A felhasználói interfész hardverként viselkedik. Több folyamat is működhet rajta párhuzamosan. A folyamatok egymástól teljesen függetlenek Előnye: – Egyszerre futhat rajta több operációs rendszer – Párhuzamosan fejleszthető az újabb operációs rendszer, míg a régiek futnak. 24

 • Hátránya: – A virtualizáló kernelnek a processzor üzemmódjainak tekintetében követnie kell a

• Hátránya: – A virtualizáló kernelnek a processzor üzemmódjainak tekintetében követnie kell a valódi viszonyokat. A folyamatok viszont csak felhasználói módban futhatnak. – Bonyolult a lemezkezelés. Minden folyamatnak a többitől függetlenül az egész lemezterületet kellene használnia. I. alkalmazás IIII. alkalmazás I. Operációs rendszer III. Operációs rendszer Virtualizáló kernel Hardver 25

– A Sun JAVA rendszer • • • A JAVA magas szintű, OOP. Teljesen

– A Sun JAVA rendszer • • • A JAVA magas szintű, OOP. Teljesen elfedi a hardvert. A fordítás után ún. bájtkód keletkezik. A megírt rendszer minden gépen képes futni. Bonyolult, összetett operációs rendszert igényelnek. Java Alkalmazás Java Virtuális gép Hardver 26

A felhasználói felület

A felhasználói felület

 • A felhasználói felület biztosítja a kommunikációt a felhasználó és a kernel között.

• A felhasználói felület biztosítja a kommunikációt a felhasználó és a kernel között. • A felhasználói felület részei az ellátandó feladatok szempontjából a következő részekre bontható: – programindítás, kapcsolat a folyamatokkal – a rendszermag szolgáltatásainak közvetlen felhasználói elérése – a rendszermag programozói felülete – alapvető segédprogramok 28

A felhasználó és a rendszermag • Milyen lehetőségek vannak a külső és belső erőforrások

A felhasználó és a rendszermag • Milyen lehetőségek vannak a külső és belső erőforrások elérésére. • Külső erőforrások – Kézi beállítás • MS-DOS, Windows 16 bites verzió – Automatikus beállítás • Windows 9 x • Plug and Play (Pn. P) – Félautomatikus beállítás • Net. Ware: scan for new devices 29

 • Belső erőforrások – Operációs rendszer alapvető erőforrásai a memóriák. – Különböző rendszerekben

• Belső erőforrások – Operációs rendszer alapvető erőforrásai a memóriák. – Különböző rendszerekben különböző képen lehet felhasználni. • Pl. DOS különböző verziói – Memória optimalizálása történhet • Kézzel, önműködően, közbülső eljárással • DOS esetén betöltéskor kell megadni az átmeneti tárolok, fájlleíró táblák vázlatát. • Windows esetén kevés lehetőség. • Net. Ware szükség esetén foglal le memóriát 30

A programozói felület • A programozó csak a kernelen keresztül érheti el a hardvert.

A programozói felület • A programozó csak a kernelen keresztül érheti el a hardvert. • A forráskód elkészítése – Minden rendszerben van egy szövegszerkesztő (editor) • Fordítás – A fordító program készíti el a tárgykódot (object – OBJ) amely tartalmazza: • a processzor által ismert utasításokat, és a • szoftvermegszakításokat – Relatív címek szerepelnek benne 31

– Az előre elkészített programrészletek a rendszerkönyvtárban helyezkednek el (library –LIB) – A kernel

– Az előre elkészített programrészletek a rendszerkönyvtárban helyezkednek el (library –LIB) – A kernel programozói szempontból egy függvény-, vagy eljáráskönyvtár. Application Programming Interface (API) • Szerkesztés – A szerkesztő (linker) feladata • a tárgykódú modulok címeinek összehangolása, • a kereszthivatkozások feloldása, • A betölthető program (executable – EXE) előállítása. 32

Assembly forrás C fordító Rendszer könyvtárak ASM fordító Tárgykód Betölthető program 33

Assembly forrás C fordító Rendszer könyvtárak ASM fordító Tárgykód Betölthető program 33

 • Karakteres felhasználói felület – Ezek az ún. parancsértelmezők – Feladatuk az OR

• Karakteres felhasználói felület – Ezek az ún. parancsértelmezők – Feladatuk az OR szolgáltatásainak biztosítása az interaktív felhasználónak. – Gyakori elnevezéseik: • Shell: a felhasználói felület burokba zárja, eltakarja a rendszer magját • Command interpreter: akkor használják, ha a rendszer parancsainak a kiszolgálása a leglényegesebb • Monitor: akkor használják, ha a folyamatok felügyelete az elsődleges. 34

– A shell alapvető feladatai • Programindítás, programkezelés • Egyéb, operációs rendszer funkciók felhasználói

– A shell alapvető feladatai • Programindítás, programkezelés • Egyéb, operációs rendszer funkciók felhasználói szintű biztosítása – Programkezelés Négy részből áll • A betöltendő állomány kiválasztása. • A program számára a megfelelő környezet biztosítása. • A folyamat futásának megfigyelése, szabályozása. • Vezérlési szerkezetek megvalósítása. 35

 • Program indítása A program indítása általában nem más, mint a gépi utasítássorozatot

• Program indítása A program indítása általában nem más, mint a gépi utasítássorozatot tartalmazó állomány nevének megadása. – Run (fut) vagy Load (betölt) utasítás a program neve előtt. – Közvetett fájlelérés. » Ugyanazon állományhoz több helyről is hivatkozhatunk. – Keresési útvonal megadása. » DOS esetén PATH » Net. Ware esetén SEARCH DRIVE – Láncolt programfuttatás – Automatikus programbetöltés 36

 • Program környezet beállítása (enviroment) A program futását befolyásoló, módosító paraméterek összességét nevezzük

• Program környezet beállítása (enviroment) A program futását befolyásoló, módosító paraméterek összességét nevezzük a program környezetének. A környezeti változók adatokat biztosítanak a létrejövő folyamat számára – Az adatok lehetnek: » Paraméterek » Kapcsolók (switch, flag, option) » Átirányítási adatok (redirection) » Környezeti változók (environment variables) • A folyamat futásának ellenőrzése – Személyi számítógépeknél korlátozott – Többfeladatos rendszereknél folyamatot lehet megszüntetni illetve felfüggeszteni. • Vezérlési szerkezetek – Korlátozott feltételes elágazás és ciklus megvalósítás 37

– A parancsértelmező egyéb funkciói • Állományokkal, katalógusokkal kapcsolatos műveletek általában. • Ha nem

– A parancsértelmező egyéb funkciói • Állományokkal, katalógusokkal kapcsolatos műveletek általában. • Ha nem mindent a parancsértelmező végez el, akkor megkülönböztetünk külső és belső parancsokat. 38

 • Grafikus felhasználói felületek – A folyamatok ablakokban futnak ablakozó technika – Az

• Grafikus felhasználói felületek – A folyamatok ablakokban futnak ablakozó technika – Az ablakozó rendszer működése • GUI (Graphical User Interface – Grafikus Felhasználói Felület) • GUI feladata: – A folyamat számára biztosítsa a grafikus bevitelt és megjelenítést. • GUI működése: – Minden futó alkalmazáshoz tartozik egy ikon. – A felhasználó tevékenykedik, eseményeket vált ki. – GUI megállapítja melyik folyamattal kíván kommunikálni a felhasználó, és üzenetet küld. – Az alkalmazás feldolgozza az üzenetet. 39

– A grafikus felületek jellemzői • • Ablakok rendszere Az események címzettjeinek felismerése Eszközfüggetlen

– A grafikus felületek jellemzői • • Ablakok rendszere Az események címzettjeinek felismerése Eszközfüggetlen működés Az adatforgalom csökkentése – Egy felhasználóbarát felület jellemzői • Könnyű legyen megtanulni. – Billentyűkombináció helyett menüszerkezet • Méretezhető legyen – A felhasználó ismerete szerinti segítségnyújtás. • • • Lehessen visszavonni Legyen megszakítható egy művelet. Legyen többszintű súgó rendszer. Használata hasonlítson a nyelvhez. Minden utasításra legyen válasz. 40

Állományok

Állományok

Fájl = Állomány Az adatok egy olyan csoportja, melyre együttesen, egy névvel hivatkozhatunk. –

Fájl = Állomány Az adatok egy olyan csoportja, melyre együttesen, egy névvel hivatkozhatunk. – UNIX-nál a fájl nem csak a tárolt adatokat jelenti. A mágneses háttértárak feladata: – Operatív tár kiegészítése, méretének látszólagos megnövelése. – Létrehozott állományok megőrzése. Lemezen tárolt adatok csoportosítása – Ideiglenes állományok – Felhasználói állományok – Adminisztratív állományok 42

Fájlkezelő: a rendszermag azon része, amely a fájlokkal kapcsolatos műveleteket végzi Megj. : Ez

Fájlkezelő: a rendszermag azon része, amely a fájlokkal kapcsolatos műveleteket végzi Megj. : Ez nem azonos az ugyan ilyen nevű felhasználó programmal. A fájlkezelő egy folyamat, ami a felhasználói kéréseket az eszközvezérlőkhöz továbbítja. 43

KERNEL Felhasználói folyamatok Buffer (cache) Fájlkezelő Eszközök 44

KERNEL Felhasználói folyamatok Buffer (cache) Fájlkezelő Eszközök 44

Fájlnevek MS-DOS Két komponenses 1 rész a név: minimum 1, maximum 8 karakter 2

Fájlnevek MS-DOS Két komponenses 1 rész a név: minimum 1, maximum 8 karakter 2 rész a kiterjesztés: legfeljebb 3 karakter A két részt pont választja el egymástól. A felhasználható karakterek ASCII kódtábla nagybetűi ASCII kódtábla számai Néhány speciális karakter (~ ! @ # $ % ^ & _ - {}) Ékezetek használata Az újabb verzióknál lehetséges, de nem ajánlott 45

UNIX Hossza maximum 255 karakter. Komponensek száma tetszőleges. A komponensek elválasztója a pont. Különbséget

UNIX Hossza maximum 255 karakter. Komponensek száma tetszőleges. A komponensek elválasztója a pont. Különbséget tesz kis és nagybetű között. Használható karakterek: nagyjából megegyeznek a DOS-nál használhatókkal. Windows 9 x Kettős elnevezésrendszer Dokumentum-orientált szemlélet Max. 250 tetszőleges karakterből álló név Max. 3 karakteres hosszúságú kiterjesztés DOS kompatibilitás Hosszú fájlnevekből rövid név képzése 46

Példák: DOS EZEREGY. DOC UNIX Az. ezeregy. Ejszaka. Mesei. DOC Win 9 x (h)

Példák: DOS EZEREGY. DOC UNIX Az. ezeregy. Ejszaka. Mesei. DOC Win 9 x (h) Az ezeregy éjszaka meséi. doc Win 9 x (r) AZEZER~1. DOC Helyettesítő karakterek – Wildcard, joker, metakarakter – DOS: ? , * JÓ LEVI? . TXT LEVI 1. TXT – UNIX: ? , *, LEVI 2. TXT karaktercsoport *NI. DOC DANI. DOC NEM JÓ LEVI 10. TXT DANO. DOC ZOKNI. DOC [TD]OBOZ TOBOZ (unix!) DOBOZ KOBOZ doboz 47

Fájlok jellemzői Utolsó módosítás időpontja Fájl mérete Tulajdonos (több felhasználós) Fájl állapotára utaló jelzőbitek

Fájlok jellemzői Utolsó módosítás időpontja Fájl mérete Tulajdonos (több felhasználós) Fájl állapotára utaló jelzőbitek • • • Archiválandó Csak olvasható Rendszerfájl Rejtett állomány Katalógus Szimbolikus hivatkozás Adatcsere fájl Hozzáférési jogok (Unix) Fájl fizikai elhelyezkedése 48

Közvetett hivatkozás – Egy fájlhoz több elnevezés – Főleg UNIX esetén, de Windows 9

Közvetett hivatkozás – Egy fájlhoz több elnevezés – Főleg UNIX esetén, de Windows 9 x-nél is előfordul Előnye – Csak a nevek szaporodnak – Többféleképpen csoportosíthatók – Több katalógusban is szerepelhet – A fájlban történő változások azonnal megjelennek mindenhol Fajtái – Merev láncolás – Lágy láncolás 49

 • Katalógusok (directory) Def. : Olyan speciális állomány, melynek tartalma a fájlok nevét

• Katalógusok (directory) Def. : Olyan speciális állomány, melynek tartalma a fájlok nevét és jellemzőit tartalmazó rekordok listája – Fájl hivatkozás esetén a katalógust vizsgálja az OR, hogy létezik-e a fájl. – Ha megvan a fájl, következik a jogosultsági ellenőrzés Fajtái – Katalógus nélkül: soros tárolású adathordozóknál 50

Egyszintű katalógus • Lassú a fájl megtalálása. • A rendezés segíthet – Bináris keresés

Egyszintű katalógus • Lassú a fájl megtalálása. • A rendezés segíthet – Bináris keresés – Legutóbb használt legelőre • Minden fájlnak egyedi név kell Kétszintű katalógus • • Áttekinthetőbb rendszer Minden felhasználónak külön katalógus A közös fájlok külön katalógusban. Katalógusok katalógusa a fő (master, gyökér) katalógus. • A szinteket a „” vagy a „/” választja el egymástól. 51

Többszintű (hierarchikus) fájlrendszer • Kiindulópont a gyökérkönyvtár. • Szerepelhetnek benne fájlok és alkatalógusok (subdirectory)

Többszintű (hierarchikus) fájlrendszer • Kiindulópont a gyökérkönyvtár. • Szerepelhetnek benne fájlok és alkatalógusok (subdirectory) • A hierarchikus felépítés gyorsítja a keresést. • Az egymásba ágyazott katalógusok száma elvileg nem korlátozott. • Abszolút hivatkozás: A fájl megadásának az a módszere, ahol a gyökér katalógustól kezdődően az összes közbülső katalógus nevének felsorolása után jutunk el a fájlhoz. • Relatív hivatkozás: A fájl megadásának az a módszere, ahol a gyökér katalógus helyett az aktuális katalógus a kiinduló pont. 52

Hozzáférési jogok A felhasználói jogosultságoknál alkalmazott modell. Vannak: • Felhasználók, • fájlok, • jogosultságok.

Hozzáférési jogok A felhasználói jogosultságoknál alkalmazott modell. Vannak: • Felhasználók, • fájlok, • jogosultságok. Jogosultságok típusai • • Olvasás (Read) Írás (Write) Létrehozás (Create) Végrehajtás (e. Xecute) Törlés (Erase) Jellemzők módosítása (Modify) Hozzáférés módosításda Jogok nyilvántartása 53

 • Fájlok elhelyezése Foglaltsági tábla 0123456789012345 1100001111000110 Első üres blokk címe Üres blokk

• Fájlok elhelyezése Foglaltsági tábla 0123456789012345 1100001111000110 Első üres blokk címe Üres blokk címe Mérete 2 4 10 3 15 1 – Folytonos kiosztás • A legelső alkalmas (First Fit) • A legjobban illeszkedő (Best Fit) • A legrosszabbul illeszkedik (Worst Fit) 54

10 30 30 10 12 15 12 10 FIRST 10 12 15 15 BEST

10 30 30 10 12 15 12 10 FIRST 10 12 15 15 BEST WORST 55

Hátrányai – Összességében elegendő hely esetén is előfordulhat, hogy újabb fájl már nem helyezhető

Hátrányai – Összességében elegendő hely esetén is előfordulhat, hogy újabb fájl már nem helyezhető el. – Pontos illeszkedés esetén a fájl mérete másolás nélkül nem növekedhet. – Egy blokk törlése a fájlból a maradék blokkok eggyel előbbre történő mozgatását eredményezi. Előnye – Könnyű a fájlok nyilvántartása, csak a kezdő blokk sorszámát kell tárolni. – Láncolt elhelyezés • Egy újabb táblát vezetünk be • A katalógus csak a fájlok kezdő blokkját tárolja. • Többi információt a Fájl Elhelyezési Tábla tárolja (File Aloccation Table) 56

 • FAT jellemzői – U. a. eleme van, mint ahány blokk van a

• FAT jellemzői – U. a. eleme van, mint ahány blokk van a lemezen. – Minden rekesz tárolja a fájl következő blokkjának helyét. – Nulla az érték, ha ez a fájl utolsó blokkja volt. Fájl FAT 1 1 2 5 2 2 3 3 4 Lemez 2 4 1 7 5 3 6 Katalógus 0 7 4 8 57

 • Előnyök – A szabad helyek az utolsó blokkig kihasználhatók – Nem kell

• Előnyök – A szabad helyek az utolsó blokkig kihasználhatók – Nem kell keresni a megfelelő üres helyet. – Nem probléma a fájl méretének változása • Hátrány – A blokkok elérése szekvenciális. • A FAT nagy táblázat is lehet. • Sűrűn kell használni, ezért a memóriában kell tárolni. • A FAT sérülése fájlvesztéssel jár. • Biztonsági másolat. 58

– Indextábla alkalmazása • Minden állományhoz külön táblázat • Katalógus tartalmazza a fájlhoz tartozó

– Indextábla alkalmazása • Minden állományhoz külön táblázat • Katalógus tartalmazza a fájlhoz tartozó táblát, a tábla pedig a fájl blokkjainak címét. • Előnye – az elhelyezési információ gyorsan elérhető – kevésbé sérülékeny – blokkok közvetlenül elérhetők • Hátránya – becslésre van szükség – foglaltsági tábláról külön kell gondoskodni – törlésnél az indextábla bejegyzéseit kell előrébb másolni 59

 • A katalógus egy címet, egy indextábla címet tartalmaz, amely 15 rekeszből áll.

• A katalógus egy címet, egy indextábla címet tartalmaz, amely 15 rekeszből áll. Az első 12 a fájl első 12 blokkjának sorszáma. Ha ez nem elég a 13. rekesz egy újabb indextáblára mutat. Ha ez sem elég a 14. rekesz egy indirekt indextáblára mutat, amelynek tartalma további 15 indextábla, és így tovább… Fájl INODE 1 4 2 2 3 5 4 7 Lemez 2 1 3 Katalógus 4 60

 • Műveletek állományokkal, katalógusokkal – Állományok, katalógus létrehozása állomány létrehozása: a katalógusba új

• Műveletek állományokkal, katalógusokkal – Állományok, katalógus létrehozása állomány létrehozása: a katalógusba új bejegyzés kerül, az új számára az OR. megfelelő mennyiségű szabad blokkot keres katalógus létrehozása: különleges státuszát mutató attribútumán kívül semmiben sem különbözik • Írás, olvasás állományokba – Keresés a katalógusban: a fájl neve alapján az állomány jellemzőinek, fizikai elhelyezkedésének adatait keressük. – Állomány megnyitása: az OR ellenőrzi a jogosultságot, ha rendben van létre hozza a fájl leíró táblázatát (file control block - FCB). 61

– – A megnyitás lehet: » írás » olvasás » hozzáfűzés » írás/olvasás Az

– – A megnyitás lehet: » írás » olvasás » hozzáfűzés » írás/olvasás Az adatok értelmezése szerint: » bináris » szöveg Az elérés módja szerint » sorrendi (szekvenciális) » tetszőleges (random) Pozícionálás állományokban: mutató helyének beállítása. Fájl elejére, fájl végére. Írás/olvasás Állomány kezelése: hatására az átmeneti tárolóban lévő adatok rögzítésre kerülnek, az FCB megszűnik. Állomány, katalógus törlése: bejegyzés a szülő katalógusba. 62