kategória | ||||||||||
|
||||||||||
|
||
Hosszú távú információ tárolása esetén három alapvető követelmény:
- & 747f57h nbsp; Biztosítani kell nagyméretű információ tárolását
- & 747f57h nbsp; Az információ ne vesszen el az azt használó processzus befejeződésekor
- & 747f57h nbsp; Több processzus férhessen egy időben hozzá az információhoz.
Megoldás a mágneslemezes vagy más külső tárolás.
Az ilyen tárolás egységét fájlnak nevezzük.
Az információt tartósan kell tárolni.
- & 747f57h nbsp; Nem befolyásolhatja processzusok indítása, vagy megszüntetése
- & 747f57h nbsp; Csak akkor tűnhet el, ha tulajdonosa letörli azt
A fájlokat az op. rendszer kezeli, figyelembe véve a következőket:
- & 747f57h nbsp; Fájlok szerkezete
- & 747f57h nbsp; Elnevezése
- & 747f57h nbsp; Hozzáférése
- & 747f57h nbsp; Használata
- & 747f57h nbsp; Védelme
- & 747f57h nbsp; Megvalósítása
Az op. rendszer része amely a fájlokkal foglalkozik a fájlrendszer.
Ha egy processzus létrehoz egy fájlt, nevet ad neki, ezután minden más processzus ezen a néven keresztül férhet hozzá. A fájlok elnevezésével kapcsolatban az egyes op. rendszerek eltérően vélekednek, de mindegyik lehetővé teszi 1-8 karakter hosszú betűkből álló azonosító használatát. (egyes op. rendszer fájlrendszereinél a hossz 255 karakter is lehet).
Kis és nagybetűk között a UNIX különbséget tesz, az MS-DOS nem.
Sok op. rendszer kiterjesztést engedélyez, amely a fájl tartalmára utal.
(MS-DOS 3 karakter max kiterjesztés
UNIX tetszőleges hosszú, és több is lehet belőle)
A Win95 fájlrendszere lényegében ugyanolyan, mint az MS-DOS, de a WinNT, és a rá épülő op. rendszer fájlrendszere egészen más.
Három lehetséges fájlszerkezet:
1. & 747f57h nbsp; Bájtsorozat
Az op. rendszer bájtsorozatnak tekinti a fájlt. A felhasználói programok bármit tárolhatnak a fájlban és bárhogyan elnevezhetik azt.
2. & 747f57h nbsp; Rekordsorozat
A fájl rögzített hosszúságú rekordok sorozata, és minden rekordnak rögzített belső szerkezete van. Minden olvasási művelet egy teljes rekordot olvas, vagy ír egyszerre. Ezek akkor voltak jól használhatók, mikor 80 oszlopos lyukkártyát használtak, vagy 132 karakteres sornyomtatót.
Pl.: a CP/M op. rendszer 128 rekordhosszt használt.
3. & 747f57h nbsp; Rekordokból felépülő fa
A rekordok hossza nem feltétlenül azonos, és minden rekord egy rögzített partícióban kulcsmezőt tartalmaz. A fő művelet nem a következő művelet elérése, hanem az adott kulcsú elem elérése.
Az MS-DOS és a UNIX is bájtsorozatot használnak.
A UNIX és a DOS is közönséges fájlokat és könyvtárakat engedélyez.
Közönséges fájlok: a felhasználó által létrehozott állományok.
A könyvtárak rendszerfájlok, amelyek a fájlrendszer szerkezetének a megvalósítását teszik lehetővé.
A karakterspecifikus fájlok a soros B/K eszközöket modellezik, mint amilyen a terminál, nyomtató, hálózat.
A blokkspecifikus fájlok a mágneslemez egységeket modellezik.
Közönséges fájlok vagy ASCII vagy bináris állományok.
Az ASCII fájlok szövegsorokat tartalmaznak (kocsivissza jel, sorvégjel)
Előnye. Hogy közvetlenül nyomtathatóak, szerkeszthetőek és az egyik processzus által írt ASCII fájl szolgálhat egy másik processzus bemeneteként.
A bináris fájlok a nem szöveges fájlok. Általában van valamilyen belső szerkezetük, de ha belenézünk sok kriksz-krakszot láthatunk.
Pl.: UNIX végrehajtandó állományai. Ezt csak akkor tudja az op. rendszer végrehajtani, ha megfelelő formájú. (fej, szöveg, adat, áthelyezési bitek, szimbólumtábla)
Mágikus szám: végrehajtandó fájl azonosítója, hogy véletlenül ne hajtsunk végre nem végrehajtandó állományt. 16 bites szám a különböző részek hosszát, belépési pontot és jelzőbiteket tartalmazza.
A fej után jön a szöveg és az adatrész. Ezek betöltődnek a memóriába és az áthelyezési bitek alapján áthelyeződnek. A szimbólumtábla nyomkövetésre használatos.
Végrehajtandó fájl
Bináris állományra egy másik példa egy archív állomány UNIX-ban.
A fejrész tartalmazza a modul nevét, a létrehozás dátumát, a tulajdonost, a védelmi kódot és a méretet.
Minden op. rendszernek fel kell ismernie egy fájl típusát.
Windowsnál az állományra kattintva elindíthatjuk a megfelelő programot a fájl nevét tekintve paraméterként. A fájl kiterjesztéséből dönti el, hogy melyik programot indítsa el.
Problémát okozhat, ha a felhasználó olyat tesz, amire a program tervezői nem készültek fel, és a fájlok szigorúan típusosak a rendszerben.
Tekintsünk egy olyan rendszert, melyben a kimenet fájltípusa .dat.
Ha egy felhasználó olyan formázó programot ír, amely .pas fájlokat konvertál (standard bekezdésekkel (var,crt,uses)), a művelet eredményét kimenetfájlba írja, melynek típusa .dat lesz.
Pascal fordítónak átadva ezt hibát kapunk, mert a kiterjesztése nem .pas. A .dat állomány pedig nem hagyja átírni .pas állományra.
Az ilyen rendszerek a kezdő felhasználókat védik a hibáktól, míg a tapasztalt felhasználókat hátráltatja.
- & 747f57h nbsp; Szekvenciális elérés
A szekvenciális fájl elejére áll a processzor és az egymás utáni bájtokat képes csak olvasni. (mágnesszalagos elérés)
- & 747f57h nbsp; Véletlen elérésű
Olyan fájl, melynek bájtjai vagy rekordjai tetszőleges sorrendben elérhetők.
Rendszerről rendszerre változó jellegű információk a fájlról.
Pl.: fájl neve, létrehozási idő, létrehozó, tulajdonos, utolsó módosítás ideje, aktuális méret
Leggyakoribb rendszerhívások:
- & 747f57h nbsp; Létesítés (Create)
- & 747f57h nbsp; Törlés
- & 747f57h nbsp; Megnyitás
- & 747f57h nbsp; Lezárás
- & 747f57h nbsp; Olvasás
- & 747f57h nbsp; Írás
- & 747f57h nbsp; Hozzáfűzés
- & 747f57h nbsp; Partícionálás
- & 747f57h nbsp; Attribútum lekérdezés
- & 747f57h nbsp; Attribútum beállítás
- & 747f57h nbsp; Átnevezés
Találat: 1695