Súborový systém. Ing. Viliam Solčány, PhD. ZS 2011/2012. Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn.

Similar documents
Databázové systémy. SQL Window functions

Súborový systém. Základné pojmy Prístupové práva Atribúty Kvóty ACL Kryptografia Diskové oddiely

Spájanie tabuliek. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

Databázy (1) Prednáška 11. Alexander Šimko

Registrácia účtu Hik-Connect

Aplikačný dizajn manuál

Správa súborov. Súbory Adresáre Kódovanie znakov Narábanie so súbormi a adresármi v Pythone

Riešenia a technológie pre jednotnú správu používateľov

Anycast. Ľubor Jurena CEO Michal Kolárik System Administrator

Obsah. SOA REST REST princípy REST výhody prest. Otázky

TP-LINK 150Mbps Wireless AP/Client Router Model TL-WR743ND Rýchly inštalačný sprievodca

Mesačná kontrolná správa

Copyright 2016 by Martin Krug. All rights reserved.

VYLEPŠOVANIE KONCEPTU TRIEDY

Dušan Bernát

Mesačná kontrolná správa

Recipient Configuration. Štefan Pataky MCP, MCTS, MCITP

kucharka exportu pro 9FFFIMU

Constraint satisfaction problems (problémy s obmedzujúcimi podmienkami)

Databázy (1) Prednáška 08. Alexander Šimko

Jazyk SQL. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

Ochrana proti DDoS za použitia open-source software. Katarína Ďurechová

Textový formát na zasielanie údajov podľa 27 ods. 2 písm. f) zákona

Ochrana koncových staníc pomocou Cisco Security Agent 6.0. Ľubomír Varga.

MS Exchange 2010 Prechod Ing. Peter Záhradník

Správa používateľov Zabezpečenie prístupu

LL LED svietidlá na osvetlenie športovísk. MMXIII-X LEADER LIGHT s.r.o. Všetky práva vyhradené. Uvedené dáta podliehajú zmenám.

Programovanie v jazyku Python. Michal Kvasnica

VIRTUALIZÁCIA DÁTOVÝCH ÚLOŽÍSK. Karol Schütz, S&T Slovakia

Poradové a agregačné window funkcie. ROLLUP a CUBE

Computer Systems Laboratory Sungkyunkwan University

BGP - duálne prepojenie AS. (primary + backup spoj), s IBGP, cez virtuální L2 linky

REPORT DESIGNER 1 VYTVORENIE A ÚPRAVA FORMULÁRA. úprava formulárov v Money S4 / Money S Vytvorenie formulára

File System Internals. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Spôsoby zistenia ID KEP

Novinky vo Windows Azure & Scenáre. Ľubomír Goryl Solution Professional Microsoft Slovakia, s.r.o

File System Internals. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

ZADÁNÍ BAKALÁŘSKÉ PRÁCE

Štruktúra APK súboru na OS Android

Mikroprocesor. Mikroprocesor. Program. Federico Faggin, tvorca prvého mikroprocesora i4004

LaCie d2 SATA II 3Gbits

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Operačné systémy Architektúra Prehľad súčasných OS

1 Komplexný príklad využitia OOP

Long-term Information Storage Must store large amounts of data Information stored must survive the termination of the process using it Multiple proces

Nové komunikačné trendy v dátových centrách

Operaèné systémy a poèítaèové siete

File System Internals. Jo, Heeseung

File System Consistency. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Továrne na všetko ÚINF/PAZ1c (Róbert Novotný) a asociácie

OLYMP na MS SQL OBSAH 1 AKO POSTUPOVAŤ. 2 INŠTALÁCIA Microsoft SQL Servera 2008 R2 3 PREVOD DATABÁZY OLYMPU NA SQL

Da-Wei Chang CSIE.NCKU. Professor Hao-Ren Ke, National Chiao Tung University Professor Hsung-Pin Chang, National Chung Hsing University

OPERAČNÝ SYSTÉM WINDOWS NT

Manuál k programu FileZilla

Typical File Extensions File Structure

S Y N C H R O N I Z Á C I A

File System Consistency

Rýchlosť Mbit/s (download/upload) 15 Mbit / 1 Mbit. 50 Mbit / 8 Mbit. 80 Mbit / 10 Mbit. 10 Mbit / 1 Mbit. 12 Mbit / 2 Mbit.

File Systems. What do we need to know?

Microsoft Azure platforma pre Cloud Computing. Juraj Šitina, Microsoft Slovakia

