Implementácia súborového systému

Post on 07-Jan-2016

41 views 0 download

description

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

Transcript of Implementácia súborového systému

©2009Operačné systémy

Implementácia súborového systému

11.2 ©2009Operačné systémy

Š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

11.3 ©2009Operačné systémy

Vrstvy systému súborov

11.4 ©2009Operačné systémy

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) obsahuje podrobnosti 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.

11.5 ©2009Operačné systémy

Typický Riadiaci blok súboru

11.6 ©2009Operačné systémy

Vnútropamäťové štruktúry súborového systému

Obrázky ilustrujú nevyhnutnú štruktúru súborového systému poskytovanú 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.

11.7 ©2009Operačné systémy

In-Memory File System StructuresOtvorenie súboru:

Čítanie súboru:

11.8 ©2009Operačné systémy

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é typy súborových systémov.

API je vhodné pre VFS interfejs, viac než akýkoľvek špecifický typ súborového systému.

11.9 ©2009Operačné systémy

Virtuálny súborový systém

11.10 ©2009Operačné systémy

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ť

11.11 ©2009Operačné systémy

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)

11.12 ©2009Operačné systémy

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)

11.13 ©2009Operačné systémy

Súvislé prideľovanie

Mapovanie z logického do fyzického priestoru

LA/512

Q

R

Blok, ktorý má byť sprístupnený = ! + starting addressPremiestnenie do bloku = R

11.14 ©2009Operačné systémy

Súvislé prideľovanie diskového priestoru

11.15 ©2009Operačné systémy

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šírenie je súvislý blok diskov

Rozšírenia sú prideľované pre prideľovanie súboru

Súbor obsahuje jedno alebo viac rozšírení

11.16 ©2009Operačné systémy

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.

ukazovateľblok =

11.17 ©2009Operačné systémy

Zreťazené prideľovanie (Pokr.)

Jednoduché – potrebuje iba štartovaciu adresu

Systém správy voľného priestoru na disku – neplytvá sa priestorom

Nenáhodný prístup

Mapovanie

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.

LA/511Q

R

11.18 ©2009Operačné systémy

Zreťazené prideľovanie

11.19 ©2009Operačné systémy

Tabuľka prideľovania súborov FAT

11.20 ©2009Operačné systémy

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

11.21 ©2009Operačné systémy

Príklad indexovaného prideľovania

11.22 ©2009Operačné systémy

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

LA/512Q

R

Q = premiestnenie do index tabuľkyR = premiestnenie do bloku

11.23 ©2009Operačné systémy

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

LA / (512 x 511)Q1

R1

Q1 = blok index tabuľkyR1 je použité nasledovne:

R1 / 512Q2

R2

Q2 = premiestnenie do bloku index tabuľkyR2 premiestnené do bloku súboru:

11.24 ©2009Operačné systémy

Indexované prideľovanie – Mapovanie

Dvoj-úrovňový index (maximálna veľkosť súboru je 5123)

LA / (512 x 512)Q1

R1

Q1 = premiestnenie do vonkajšieho indexuR1 je použité nasledovne:

R1 / 512Q2

R2

Q2 = premiestnenie do bloku index tabuľkyR2 premiestnené do súborového bloku:

11.25 ©2009Operačné systémy

Indexované prideľovanie – Mapovanie

Vonkajší index

index tabuľka súbor