operációs rendszerek

Post on 01-Jan-2016

42 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

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: - PowerPoint PPT Presentation

TRANSCRIPT

Operációs rendszerek

2

• 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

3

• 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

4

• 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

5

– 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

6

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

adatfeldolgozás

– átlapolt rendszerek

IN EXEC OUT

IN EXEC OUT

IN EXEC OUT

IN EXEC OUT

JOB 1

JOB 2

JOB 3

JOB 4

7

– 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

8

– 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

9

Meg

szak

ítás

keze

lőE

szkö

zke

zelő

Pro

cess

zor

keze

lés

Mem

ória

kez

elés

Áll

omán

ykez

elés

Erő

forr

ás k

ezel

és

Ren

dsze

rhív

ások

,vá

lasz

ok

JOB 0

JOB 1

JOB 2

JOB x

Per

ifér

iák

CPU MEM

10

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

11

Meg

szak

ítás

keze

lőE

szkö

zke

zelő

Pro

cess

zor

keze

lés

Mem

ória

kez

elés

Áll

omán

ykez

elés

Erő

forr

ás k

ezel

és

Ren

dsze

rhív

ások

,vá

lasz

ok

Felhasználói felület

JOB 1

JOB 2

JOB x

Per

ifér

iák,

ór

a

CPU MEM

Fel

hasz

náló

k

KERNEL SHELL

12

• 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

13

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

14

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

15

• 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

16

• 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

17

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

18

– 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

19

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

20

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

21

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

22

Felhasználói programok

Programok készítési támogatás

Felhasználói folyamatok kiszolgálása

Rendszerhívások

Eszközkezelők

Eszközvezérlő

Perifériák

Válaszok

Megszakításkezelés

Megszakítás vezérlő

Rendszermag (Kernel)Processzorkezelés, Memóriakezelés, Állománykezelés

23

• 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

Hardver

BIOS

DOS

Windows

24

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

25

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

Hardver

Virtualizáló kernel

III.Operációsrendszer

I.Operációsrendszer

II.Operációsrendszer

I. alkalmazás II. alkalmazás IIII. alkalmazás

26

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

JavaVirtuális gép

Hardver

Java Alkalmazás

A felhasználói felület

28

• 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

29

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

• Plug and Play (PnP)

– Félautomatikus beállítás• NetWare: scan for new devices

30

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

• NetWare szükség esetén foglal le memóriát

31

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

32

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

33

C forrásAssembly

forrás

TárgykódRendszer

könyvtárak Tárgykód

C fordító ASM fordító

Betölthető program

34

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

35

– 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ésNé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.

36

• 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

» NetWare esetén SEARCH DRIVE

– Láncolt programfuttatás

– Automatikus programbetöltés

37

• 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

38

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

39

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

40

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

Állományok

42

Fájl = ÁllományAz 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

43

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.

44

Buffer (cache) Fájlkezelő

EszközkezelőKE

RN

EL

Felhasználói folyamatok

Eszközök

45

FájlnevekMS-DOS

Két komponenses1 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ó karakterekASCII kódtábla nagybetűi

ASCII kódtábla számai

Néhány speciális karakter (~ ! @ # $ % ^ & _ - {})

Ékezetek használataAz újabb verzióknál lehetséges, de nem ajánlott

46

UNIXHossza 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 9xKettő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

47

Példák:

DOS EZEREGY.DOC

UNIX Az.ezeregy.Ejszaka.Mesei.DOC

Win 9x (h) Az ezeregy éjszaka meséi.doc

Win 9x (r) AZEZER~1.DOC

Helyettesítő karakterek– Wildcard, joker, metakarakter– DOS: ?, *– UNIX: ?, *,

karaktercsoport

JÓ NEM JÓ

LEVI?.TXT LEVI1.TXT

LEVI2.TXT

LEVI10.TXT

*NI.DOC DANI.DOC

ZOKNI.DOC

DANO.DOC

[TD]OBOZ(unix!)

TOBOZ

DOBOZ

KOBOZ

doboz

48

Fájlok jellemzőiUtolsó módosítás időpontjaFájl méreteTulajdonos (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

49

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

előfordulElő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 mindenholFajtái– Merev láncolás– Lágy láncolás

50

• 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

51

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.

52

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.

53

Hozzáférési jogokA 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 (eXecute)

• Törlés (Erase)

• Jellemzők módosítása (Modify)

• Hozzáférés módosításda

Jogok nyilvántartása

54

• Fájlok elhelyezéseFoglaltsági tábla

– Folytonos kiosztás• A legelső alkalmas (First Fit)

• A legjobban illeszkedő (Best Fit)

• A legrosszabbul illeszkedik (Worst Fit)

1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 0

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5

24

103

151

Első üresblokk címe

Mérete

Üres blokk címe

55

30

12

15

30

12

30

15

30

12

15

10

10

10

10

FIRST BEST WORST

56

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)

57

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

1

2

3

4

Katalógus

1

5 2 23

2 4 1

7 5 36

0 7 48

Fájl FAT Lemez

58

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

59

– 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

60

1

2

3

4

Katalógus

Fájl

4

2

5

7

2

1

3

4

INODE Lemez

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

61

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

62

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.

top related