UINF/PAZ1c epizóda 6

Implementation should be efficient. Provide an abstraction to the user. Abstraction should be useful. Ownership and permissions.

File Systems Ch 4. 1 CS 422 T W Bennet Mississippi College

Databázové systémy. 10. prednáška. NoSQL databázy Viktor Škultéty, ESTEN s.r.o.

A file system is a clearly-defined method that the computer's operating system uses to store, catalog, and retrieve files.

Distribuované databázy Motivácia Homogénne a heterogénne databázové systémy Distribuované databázové systémy a transakcie Požiadavky na systém,

1. Architektúra operačného systému

How to Implement DOTGO Engines. CMRL Version 1.0

XHTML1folie.doc XHTML Čo bolo predtým?

OPERATING SYSTEMS CS136

DATABÁZOVÉ SYSTÉMY. Databázová technológia je pojem, ktorý sa zaoberá riadením veľkého množstva perzistentných (stály), spoľahlivých a zdieľaných dát.

Základy Linuxu -1- Používateľské prostredia operačných systémov - Linux (prednášky)

Operačné systémy a počítačové siete RNDr. Jaroslav Janáček, PhD.

Komunikačné protokoly 2005 KP 2005 #3 - IP v02.doc

}w!"#$%&'()+,-./012345<ya

DICOM Štandard pre vytváranie, ukladanie, tlač a prenos obrazových informácií v zdravotníctve

File system internals Tanenbaum, Chapter 4. COMP3231 Operating Systems

Analýza a vizualizácia veľkých dát

AR6181-MX, AR6182-MX Čítačky MIFARE kariet

Desatinné čísla #1a. Decimal numbers #1b. How much larger is 21,8 than 1,8? Desatinné čísla #2a. Decimal numbers #2b. 14 divided by 0,5 equals...

POKROČILÉ C++ Marian Vittek

File Systems. q Files and directories q Sharing and protection q File & directory implementation

ECE 598 Advanced Operating Systems Lecture 14

Tvorba informačných systémov. 4. prednáška: Návrh IS

Internet. Princípy Internetu

UNIVERZITA KOMENSKÉHO V BRATISLAVE FAKULTA MATEMATIKY, FYZIKY A INFORMATIKY

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ. Fakulta elektrotechniky a komunikačních technologií DIPLOMOVÁ PRÁCE

Databázové systémy. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

SIP v malých telekomunikačných systémoch. Convergence. A matter of lifestyle.

