Operatsioonisüsteemid: Failisüsteemid

Seotud dokumendid
MTAT Operatsioonisüsteemid - Failisüsteemid

Loeng03

Hajussüsteemid

Operatsioonisüsteemide ehitus

P2P süsteemid

SAF 7 demo paigaldus. 1.Eeldused SAF 7 demo vajab 32- või 64-bitist Windows 7, Window 8, Windows 10, Windows Server 2008 R2, Windows Server 2012, Wind

PowerPointi esitlus

Operatsioonisüsteemid Intelligentne arvutikasutus IFI6070 Tanel Toova

DNS teenus teoorias ja praktikas Autor Siim Adamson ITK Autor: Siim Adamson ITK

MTAT Operatsioonisüsteemid - Turvalisus

Operatsioonisüsteemi ülesanded

MTAT Operatsioonisüsteemid - Turvalisus

TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE Referaat aines Andmeturve MTAT Õpp

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Peer-to-peer süsteemid Peer-to-peer süsteemide liigitus Liigitus Ründed Anonüümsus Puuräsi DHT Näide: Kazaa Näide: Kadem

Andmeturve

Pealkiri

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Nimeteenuse näited DNS DNS NIS NIS+ LDAP JNDI Hierarhiline Interneti nimede süsteem Põhilised päringud: Arvuti nime järg

Kfloppy vormindamistööriista käsiraamat

Elisa Ring Elisa Ringi mobiilirakendus Versioon

IFI6083_Algoritmid_ja_andmestruktuurid_IF_3

StandardBooks_versiooni_uuendusWin

X Window System tuntud kui: X11, X, X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesug

Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimu

Andmed arvuti mälus Bitid ja baidid

HAJUSSÜSTEEMID HAJUSSÜSTEEMID SOAP ja veebiteenused Web Services Web Services SOAP WSDL Ühilduvus UDDI Kihiline arhitektuur masinsuhtluse jaoks erinev

Andmeturve

PowerPoint Presentation

Microsoft Word - TallinnLV_lihtsustatud_manual_asutuse_juhataja_ doc

MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite l

OPERATSIOONISÜSTEEMIDE EHITUS Ülevaade Protsessi mõiste Protsesside planeerimine Operatsioonid protsessidega Protsessihaldus Protsesside koostöö Prots

PowerPoint Presentation

MTAT Operatsioonisüsteemid - Turvalisus

Pealkiri

1. AKE Ajalise keerukuse empiiriline hindamine

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx

Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier

Operatsioonisüsteemi ülesanded

Microsoft Word - ref - Romet Piho - Tutorial D.doc

Microsoft Word - requirements.doc

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Veebiteenused ja SOAP Web Services Web Services SOAP WSDL Ühilduvus UDDI Kihiline arhitektuur masinsuhtluse jaoks erinev

Linux süsteemi administreerimine

I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Kons

Tiia Salm 2011 Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pd

Operatsioonisüsteemid

Hoia oma arvuti turvaline ja kiire 1.Leia start nupust alustades Juhtpaneel 2.Juhtpaneeli aadressiribalt leia Kõik juhtpaneeli üksused 3.Avanenud tööa

3D mänguarenduse kursus (MTAT ) Loeng 3 Jaanus Uri 2013

(Microsoft PowerPoint - seminar_6_n\365uded-ainemudel tagasiside.ppt [Compatibility Mode])

Document number:

Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: G

Microsoft Word - Errata_Andmebaaside_projekteerimine_2013_06

EE-macbook-retina-12-early2015-qs.indd

Müük (Microsoft Dynamics AX (Axapta) tarkvara) Paigaldusjuhend bifree.ee qlik.com

Funktsionaalne Programmeerimine

Uudiseid k-meride abil bakterite leidmisest [Compatibility Mode]

Microsoft Word - installation-guide.doc

PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019

SQL

Monitooring

Tartu Ülikool Loodus- ja täppisteaduste valdkond Arvutiteaduse instituut Sandra Puusepp CVE Referaat Tartu 2018

