250 likes | 350 Views
Implementácia súborového systému. Štruktúra súborového systému. Štruktúra súboru Logic ká pamäťová jednotka Súbor súvisiacich informácií Súborový systém je organizovaný do vrstiev File system (súborový systém) je uchovávaný v sekundárnej pamäťovej jednotke (disk y )
E N D
Štruktúra súborového systému • Štruktúra súboru • Logická pamäťová jednotka • Súbor súvisiacich informácií • Súborový systém je organizovaný do vrstiev • File system (súborový systém) je uchovávaný v sekundárnej pamäťovej jednotke (disky) • Poskytuje účinný a vhodný prístup na disk, umožňuje uchovávanie dát, ich premiestňovanie, zavádzanie a prehľadávanie jednoduchým spôsobom • File control block (blok riadenia súboru) – uchováva štruktúru obsahujúcu informáciu o súbore • Device driver (ovládací program pre zariadenie)- riadi fyzické zariadenie
Implementácia súborového systému • Bootovací riadiaci blok (Boot control block)obsahuje informáciu potrebnú k bootovaniu operačného systému • Kontrolný blok jednotky (Volume control block)obsahujepodrobnosti o zariadení (diskovom) • Adresárová štruktúra organizuje súbory • Riadiaci blok súboru (File Control Block)(FCB) obsahuje veľa detailov o súbore, vrátane oprávnení, vlastníka a umiestnenia blokov.
Vnútropamäťové štruktúry súborového systému • Obrázky ilustrujú nevyhnutnú štruktúru súborového systémuposkytovanú operačnými systémami. • Obrázok (a)sa týka otvorenia súboru • Obrázok (b) sa týka procedúry čítania súboru.
In-Memory File System Structures Otvorenie súboru: Čítanie súboru:
Virtuálne súborovésystémy • Virtuálne súborové systémy (Virtual File Systems) (VFS) poskytujú objektovo-orientovanýspôsob implementovania súborového systému. • VFS dovoľuje, aby rovnaký interfejs systémového volania (API) bol použitý pre rozličné typysúborových systémov. • API je vhodné pre VFS interfejs, viac než akýkoľvek špecifický typ súborového systému.
Implementácia adresára (Directory Implementation) • Lineárny zoznam (Linear list)- najjednoduchší spôsob implementácie adresára je lineárny zoznam mien súborov s ukazovateľmi na dátové bloky. • Jednoduchý z hľadiska programovania • Pri vykonávaní náročný na čas • Hešovacia tabuľka (Hash Table) – berie hodnotu, ktorá je vypočítaná z mena súboru, a vracia ukazovateľ na meno súboru v lineárnom zozname. • Znižuje prehľadávací čas adresára • kolízie– situácie kedy dve súborové mená majú rovnako vypočítané miesta v tabuľke. Hlavnými ťažkosťami s rozptyľovacou tabuľkou sú pevná dĺžka tabuľky a závislosť hešovacej funkcie od rozmeru hešovacej tabuľky. • Fixná veľkosť
Metódy prideľovania diskového priestoru • Metódy prideľovania (alokácie) sú rozdelené na základe spôsobu prideľovania blokov disku pre súbory: • Súvislé prideľovanie (Contiguous allocation) • Zreťazené prideľovanie (Linked allocation) • Indexované prideľovanie (Indexed allocation)
Súvislé prideľovanie • Každý súbor obsadzuje množinu súvislých blokov na disku. • Jednoduchý prístup k súboru, ktorému bol pridelený súvislý priestor – iba adresa prvého bloku (block #) a dĺžka prideleného priestoru (počet blokov) sú požadované • Náhodný prístup • Nehospodárne využitie priestoru (problém dynamického prideľovania pamäti) • Súbory nemôžu rásť (zväčšovať sa)
Súvislé prideľovanie • Mapovanie z logického do fyzického priestoru Q LA/512 R • Blok, ktorý má byť sprístupnený = ! + starting address • Premiestnenie do bloku = R
Systémy založené na rozšírení • Veľa novších súborových systémov (napr.súborový systém Veritas) používa modifikovanú metódu súvislého prideľovania • Súborový systém založený na rozšírení prideľuje diskové bloky v rozšírení • Rozšíreniejesúvislý blok diskov • Rozšírenia sú prideľované pre prideľovanie súboru • Súbor obsahuje jedno alebo viac rozšírení
ukazovateľ blok = Zreťazené prideľovanie (alokácia) • Každý súbor je zreťazeným zoznamom blokov na disku: bloky môžu byť roztrúsené kdekoľvek na disku.
Zreťazené prideľovanie (Pokr.) • Jednoduché – potrebuje iba štartovaciu adresu • Systém správy voľného priestoruna disku – neplytvá sa priestorom • Nenáhodný prístup • Mapovanie Q LA/511 R Blok ktorý bol pridelený je Q-tý blok v zreťazenom zozname blokov reprezentujúcich súbor. Premiestnenie do bloku = R + 1 Tabuľka prideľovania súborov - File-allocation table (FAT) – prideľovanie priestoru na disku používané v MS-DOS a OS/2.
Indexované prideľovanie • Sústreďuje všetky ukazovatele do jedného bloku, do tzv.index bloku (index block) • Logický pohľad tabuľka indexov
Indexovanéprideľovanie (Pokr.) • Potrebuje tabuľku indexov • Náhodný prístup • Dynamické prideľovanie je bez vonkajšej fragmentácie, ale má meno index bloku • Mapovanie z logického do fyzického priestoru v súbore maximálnej veľkosti 256K slov a veľkosti bloku 512 slov. Potrebujeme iba 1 blok pre index tabuľku Q LA/512 R Q = premiestnenie do index tabuľky R = premiestnenie do bloku
Indexované prideľovanie – Mapovanie • Mapovanie z logického do fyzického priestoru v súbore neohraničenej dĺžky (blok veľkosti 512 slov) • Zreťazená schéma – Zreťazené bloky index tabuľky (nie je limitovaná veľkosť) Q1 LA / (512 x 511) R1 Q1= blok index tabuľky R1je použité nasledovne: Q2 R1 / 512 R2 Q2 = premiestnenie do bloku index tabuľky R2premiestnené do bloku súboru:
Indexované prideľovanie – Mapovanie • Dvoj-úrovňový index (maximálna veľkosť súboru je 5123) Q1 LA / (512 x 512) R1 Q1 = premiestnenie do vonkajšieho indexu R1je použité nasledovne: Q2 R1 / 512 R2 Q2 = premiestnenie do bloku index tabuľky R2premiestnené do súborového bloku:
Indexované prideľovanie – Mapovanie Vonkajší index súbor index tabuľka