Základná(umelecká(škola(Jána(Albrechta Topoľčianska(15

Testovanie bieleho šumu

File Systems Management and Examples

File Systems. CS 4410 Operating Systems

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

File Systems. Kartik Gopalan. Chapter 4 From Tanenbaum s Modern Operating System

Komunikačné protokoly 2004 KP 2004 #3 - IP v03.doc

Návod na odstránenie certifikátov so zrušenou platnosťou

AutoReport Webová aplikácia GPS systému UniTrack

Operating Systems: Lecture 12. File-System Interface and Implementation

ECE 598 Advanced Operating Systems Lecture 18

Transcription:

Súborový systém Ing. Viliam Solčány, PhD. ÓÐ ÒÝ Øº ØÙ º ZS 2011/2012 Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 1 / 42

Osnova Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 2 / 42

Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 3 / 42

Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory Aplikácie potrebujú dlhodobo uchovávat dáta, napr. bankové systémy, rezervácie leteniek,... Možnost ukladat vel ké množstvo dát (viac ako virtuálny adresový priestor) Možnost uchovat dáta aj po ukončení procesu Možnost zdiel at dáta viacerými procesmi Preto majú počítače pamät ové média ako magnetické disky apod. Problémy, ktoré vznikajú pri ich používaní Alokácia priestoru Pomenovanie uložených dát Ochrana pred neoprávneným prístupom Zotavenie po havárii (napr. výpadok napájania) OS pre prístup k médiám poskytuje abstrakciu od fyzických vlastností médií - súbor Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 4 / 42

(2) Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory Súbor je pomenovaná množina súviciacich informácií Súborový systém (File System, FS) Čast OS, ktorá poskytuje mechanizmus pre ukladanie a prístup k súborom Existujú rôzne typy FS, pojmom súborový systém sa označuje tiež typ FS Súčasné OS obvykle implementujú viac typov FS Linux: ext2, ext3, ext4, XFS, ReiserFS,... Win NT: NTFS, FAT16, FAT32 Poznámka k histórii Ked vstupným médiom boli dierne štítky, pojmom súbor sa označovala množina diernych štítkov Ked vstupným médiom boli mag. pásky, súborom bola množina záznamov na páske Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 5 / 42

Mená súborov Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory K najdôležitejším charakteristikám každého abstraktného mechanizmu patrí spôsob pomenovania objektov, ktoré poskytuje Pravidlá pre vytváranie mien súborov sa v systémoch líšia Rozlišovanie malých a vel kých písmen UNIX, Linux áno; FAT, NTFS nie Maximálna dĺžka mena súboru UNIX, Linux obvykle 256; FAT 8+3; NTFS 256 Množina znakov, ktoré mená súborov môžu obsahovat UNIX, Linux všetky 8-bitové znaky okrem \ 0 a / ; NTFS Unicode Prípony (extensions) v menách súborov UNIX, Linux FS prípony nepozná, programy môžu využívat, napr. kompilátor; Win OS môže registrovat prípony (priradit program) Iné obmedzenia Napr. Win medzera nesmie byt prvý znak,... Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 6 / 42

Vnútorná štruktúra súborov Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory Obvyklé sú 3 spôsoby Súbor je neštruktúrovaná postupnost bajtov OS nevnucuje/nerozoznáva vnútornú štruktúru súborov Maximálna flexibilita Napr. UNIX, Windows Súbor je postupnost záznamov pevnej dĺžky Číta a zapisuje sa po záznamoch Pochádza z doby diernych štítkov, jeden záznam zodpovedá jednému štítku (80 znakov), príp. jednému riadku na tlačiarni (132 znakov) V súčasnosti sa nepoužíva Súbor je strom záznamov premenlivej dĺžky Každý záznam obsahuje kl úč, podl a kl účov sú záznamy usporiadané Súbor umožňuje sprístupnit záznam s daným kl účom Používa sa vo vel kých počítačoch (mainframe) pre komerčné spracovanie dát Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 7 / 42

Typy súborov Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory OS obvykle rozoznáva niekol ko typov súborov Obyčajné súbory Textové (ASCII) riadky textu ukončené LF (UNIX), CR (Mac), CR+LF (Win) Dajú sa editovat l ubovol ným textovým editorom Základ pre prácu v shelli (prepájanie rúrami, filtre,... ) Binárne vykonatel né súbory, archívy,... OS rozumie štruktúre vykonatel ných súborov systémové súbory, ktoré umožňujú vytvorit hierarcickú štruktúru v FS V UNIXe tiež Špeciálne súbory znakové a blokové reprezentujú zariadenia Pomenované rúry pre medziprocesovú komunikáciu Symbolické linky,... Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 8 / 42

Spôsoby prístupu k obsahu súboru Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory Sekvenčný prístup Dáta sa čítajú od prvého záznamu postupne v poradí, v ktorom sú uložené Je možnost nastavit aktuálnu pozíciu na začiatok ( pretočit ) Používa sa na mag. páskach Priamy prístup (Random Access) Čítanie z l ubovol nej pozície, príp. podl a kl úča Pozícia sa určí V každej operácii Ö Operácia nastaví pozíciu, Ö potom číta sekvenčne od danej pozície Priamy prístup je potrebný pre mnohé aplikácie, napr. databázy,... V niektorých starších OS sa dalo pri vytvorení súboru určit, či bude prístup sekvenčný alebo priamy Súčasné OS poskytujú len súbory s priamym prístupom Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 9 / 42

Atribúty súborov Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory Súbor má meno a dáta Okrem toho OS udržiava pre každý súbor množinu atribútov (metadáta) Konkrétne realizácie sa v OS významne líšia, možné atribúty sú Ochrana súboru Prístupové práva, heslo, tvorca súboru, vlastník Príznaky Read-only/read-write, skrytý, systémový, archív, textový/binárny, priamy/sekvenčný prístup, dočasný, zamknutý Pre súbory prehl adávané pomocou kl úča Dĺžka záznamu, pozícia kl úča v zázname, dĺžka kl úča Časy Čas vytvorenia, čas posledného prístupu, čas poslednej zmeny Vel kosti Aktuálna vel kost (v bajtoch), maximálna vel kost Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 10 / 42

Služby OS pre prácu so súbormi Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory Väčšina moderných OS prevzala filozofiu UNIXu: všetko je súbor Rovnaké systémové služby pre prácu s rôznymi typmi súborov Program nepotrebuje vediet s akým typom pracuje (obyčajný súbor, zariadenie,... ) Pred UNIXom to tak nebolo rôzne služby pre rôzne typy zariadení, ešte iné pre obyčajné súbory Obvyklé súborové služby Ö Ø Ð Ø ÇÔ Ò ÐÓ Ê ÏÖ Ø ÔÔ Ò Ë Ø ØØÖ ÙØ Ë Ø ØØÖ ÙØ Ê Ò Ñ ÄÓ Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 11 / 42

Pamät ovo mapované súbory Mená súborov Vnútorná štruktúra súborov Typy súborov Spôsoby prístupu k obsahu súboru Atribúty súborov Služby OS pre prácu so súbormi Pamät ovo mapované súbory Alternatívny spôsob práce so súborom Súbor (príp. čast súboru) sa namapuje do virtuálneho adresového priestoru procesu (v ÑÑ Ô UNIXe ÑÙÒÑ Ô) Potom čítanie z/zápis na dané adresy v pamäti znamená čítanie z/zápis do súboru Princíp implementácie OS použije daný súbor ako odkladací priestor (swap) pre dané stránky Ak požadovaná stránka nie je v pamäti, vznikne výpadok a do stránkového rámca sa načíta zodpovedajúca čast súboru Pri vylúčení stránky z pamäti sa jej obsah zapíše do súboru Pri ukončení mapovania sa všetky modifikované stránky zapíšu do súboru Dáva možnost procesom zdiel at pamät Treba používat opatrne, obzvlášt ked sa so súborom pracuje aj cez klasické systémové služby Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 12 / 42

Adresárová štruktúra Služby OS pre prácu s adresármi Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 13 / 42

Adresárová štruktúra Adresárová štruktúra Služby OS pre prácu s adresármi Jeden oddiel (partition) na disku obsahuje jeden FS FS má dve súčasti Množina súborov, ktoré obsahujú dáta Adresárová štruktúra, ktorá umožňuje organizovat súbory ako základné jednotky Adresár umožňuje preklad mena súboru na jeho atribúty (metadáta), medzi ktorými sú aj diskové adresy dát súboru Položka adresára obsahuje meno súboru a atribúty, alebo meno súboru a smerník na atribúty games attributes games attributes mail attributes mail attributes news work attributes attributes news work attributes attributes Pri otváraní súboru sa v adresári nájde položka s daným menom, atribúty sa pre d alšie používanie skopírujú do tabul ky v pamäti S atribútmi sú uložené tiež diskové adresy dát súboru Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 14 / 42

Adresárová štruktúra (2) Adresárová štruktúra Služby OS pre prácu s adresármi V minulosti boli FS s jediným adresárom pre všetky súbory, alebo s jedným adresárom pre každého používatel a Súčasné FS umožňujú hierarchickú adresárovú štruktúru adresárový strom V UNIXe jeden koreň / Pozícia súboru v strome je vyjadrená cestou Absolútna cesta všetky adresáre na ceste od koreňa k danému súboru Relatívna cesta adresáre na ceste od pracovného adresára k danému súboru Proces má medzi svojimi atribútmi pracovný adresár Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 15 / 42

Adresárová štruktúra (3) Adresárová štruktúra Služby OS pre prácu s adresármi Všeobecnejšie adresárové štruktúry (nie čistý strom) Na jeden súbor môžu odkazovat viaceré položky adresárov Pohodlné zdiel anie súborov UNIX pevná linka (hard link) Záznamy v adresároch sú rovnocenné, nerozlíšitel né Pevná linka len v rámci toho istého FS Súbor má atribút počet liniek ak je 0, súbor sa zmaže Adresárový graf musí byt acyklický V opačnom prípade zacyklenie pri prehl adávaní, napr. 2 adresáre A, B, pričom A obsahuje linku B a B obsahuje linku na A Ak sú linky len na obyčajné súbory, cyklus nevznikne UNIX nedovol uje vytvorit pevnú linku na adresár Symbolická linka Špeciálny typ súboru, FS vie rozoznat Súbor, ktorý obsahuje cestu k inému súboru Môže íst cez hranice daného FS Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 16 / 42

Služby OS pre prácu s adresármi Adresárová štruktúra Služby OS pre prácu s adresármi Typické služby Ö Ø Ð Ø ÇÔ Ò Ö ÐÓ Ö Ê Ö vráti nasledujúcu položku adresára Ê Ò Ñ Ä Ò súbor môže byt viditel ný z viacerých adresárov ÍÒÐ Ò zmazanie položky adresára Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 17 / 42

Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost súborových systémov Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 18 / 42

Pridel ovanie a evidencia dátových blokov súborov Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost 1. Súvislé bloky Súboru je pridelená súvislá postupnost blokov Napr. pri vel kosti bloku 1KB bude 5KB súbor zaberat 5 po sebe nasledujúcich blokov V atribútoch stačí uložit číslo prvého bloku a počet blokov Čítanie je rýchle - len jeden presun hlavičky sa ukladajú postupne za sebou Problémy menia vel kost zväčšovat sa nedá zanikajú, vznikajú diery pri hl adaní miesta pre nový súbor treba poznat jeho max. vel kost nepohodlné Pre disky sa používalo v minulosti (jednoduchost, výkonnost ) každý súbor mal pri vytvorení zadanú max. vel kost V súčasnosti sa používa pre CD-ROM, jednorazovo zapisovatel né média, apod. FS ISO 9660 Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 19 / 42

Pridel ovanie a evidencia dátových blokov súborov (2) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost 2. Zret azený zoznam blokov Dátové bloky súboru tvoria zret azený zoznam Prvé slovo každého bloku obsahuje smerník na nasledujúci blok Vo zvyšku bloku sú dáta Výhody Súboru môže byt pridelený l ubovol ný blok V atribútoch stačí uložit číslo prvého bloku Sekvenčný prístup je uspokojivo rýchly Nevýhody Priamy prístup je vel mi pomalý robí sa pomocou sekvenčného Vel kost dát v bloku nie je mocnina 2 Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 20 / 42

Pridel ovanie a evidencia dátových blokov súborov (3) 2. Zret azený zoznam blokov - príklad Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Physical block File block 0 File block 1 File A File block 2 File block 3 0 File block 4 4 7 2 10 12 File B 0 Physical block File block 0 File block 1 3 File block 2 11 File block 3 6 14 Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 21 / 42

Pridel ovanie a evidencia dátových blokov súborov (4) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost 3. Zret azený zoznam blokov s tabul kou v pamäti Vylepšenie predchádzajúceho prístupu Smerníky nie sú v diskových blokoch, ale v tabul ke v pamäti Obidve nevýhody (pomalý priamy prístup, vel kost dát v bloku) predchádzajúceho prístupu sú odstránené Tabul ka sa nazýva File Allocation Table, FAT Každému diskovému bloku zodpovedá jedna položka FAT Položka FAT obsahuje číslo nasledujúceho bloku súboru Nevýhoda Tabul ka zaberá vel ký priestor v pamäti, napr. disk 80GB, blok 4KB 20M položiek, každá min. 3 bajty vel kost tabul ky je 60MB Používa sa vo FAT (FAT12, FAT16, FAT 32) FS MS DOS, Windows 98, ME Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 22 / 42

Pridel ovanie a evidencia dátových blokov súborov (5) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost 3. Zret azený zoznam blokov s tabul kou v pamäti príklad FAT pre zret azený zoznam blokov zo str. 21 Physical block 0 1 2 3 4 5 6 7 8 9 10 11 7 3 2 File A File B 10 11 12 13 14 15 12 14 1 1 Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 23 / 42

Pridel ovanie a evidencia dátových blokov súborov (6) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost 4. I-uzly I-uzol (i-node index-node) je štruktúra, v ktorej sú uložené atribúty súboru vrátane diskových adries dátových blokov Výhoda voči FAT V pamäti sú potrebné len i-uzly otvorených súborov Pre vel ké súbory by i-uzol potreboval vel a adries blokov Riešenie nepriamy blok: i-uzol obsahuje adresu bloku, v ktorom nie sú dáta, ale adresy dátových blokov Napr. vel kost bloku 4KB, adresy blokov 4-bajtové cez jednu adresu v i-uzle a nepriamy blok sa dá adresovat 1024 diskových blokov (4MB priestoru) Dá sa rozšírit : dvojito nepriame bloky, trojito nepriame bloky,... Používa sa vo FS v OS UNIX, Linux Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 24 / 42

Pridel ovanie a evidencia dátových blokov súborov (7) 4. I-uzly (pokrač) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 25 / 42

adresárov Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Pred samotným čítaním/zápisom súboru je potrebné ho otvorit vtedy sa na základe mena sprístupnia atribútu a adresy dát Mapovanie mena súboru na atribúty poskytujú adresáre Obvyklé sú 2 realizácie (vid str. 14) Atribúty a adresy dát sú priamo v položke adresára Atribúty a adresy dát sú v samostatnej štruktúre (i-uzol), položka adresára obsahuje smerník Adresár je obvykle špeciálny typ súboru Realizácia v UNIXe Položka adresára obsahuje meno súboru a číslo i-uzla Číslo i-uzla je index do tabul ky i-uzlov na disku Každý súbor (a adresár) má pridelený práve jeden i-uzol V i-uzle sú všetky atribúty (metadáta) a čísla diskových blokov dát Koreňový adresár má i-uzol číslo 1 Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 26 / 42

adresárov (2) Príklad otvorenie súboru» Ø»Ô Û Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Zdiel anie súborov v UNIXe Pevná linka (hard link) Viacero položiek (rôznych) adresárov obsahuje číslo i-uzla zdiel aného súboru V i-uzle sa uchováva počet liniek Zmazanie súboru je zmazanie položky adresára (t.j. pevnej linky) Pri zmazaní poslednej linky sa súbor naozaj zmaže Symbolická linka špeciálny typ súboru, ktorý obsahuje cestu k odkazovanému súboru Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 27 / 42

Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Správa diskového priestoru Vel kost bloku Väčšie bloky väčšia vnútorná fragmentácia v poslednom bloku súboru Menšie bloky pomalší prístup k súboru (pre každý blok nastavenie hlavičiek) Treba vhodný kompromis, obvykle 512B 4KB Správa vol ného priestoru Pomocou zoznamu vol ných blokov Zret azený zoznam blokov, kde každý blok (t.j. prvok zoznamu) obsahuje čísla vol ných blokov a číslo d alšieho bloku v zozname Pri alokovaní priestoru sa zoznam skracuje (ak sa z bloku-prvku zoznamu použijú všetky čísla blokov, daný prvok sa zo zoznamu vylúči a zaradí medzi vol né bloky) Pri uvol ňovaní priestoru sa zoznam predlžuje opačne Pomocou bitovej mapy Každému bloku na disku zodpovedá jeden bit v mape Priestorová réžia je nižšia než u zoznamu Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 28 / 42

Konzistencia Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost OS číta diskové bloky, modifikuje ich a zapisuje spät Ak nastane havária skôr než sú zapísané všetky modifikované bloky, FS môže byt v nekonzistentnom stave Obzvlášt ak sa jedná o bloky s i-uzlamy, adresármi, alebo zoznamom vol ných blokov S OS sa dodávajú programy na kontrolu konzistencie FS (UNIX: fsck, Windows: scandisk, chkdsk) Obvyklé testy konzistencie sú Konzistencia informácií o diskových blokoch (blok patrí jednému súboru, alebo je vol ný) Konzistencia adresárovej štruktúry Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 29 / 42

Konzistencia (2) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Konzistencia informácií o diskových blokoch fsck vytvorí 2 tabul ky obsahujúce počítadlo pre každý blok Tabul ka počtu výskytov bloku v súboroch Tabul ka počtu výskytov bloku v zozname vol ných blokov Všetky položky tabuliek sú inicializované na 0 fsck prechádza i-uzly a inkrementuje počítadlá zodpovedajúce blokom odkazovaným v i-uzloch (v prvej tabul ke) Potom fsck prechádza zoznam príp. bitmapu vol ných blokov a inkrementuje zodpovedajúce položky v druhej tabul ke Ak je FS konzistentný, má každý blok 1 v jednej z tabuliek, napr. č. bloku: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 v súboroch: 1 1 0 0 1 0 0 1 1 1 1 0 0 1 0 0 vol né bloky: 0 0 1 1 0 1 1 0 0 0 0 1 1 0 1 1 Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 30 / 42

Konzistencia (3) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Konzistencia informácií o diskových blokoch (pokrač.) 0-0: blok nie je v žiadnej tabul ke ( missing block ) Oprava: vložit blok do zoznamu vol ných 0-n: blok je 2 alebo viackrát v zozname vol ných Problém: mohol by byt alokovaný viackrát Oprava: upravit zoznam vol ných, aby tam bol iba 1 krát 1-1: blok patrí súboru a zároveň je v zozname vol ných Problém: mohol by byt alokovaný druhýkrát Oprava: vylúčit zo zoznamu vol ných n-0: blok patrí viacerým súborom Problém: ak ho jeden súbor uvolní, bude 1-1; ak uvolnia všetky, bude 0-n Oprava: alokovat n-1 nových blokov, daný do nich skopírovat a upravit i-uzly n-1 súborov; používatel by mal byt informovaný o probléme Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 31 / 42

Konzistencia (4) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Konzistencia adresárovej štruktúry Tabul ka počítadiel, jedna položka pre každý súbor fsck prechádza rekurzívne celý adresárový strom Pre každý výskyt súboru v adresári inkrementuje zodpovedajúce počítadlo Potom porovná počítadlá ( p ) s počtom liniek v i-uzloch ( i ) Možné chyby i>p: súbor nebude zmazaný po zmazaní všetkých liniek Oprava: upravit i na správnu hodnotu i<p: súbor bude zmazaný aj ked ešte bude mat položky v adresároch (tie budú odkazovat na neplatný i-uzol!) Oprava: upravit i na správnu hodnotu p=0, i>0: stratený súbor na ktorý nie je odkaz v adresári Oprava: umiestnit súbor do určeného adresára, napr. lost+found Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 32 / 42

Výkonnost Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Pre zlepšenie výkonnosti FS sa používajú vyrovnávacie pamäti (buffer cache, BC) BC pozostáva z blokov zodpovedajúcich diskovým blokom Pre rýchle vyhl adanie bloku v BC sa používa hašovacia tabul ka Hašuje sa na základe čísla zariadenia a čísla dikového bloku Kolízie sa zret azia Pre uvol nenie bloku pri plnej BC sa používa modifikovaná LRU stratégia Modifikácia vychádza z faktu, že čím dlhšie ostáva modifikovaný blok nezapísaný na disk, tým väčšie je riziko nekonzistencie FS v dôsledku príp. havárie Bloky BC dôležité pre konzistenciu systému (napr. i-uzly) sa zapisujú na disk (t.j. uvol ňujú) okamžite po modifikácii, alebo aspoň prednostne, aj ked nie sú najdlhšie nepoužité Systém tiež periodicky zapisuje všetky modifikované bloky Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 33 / 42

Výkonnost (2) Pridel ovanie a evidencia dátových blokov súborov adresárov Správa diskového priestoru Konzistencia Výkonnost Prednačítavanie blokov súboru (read-ahead) FS môže pri čítaní súboru načítat do BC aj bloky súboru, ktoré ešte procesy nepožadovali Prednačítavanie je úspešné, ak proces číta súbor sekvenčne FS sa môže pokúsit odhadnút, či je súbor čítaný sekvenčne, napr. ak sa vykoná seek, prednačítavanie pre daný súbor sa zastaví Redukcia pohybu ramienka disku Ak sú bloky súboru v jednom cylindri, je čítanie rýchlejšie Dá sa dosiahnut alokovaním skupín blokov namiesto individuálnej alokácie každého bloku Zrýchlenie čítania i-uzlov Disk sa rozdelí na skupiny cylindrov, každá skupina má svoju oblast pre i-uzly (t.j. nie všetky i-uzly na začiatku disku) Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 34 / 42

Doména ochrany Prístupová matica Prístupové zoznamy (ACL) C-zoznamy Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 35 / 42

Doména ochrany Doména ochrany Prístupová matica Prístupové zoznamy (ACL) C-zoznamy k objektom súbory, procesy, semafory, segmenty pamäti, zariadenia,... Pre každý objekt je definovaná množina možných operácií (pre súbor rwx, pre semafor wait a signal,... ) Doména je množina dvojíc (objekt, množina prístupových práv) Prístupové právo je právo vykonat jednu z možných operácii Doména často zodpovedá jednému používatel ovi (špecifikuje čo používatel môže a čo nie), ale môže to byt aj všeobecnejšie Príklad Domain1 Domain2 Domain3 File1[R] File2[RW] File3[R] File4[RWX] File5[RW] Printer1[W] File6[RWX] Plotter2[W] Objekt môže patrit do viacerých domén, aj s rôznymi právami v každej Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 36 / 42

Doména ochrany (2) Doména ochrany Prístupová matica Prístupové zoznamy (ACL) C-zoznamy V každom okamihu beží proces v nejakej doméne ochrany Môže pristupovat k istej množine objektov, s danými právami Príslušnost k doméne sa môže menit prepnutie domény Príklad UNIX Pre proces je doména daná jeho UID a GID Pre danú kombináciu (UID, GID) je možné zostavit množinu objektov a prístupových práv k nim Dva procesy s rovnakým (UID, GID) môžu pristupovat k rovnakej množine objektov Proces sa môže vykonávat v používatel skom režime, alebo režime jadra V každom režime je v inej doméne v režime jadra môže pristupovat napr. k celému disku,... zmena režimu spôsobí prepnutie domény ochrany Vykonanie programu, ktorý má nastavený setuid (setgid) bit Proces získa nové efektívne uid, (gid) má prístup k iným objektom, s inými právami prepnutie domény Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 37 / 42

Prístupová matica Konceptuálny spôsob reprezentácie práv domén k objektom Riadky zodpovedajú doménam, stĺpce objektom Prvok matice obsahuje práva domény k objektu Doména ochrany Prístupová matica Prístupové zoznamy (ACL) File1 File2 File3 File4 File5 File6 Printer1 Plotter2 C-zoznamy Domain1 Read Read Write Domain2 Read Read Write Execute Read Write Write Domain3 Read Write Execute Write Write Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 38 / 42

Prístupová matica (2) Prepínanie domén môže byt tiež zachytené v prístupovej matici Pridajú sa domény ako objekty s operáciou vstup (enter) Domain1 File1 File2 File3 File4 File5 File6 Printer1 Plotter2 Read Read Write Domain1 Domain2 Domain3 Enter Doména ochrany Prístupová matica Prístupové zoznamy (ACL) C-zoznamy Domain2 Domain3 Read Read Write Execute Read Write Read Write Execute Write Write Write Proces v doméne 1 sa môže prepnút do domény 2, ale spät nie Modeluje vykonanie setuid programu v UNIXe Prístupová matica je vel ká a riedka v praxi sa obvykle nepoužíva V praxi sa ukladajú neprázdne prvky Po stĺpcoch prístupové zoznamy (Access Control Lists, ACL) Po riadkoch C-zoznamy (C-lists, Capabilities) Tieto dve metódy majú značne odlišné vlastnosti Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 39 / 42

Prístupové zoznamy (ACL) Doména ochrany Prístupová matica Prístupové zoznamy (ACL) C-zoznamy S každým objektom je spojený zoznam obsahujúci domény, ktoré k objektu môžu pristupovat spolu s právami prístupu Príklad Doména1 = používatel A, doména2 = používatel B Súbor1: ACL = A:R, B:RW- Súbor2: ACL = A:R-X, B:R-X Tlačiareň: ACL = A:-W-, B:-W- V systémoch podporujúcich skupiny používatel ov môže byt doména definovaná dvojicou (UID, GID) Pre skrátenie zápisu sa môžu použit v ACL špeciálne znaky, napr. * = všetci Príklad Používatelia A, B, skupiny G1, G2 Súbor1: ACL = (A, *):RWX... A môže RWX Súbor2: ACL = (A, *):RW-, (*, G1):R- -... členovia G1:R, A:RW Tlačiareň: ACL = (*, *):-W-, (*, G2):- - -... všetci okrem členov G2 V klasickom UNIXovom FS nie sú ACL, v súčasných sú, aj Win Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 40 / 42

C-zoznamy Doména ochrany Prístupová matica Prístupové zoznamy (ACL) C-zoznamy S každým procesom je spojený zoznam objektov a práva ako k nim môže pristupovat (t.j. doména procesu) Prvok zoznamu je Capability ( schopnost ), zoznam je Capability-list, C-list Štruktúra capability má prvky typ objektu práva obvykle bitová mapa odkaz na objekt, napr. číslo i-uzla Príklad C-list pre nejakú doménu typ práva objekt file r-x i-node 268 file rwx i-node 475 print -w- i-node 123 Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 41 / 42

C-zoznamy (2) Doména ochrany Prístupová matica Prístupové zoznamy (ACL) C-zoznamy Výhody Proces môže urobit len to, na čo má schopnosti a nič iné vhodné pre spúšt anie neznámych programov (princíp najmenšej autority) Vhodné pre riadenie prístupu v distribuovaných systémoch Problémy Ako zistit kto všetko má schopnosti na daný objekt Ako zabránit neželanému odovzdávaniu schopností d alším procesom Ako zrušit prístup Pre objekt vytvorit sprostredkovatel a ( proxy objekt) a prepojit ich Dat schopnost na proxy zrušením proxy objektu sa zruší prístup k skutočnému objektu C-zoznamy sa v praxi používajú podstatne menej než ACL Viliam Solčány, FIIT STU Bratislava Operačné systémy 2011/12 Predn. 12 42 / 42