Andmeturve

IT infrastruktuuri teenused sissejuhatav loeng 00

PowerPoint Presentation

Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Dian

Microsoft Word - Referaat.docx

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad

E-arvete juhend

G aiasoft Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon ja hilisemad K

Tarkvaraline raadio Software defined radio (SDR) Jaanus Kalde 2017

Mining Meaningful Patterns

Häälestusutiliit Kasutusjuhend

Loeng12

Loeng07

EIK-OSadmin-Edmund

Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plu

Tartu Kutsehariduskeskus IKT osakond Merlis Karja-Kännaste ASUTUSE DOKUMENDIREGISTRI AVALIK VAADE Analüüs Juhendaja Mirjam-Merike Sõmer Tartu 2015

Image segmentation

Süsteemiintegratsioon

Dias nummer 1

Operatsioonisüsteemid 1. loeng

kaubamärgikaitsmineEkke [Kirjutuskaitstud] [Ühilduvusrežiim]

SPORTident Air+

DE_loeng5

Operatsioonisüsteemide ehitus

Microsoft Word - Keypad-controller-manual-new_1.docx

Võrguväljaanded ja veebiarhiveerimine

DVD_8_Klasteranalüüs

CPA4164 USB 2.0 kõrgekvaliteediline videoadapter KASUTUSJUHEND 1. PEATÜKK - Ülevaade 1.1 Tutvustus CPA4164 USB 2.0 videoadapter võimaldab teil arvutis

MTAT Operatsioonisüsteemid - protsessid

ArcGIS Online Konto loomine Veebikaardi loomine Rakenduste tegemine - esitlus

Programmi AnimatorDV Simple+ lühike kasutajajuhend

Ajaveeb-veebileht.pptx

Eritingimused - (isiku)andmete töötlemine seoses HW teenuste osutamisega Vastavalt EL isikuandmete kaitse üldmäärusele (2016/679) toimub isikuandmete

Microsoft Word - EHR.docx

DIGITAALTEHNIKA DIGITAALTEHNIKA Arvusüsteemid Kümnendsüsteem Kahendsüsteem Kaheksandsüsteem Kuueteistkü


prakt8.dvi

ArcGIS rakendused välitöödeks Raido Valdmaa AlphaGIS

Neurovõrgud. Praktikum aprill a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust k

Relatsiooniline andmebaaside teooria II. 6. Loeng

Väljavõte:

Operatsioonisüsteemid: Failisüsteemid Meelis Roos Pelle Jakovits* Arvutiteaduse Instituut Tartu Ülikool 1

Failisüsteemid Faili mõiste Juurdepääsumeetodid Kataloogistruktuur Failide jagamine Failisüsteemide realiseerimine Failisüsteemi struktuur Taastumine vigadest Failisüsteemide näited 2

Faili struktuur Ei mingit baitide või sõnade jada Lihtne kirjestruktuur Read Fikseeritud pikkusega kirjed Erineva pikkusega kirjed Keerukamad struktuurid Formaaditud dokumendid (OLE objektivoog, ASN.1,... ) Segmentidest koosnev käivitatav fail Keerulisemaid formaate saab lihtsamate abil esitada Kelle kontrolli all on formaat? Opsüsteemi Rakendusprogrammi 3

Faili atribuudid Nimi ainus inimloetaval kujul olev metainfo Tüüp vajalik süsteemides, mis toetavad erinevat tüüpi faile Sisemine identifikaator näiteks i-kirjed UNIXis Asukoht kuskohas fail kettal asub Maht faili pikkus Kaitse juurdepääsuõigused Omanikuinfo turvalisuse ja arvepidamise tarvis Muutmise, lugemise, loomise ajad monitooringuks Metainfot hoitakse enamasti kataloogistruktuuris Harud (streams)? Kasutaja defineeritavad atribuudid 4

