Opercis rendszerek Az opercis rendszerek fejldse A kezdetek






























































- Slides: 62

Operációs rendszerek

• 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 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, 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 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 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 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 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ő 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 – 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ő 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 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 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 » 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 (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 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 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 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ő 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ö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, 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, Á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 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. – 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 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 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 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 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 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 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 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

• 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 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 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 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 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 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 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

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 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

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 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) 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 • • • 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 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 é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 – 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) • 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. 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 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 WORST 55

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 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 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ó 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. 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 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 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