Implementácia súborového systému

25
©2009 Operačné systémy Implementácia súborového systému

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

Page 1: Implementácia súborového systému

©2009Operačné systémy

Implementácia súborového systému

Page 2: 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

Page 3: Implementácia súborového systému

11.3 ©2009Operačné systémy

Vrstvy systému súborov

Page 4: Implementácia súborového systému

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.

Page 5: Implementácia súborového systému

11.5 ©2009Operačné systémy

Typický Riadiaci blok súboru

Page 6: Implementácia súborového systému

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.

Page 7: Implementácia súborového systému

11.7 ©2009Operačné systémy

In-Memory File System StructuresOtvorenie súboru:

Čítanie súboru:

Page 8: Implementácia súborového systému

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.

Page 9: Implementácia súborového systému

11.9 ©2009Operačné systémy

Virtuálny súborový systém

Page 10: Implementácia súborového systému

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ť

Page 11: Implementácia súborového systému

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)

Page 12: Implementácia súborového systému

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)

Page 13: Implementácia súborového systému

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

Page 14: Implementácia súborového systému

11.14 ©2009Operačné systémy

Súvislé prideľovanie diskového priestoru

Page 15: Implementácia súborového systému

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í

Page 16: Implementácia súborového systému

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 =

Page 17: Implementácia súborového systému

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

Page 18: Implementácia súborového systému

11.18 ©2009Operačné systémy

Zreťazené prideľovanie

Page 19: Implementácia súborového systému

11.19 ©2009Operačné systémy

Tabuľka prideľovania súborov FAT

Page 20: Implementácia súborového systému

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

Page 21: Implementácia súborového systému

11.21 ©2009Operačné systémy

Príklad indexovaného prideľovania

Page 22: Implementácia súborového systému

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

Page 23: Implementácia súborového systému

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:

Page 24: Implementácia súborového systému

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:

Page 25: Implementácia súborového systému

11.25 ©2009Operačné systémy

Indexované prideľovanie – Mapovanie

Vonkajší index

index tabuľka súbor