Operatsioonid failidega Loomine Kirjutamine Lugemine Positsioneerimine failis (seek) Kustutamine Pikkuse muutmine (truncate, fallocate) Kõrgema taseme operatsioonid on realiseeritavad nende kaudu Avamine ( failipide, FCB,... ) Sulgemine 5

Pöördusmeetodid Järjestikune pöördus modelleeritud lindiseadme järgi read next write next rewind Puudub rewrite (ülekirjutamine nii, et tagapool andmed säilivad) 6

Pöördusmeetodid Otsepöördus modelleeritud kettaseadme järgi read n write n position to n read next write next rewrite n n = suhteline ploki number (faili alguse suhtes) Järjestikpöördust saab simuleerida otsepöörduse abil 7

Kataloogistruktuur Kusagil peab olema nimekiri failidest Lihtsaimal juhul on iga seadme alguses kataloog selle seadme failide kohta Kataloogis on iga faili kohta kataloogikirje (nimi, pikkus, aadress, omanik jne) 8

Operatsioonid kataloogiga Faili otsimine nime järgi (lookup) Faili loomine Faili kustutamine Kataloogi nimekirja vaatamine Faili ümber nimetamine Failisüsteemi läbimine 9

Kataloogisüsteemi organiseerimine Ühest üldisest kataloogist kipub väheks jääma Efektiivsus tahame faili kergesti üles leida Nimetamine kasutajatele mugavuse jaoks Mitu kasutajat võivad tahta sama failinime kasutada Sama fail võib esineda mitme erineva nime all Grupeerimine tahame faile loogiliselt grupeerida mingite omaduste järgi 10

Kahetasemeline kataloogistruktuur Igale kasutajale oma kataloog; tipptasemel on metakataloog, kus on vaid viited kasutajate kataloogidele Igal kasutajal oma sõltumatu nimeruum ainult oma failidega Kas teiste kasutajate kataloogidesse näeb? Kui näeb, siis kuidas sinna pöörduda? kataloogitee Kuskohas on süsteemsed programmid, mis kõigile näha on? 11

Puustruktuuriga kataloogid Arendame ideed edasi: laseme kataloogipuu suvalise sügavuse peale Saavutame loogilise grupeerimise 12

Puustruktuuriga kataloogid Kataloog on eritüübiline fail, mille sees on uued kataloogikirjed Kataloogipuu manipuleerimise operatsioonid olid algselt failioperatsioonid, hiljem eraldati nad kataloogioperatsioonideks: Kataloogi loomine (mkdir) Kataloogi kustutamine (rmdir) Jooksva kataloogi mõiste (igal protsessil või globaalne) Jooksva kataloogi muutmine (chdir), jooksva kataloogi küsimine Kataloogitee (absoluutne ja suhteline) Otsimistee (PATH), Desktop File 13

Veel operatsioone Veel operatsioone failidega: sync faili salvestusseadmele ära kirjutamine mmap faili lehekülgede mällu kujutamine notify muutustest teavituse tellimine ioctl muu süsteemispetsiifiline tegevus sendfile, splice, muud optimeeringud Veel operatsioone kataloogidega: move liigutamine ringi kataloogipuus notify, sync, ioctl 14

Tsükliteta graaf Puustruktuur keelab failide ja kataloogide jagamise erinevate harude vahel Kasutajad tahavad vahel jagamist (sama fail või kataloog on nähtav mitmes kataloogist) Puu asemel võtame kasutusele suunatud tsükliteta graafi Link meetod alias-nimede tekitamiseks Nimeviit (symbolic link, symlink) Viit (hard link) Mis saab, kui viidatav objekt kustutatakse? Kasutuskordade loendamine Tagasiviidad linkide kustutamiseks 15

Üldine graaf Viidad võivad tekitada kataloogistruktuuris tsükleid Tsüklite haldamine on problemaatiline, näiteks: Failisüsteemi läbimisel Faili kustutamisel kasutuskordade loendamine ei aita Graafist tsükli leidmise algoritmid on kulukad, eriti kui arvestada igal sammul kettalt lugemist Prügikoristus kettal on samuti kulukas Lahendus: mitte lubada viitamist kataloogidele Nimeviitade korral on tsüklid tavaliselt siiski lubatud Failisüsteemi läbimisel piiratakse nimeviitadega saadavat sügavust 16

Failisüsteemide monteerimine Monteerimine, ühendamine, ingl. k. mounting Failisüsteem tuleb enne kasutamist monteerida, et ta nimeruumis nähtavaks saaks Failisüsteem monteeritakse mingisse kindlasse punkti olemasolevas nimeruumis Enamasti on monteerimispunktiks tühi kataloog Mis saab, kui monteeritakse mittetühja kataloogi peale? Viga Katab vana sisu kinni kuni lahti monteerimiseni Erinevatel protsessidel võib nimeruum (namespace) olla erinev monteeritud on erinevad failisüsteemid Ühendmonteerimine (union mount 17

Failisüsteemide monteerimine Monteerida saab failisüsteemi Failisüsteem võib olla mingil plokkseadmel, võrgus või üldse käigu pealt kokku pandud Kokku üks suur virtuaalne failisüsteem (VFS) Eriotstarbelised failisüsteemid procfs, kernfs, usbfs, autofs,... 18

Failide jagamine Sama faili tahavad vahel mitu kasutajat/protsessi korraga kasutada Kuidagi tuleb faile konsistentsena hoida Siin kasutatakse erinevaid semantikaid: Lukustamine (kohustuslik ja soovitav; opportunistic locking) Eksklusiivne avamine Atomaarsus kas üksikute lugemis-kirjutamisoperatsioonide tasemel või sessiooni (open ja close vahel) tasemel 19

Kaitse Igal failisüsteemi objektil (failid, kataloogid,... ) on omanik Omaniku tähistamiseks mingi numbriline ID (UNIXis UID, Windowsis SID,... ) Omanik saab määrata objektile juurdepääsuõigused Loabitid UNIXis ACL (Access Control List) üldisem Juurdepääs kasutajate, gruppide lõikes ja ülejäänutele Alternatiiv: failide või kataloogidega paroolide sidumine 20

Failisüsteemi kihiline struktuur 1. Rakendusprogrammid 2. Loogiline failisüsteem tegeleb metainfoga (kataloogistruktuur, faili kontrollplokid) 3. Failide organiseerimise meetod teab failide asukohtadest, loogilistest ja füüsilistest plokkidest, vabast ruumist 4. Plokkseadmete tase plokkide I/O haldus, puhverdamine ja järjekorrad 5. Seadmedraiverid tõlgivad üldisi I/O käske seadme käskudeks ja suhtlevad seadmega 6. Seadmed 21

Mida üks failisüsteem kettal hoiab? (Partitsioonitabel väljaspool konkreetset failisüsteemi) Alglaadeplokk (UFS: boot block, NTFS: partition boot sector) opsüsteemi buutimiseks vajalik info Failisüsteemi juhtplokk konkreetse failisüsteemi detailne info (plokkide arv, vabade plokkide arv ja asukoht, vabade failikirjete arv ja asukoht,... ). UFS puhul superblock, NTFS puhul MFT (Master File Table) Kataloogistruktuur kataloogipuu hoidmiseks Failide kontrollplokid (FCB File Control Block) Detailid iga konkreetse faili kohta. UFS puhul i-kirje, NTFS puhul asub MFT sees tabelis 22

Mida failisüsteem mälus hoiab (Monteerimispunktide tabel) Monteeritud failisüsteemide tabel Viimati kasutatud kataloogistruktuuri kirjed (ja muu metainfo) puhverdamise mõttes Puhverdatud andmeplokid Süsteemne avatud failide tabel avatud failide FCB-de koopiad Iga protsessi avatud failide tabel UNIX: failideskriptorid (file descriptor) Win32: failipidemed (file handle) 23

Virtuaalne failisüsteem Objektorienteeritud lähenemine paljude failisüsteemide realiseerimisele samas opsüsteemis VFS laseb sama süsteemifunktsioonide liidest kasutada paljudel erinevatel failisüsteemide tüüpidel Rakendusprogrammid liidestuvad VFS-ga, mitte konkreetse failisüsteemiga VFS pakub konkreetsetele failisüsteemidele omakorda madalama taseme liidese, mida need kasutavad oma info süsteemile edastamiseks Konkreetseid failisüsteemi tüüpe võib vaadelda kui alamklasse, mis realiseerivad sama liidese VFS realiseerib ära selle osa funktsionaalsusest, mis on failisüsteemidele ühine ja antud opsüsteemis kohustuslik 24

Virtuaalne failisüsteem 25

Kataloogide realiseerimine Lineaarse nimekirjana Lihtne realiseerida Aeglane suure failide arvu juures Paisktabelina Otsing on kiirem Fikseeritud suurus; kollisioonid Puuna (tihti näiteks B-puud) Otsing on kiire Efektiivne Keeruline programmeerida Kombineeritud (puu + paisksalvestus) 26

Ruumi hõivamine Kuidas konkreetsele failile kettaplokke jagada? Kolm põhilist meetodit: Pidev tükk Lingitud paigutus Indekseeritud paigutus 28

Pideva tükina hõivamine Iga fail katab mingi pideva plokkide jada kettal Lihtne ainult esimese ploki number ja faili pikkus plokkides on vaja meelde jätta Otsepöördus suvalise ploki poole Raiskab ruumi (dünaamiline ruumihalduse probleem nagu mälu juures) Fail ei saa kasvada (või on kasvamine keeruline / aeglane) Mitmed uuemad failisüsteemid (XFS, JFS, Veritas File System, QFS, Ext4) kasutavad pideva paigutuse modifitseeritud varianti: Kettaruumi jagatakse ulatuste (extent) kaupa. See on üks sidus ala. Fail koosneb ühest või mitmes ulatusest. 29

Lingitud paigutus FCB-s on esimese ploki number Iga ploki sisse pannakse järgmise ploki number Tekib ahel (lõpetab spetsiaalne number nil) 30

Lingitud paigutus Vaba ruumi ei raisata (pole fikseeritud pikkusi) Lihtne realiseerida Otsepöördust pole ahel tuleb iga kord algusest läbida Klastrid hõivame ruumi mitme sektori kaupa Õrn vigade suhtes (ahel läheb kergesti katki) 31

Lingitud paigutus FAT FAT (File Allocation Table) viitade tabel on eraldi kettaosas FAT tabel on reeglina puhverdatud mällu Liigse positsioneerimise vältimiseks Saame ka otsepöörduse Ruumi hõivatakse klastrite kaupa (4kiB-64kiB) Kasutusel DOS-is, eemaldatavatel seadmetel FAT12, FAT16, FAT32, TFAT, ExFAT, pikad failinimed 32

Indekseeritud paigutus Tehtud efektiivsema otsepöörduse jaoks Kõik plokkide viidad tuuakse kokku ühte kohta Iga FCB-ga seotakse viitade plokk viidad kõigile selle faili plokkidele Raiskab ruumi viitadele tervete plokkide kaupa, aga välist fragmenteerumist pole Lingitud indekseerimine: ahel indeksiplokkidest Mitmetasemeline indeks: indeksiplokkidest tehakse puu Kombineeritud skeem: natuke plokke viidatakse otse, natuke 1- tasemelise puuna, edasi 2-tasemelise puuna ja ülejäänud 3- tasemelise puuna (UFS) Aukudega failid 33

Kombineeritud indekseeritud paigutus 34

Vaba ruumi haldus Kuidagi tuleb meeles hoida, missugused kettaplokid on vabad Bitivektoriga: iga ploki kohta on bitt (1, kui plokk on vaba) Bitte on niipalju kui failisüsteemis kasutatavaid andmeplokke Otsimisel leitakse esimene 0-st erinev sõna ja selle seest esimene nullist erinev bitt Võtab suhteliselt palju ruumi Pidevaid alasid on lihtne leida Ahelana Ahel on plokkidest endist või eraldiseisev (nagu FATil) Sidusaid alasid on raske leida Grupeerimine Loendamine 35

Efektiivsus ja jõudlus Failisüsteemi efektiivsus ja jõudlus sõltuvad paljuski andmete paigutusest kettal ja kataloogialgoritmidest Näide: UFS ja silindrigrupid ning i-kirjete laiali jaotamine Näide: faili viimase kasutuse aja (atime) pidevalt kettale kirjutamine või kirjutamata jätmine Kettapuhvrid (disk cache) mäluosa, mis on eraldatud kettal olevate sagedasti kasutatavate andmete puhverdamiseks Free-behind ja read-ahead tehnikad järjestikpöörduse optimeerimiseks fadvise() ja madvise() süsteemifunktsioonid Sünkroonsed ja asünkroonsed kettaoperatsioonid Mäluketas (RAM disk) 36

Taastumine vigadest Osasid andmestruktuure puhverdatakse mälus kiiruse huvides Aeg-ajalt tuleb seda kettale kirjutada Vahel läheb vool enne ära või juhtub muu jama Pooliku kirjutamisoperatsiooni puhul võivad erinevad struktuurid kettal omavahel sünkroonist väljas olla Vaja parandada (enne järgmist monteerimist näiteks) Alati ei saa parandada -> varundamine Inkrementaalne varundamine 38

Vigade parandamine Failisüsteemi kooskõla kontrolliks on süsteemsed utiliidid UNIX: fsck (fsck.failisüsteem) DOS: CHKDSK Windows: ScanDisk Failide/kataloogistruktuuri kooskõla kontrollimine Näiteks kas failile viitavate linkide arv on sama, mis loenduris? Plokkide kooskõla kontrollimine Iga plokk peab olema kasutusel täpselt ühe faili või kataloogi poolt või siis vabade plokkide nimekirjas Muu metainfo kooskõla kontrollimine 39

Logivad failisüsteemid Ingl.k. (log-structured log-based logging journaling transaction-oriented) file systems idee võetud andmebaasidelt: kuidas hoida kettal igal ajahetkel konsistentne seis Näited: NTFS, Veritas VxFS, Solarise UFS, Linuxi Ext3 Logi võib olla andmetega samal plokkseadmel või kiiruse huvides teisel seadmel Mitut sorti logimist: Ainult metaandmete logimine Metaandmete muutuste järjestamine Täislogimine Softupdates natuke teistmoodi lähenemine 41

Logivate failisüsteemide tööpõhimõte Transaktsioon mingi fikseeritud metainfo muutus või fikseeritud hulk andmeplokkide muutusi Peetakse logi transaktsioonide kohta kõik transaktsioonid kirjutatakse järjest logisse Taustal mängitakse logi maha päris failisüsteemi peal Iga transaktsiooni pärisfailisüsteemi kirjutamise järel kustutatakse see transaktsioon logist Crashi järgsel monteerimisel mängitakse logist maha seal olevad terved transaktsioonid ja keritakse tagasi poolikud Modifikatsioon: faasipuudel põhinevad failisüsteemid, "tants ivad puud" 42

NFS Network File System Originaalselt Suni (ONC+) võrgufailisüsteem, praktikas de facto standard UNIXite vahel failide jagamiseks SunRPC (ONC RPC) üle UDP (LAN puhul) või TCP (WAN puhul) Klient-server mudel Klient omab failisüsteemidraiverit, mis oskab suhelda serveritega Server ekspordib oma failisüsteemist mingeid osi, klient monteerib need oma failisüsteemi mingisse kataloogi Rakendusprogrammidele läbipaistev Monteerimine pole läbipaistev, serveri nimi (nimed) ja asukoht serveris on vaja ette anda (VFS tabel) Eeldab samu kasutajakontosid kõigis kasutatavates masinates 43

NFS: protokollid Monteerimise protokoll annab esialgse failipideme jagatud kataloogi tipu kohta, kui see on kliendile lubatud Failiedastuse protokoll teades failipidet, saab teha failioperatsioone ja pidemeid alamkataloogidele Muud protokollid lukustamine, quota,... Automaatne monteerimine (kodukataloogid; naabermasinad /net alla;... ) 44

NFS: failide jagamise protokoll Saab RPC kaudu süsteemifunktsioonidele analoogseid protseduuriväljakutseid Faile eristatakse failipidemete järgi Olekuvaba (stateless) failiserver Kataloogist saab alamkataloogide ja failide kohta failipidemeid edasisteks operatsioonideks NFS v2 on sünkroonne, v3 laseb eriliidese järgi kasutada ka asünkroonset liidest NFS v4 on ühend NFS v3 ja Windowsi SMB-st, ühendades mõlema omadusi (olekut säilitav) 45

Näide: Ext2 perekond Oli pikka aega Linuxi põhiline failisüsteem Järglaseks oli Ext3 Andmeformaadid on samad Spetsiaalne i-kirje transaktsioonide logiga Kataloogisisesed B-puud Vähem superploki koopiaid Tänapäevaseks asenduseks on Ext4 Ulatustega paigutus Suuremad mahud Hilistatud paigutus (delayed allocation) Täpsemad ajatemplid Kiirem fsck 46

Näide: Ext2 failisüsteem Ketas (plokkseade) on jagatud plokirühmadeks (block group) Failisüsteemi paigutus kettal: Superplokk ext2 metainfo (plokisuurus, plokkide arv,... ) Rühmadeskriptor bititabelite asukoht, vabade plokkide ja i-kirjete arv, rühmas olevate kataloogide arv 47

Näide: Ext2 failisüsteem Igale objektile failisüsteemis vastab i-kirje I-kirje pikkus on 128 baiti Ext3 toetab ka 256-baidiseid i-kirjeid, ext4 256+ I-kirjes on metainfo objekti kohta (v.a. objekti nimi) ja ning viidad andmeplokkidele Objekti metainfo sisaldab Objekti tüüpi (fail, kataloog, nimeviit,... ) ja õigusi Omanikku ja gruppi Faili suurust baitides Viimase lugemise/kirjutamise/i-kirje muutmise aegu I-kirjele viitavate viitade arvu... 48

Näide: Ext2 failisüsteem I-kirjes on kokku 15 viita andmeplokkidele 12 otseviita ja 3 viita kaudset viita (vastavalt ühe-, kaheja kolmetasemeliseks indekseerimiseks) Kuni 60-märgine nimeviit ei kasuta andmeplokke, vaid viitade välju Kõik i-kirjed tekitatakse failisüsteemi loomisel, hiljem nende arvu muuta ei saa On spetsiaalseid programme, mis monteerimata failisüsteeme suurendada ja vähendada oskavad, ka ext2 jaoks (resize2fs) 49

Näide: Ext2 failisüsteem Ploki suurus 1 8 kb Faili suurust piirab viitade maksimaalne arv i-kirjes ja 32- bitine plokkide arv 32-bitine 512-baidiste sektorite arv piirab varasemates Linuxi versioonides kõigi plokkseadmete suuruse 1 TB peale Veel varasem piirang piiras 32-bitistel arhitektuuridel kõigis failisüsteemides faili maksimaalse suuruse 2G-ga 50

Näide: NTFS MFT (Master File Table) kogu ülejäänud ketta indeks Ruumi jagatakse klastri kaupa, klaster 0.5 4 KB (32/64 KB) Logiv failisüsteem Kataloogid B-puudena Indekseeritud paigutus, indekseeritakse ulatusi Suvaline atribuutide hulk failidel Residentsed ja mitteresidentsed atribuudid Failinimed Unicode, tõstutundlikkus sõltub liidesest Reparse point nimeviited, failisüsteemide monteerimine,... Harudega failid Pakkimine, krüptimine, kettakvoodid, ACL 51

NTFS erifailid 52