Raalprojekteerimine
Euroopa struktuurfondide logo
Automatiseerimise viide Mehhatroonikaseadmete viide Pneumoautomaatika viide Siemens LOGO! viide Siemens S7-1200 viide

OPERATSIOONISÜSTEEMID

Failihaldus

Fail on sarnaste andmete kogum, mis on salvestatud tavaliselt arvuti kõvakettale eraldiseisva üksusena, ning mida töödeldakse arvutis tervikuna. Näiteks, tekstifail koosneb tekstist, aga programmifail (nt exe) koosneb arvuti jaoks täidetavatest käskudest (ja ka programmile vajalikest andmetest). et.wikipedia.org

Operatsioonisüsteem vastutab failide loomise, kustutamise ja muutmise eest. Tavaliselt on selleks operatsioonisüsteemis realiseeritud ühe või rohkema failisüsteemi tugi. Failisüsteem määrab ära hulga andmete salvestamiseks, kustutamiseks ja muutmiseks vajalikke parameetreid: millisteks loogilisteks osadeks on kõvaketas jaotatud, kuidas andmeid kõvakettale salvestatakse, mis on fail, mil viisil on võimalik asukohad struktureerida jne. Erinevad operatsioonisüsteemid kasutavad erinevaid failisüsteeme ning ühe operatsioonisüsteemi jaoks vormindatud kõvaketas ei pruugi olla loetav (ning sinna pole siis võimalik ka kirjutada) teise operatsioonisüsteemi poolt.

Failisüsteem on viis arvutis andmefailide haldamiseks ja talletamiseks. Failisüsteemid asuvad tihti otse mõne mäluseadme peal, näiteks nagu kõvaketas või CD-ROM. Samas on olemas ka failisüsteeme, mille andmeid ei hoita kohalikus arvutis, näiteks võrgufailisüsteemid NFS ning SMB. Lisaks sellele eksisteerivad ka täiesti virtuaalsed failisüsteemid, mille sisu genereeritakse konkreetsel kujul ainult hetkel, mil sealt andmeid loetakse — näiteks Linuxi /proc failisüsteem et.wikipedia.org

Failidega seotud operatsioonid on tavaliselt operatsioonisüsteemi funktsioonid ning seepärast ei pea rakenduse programmeerija vastavaid vahendeid ning funktsioone looma vaid saab neid oma rakenduse loomisel kasutada.

Selleks, et salvestada faile kõvakettale ja muudele andmekandjatele standardiseeritud kujul, on kasutusele võetud failisüsteem. Operatsioonisüsteem käsitleb andmekandjaid, kui gruppi andmeblokke, failisüsteem kirjeldab siinjuures kui suured on blokid, kuidas andmeblokke kasutatakse, kirjeldatakse jne.

Failisüsteem on viis arvutis andmefailide haldamiseks ja talletamiseks. Failisüsteemid asuvad tihti otse mõne mäluseadme peal, näiteks nagu kõvaketas või CD-ROM, kuid on ka failisüsteeme, mille andmeid ei hoita kohalikus arvutis, näiteks võrgufailisüsteemid NFS ning SMB. Lisaks sellele eksisteerivad ka täiesti virtuaalsed failisüsteemid, mille sisu genereeritakse konkreetsel kujul ainult hetkel, mil sealt andmeid loetakse — näiteks Linuxi /proc failisüsteem. Tänapäeva operatsioonisüsteemides on virtuaalfailisüsteemi kiht, mis seob erinevaid konkreetseid failisüsteemi rakendusi ühtseks tervikuks; sõnaga "failisüsteem" võib kirjeldada nii konkreetset failisüsteemi rakendust kui ka nende kooslust. Tänapäeval on laialtkasutatavad failisüsteemid hierarhilise (nö. puukujulise) ülesehitusega, koosnedes üksteise sees asetsevatest kataloogidest, ning kataloogides asuvatest failidest. Ajalooliselt on kasutusel olnud ka kataloogideta, ning ühetasemelised kataloogidega failisüsteemid.
[Wikipedia.org]

Lihtsalt öeldes kirjeldab failisüsteem kuidas operatsioonisüsteem haldab faile jagades neid andmeblokkidesse. Erinevad operatsioonid kasutavad erinevaid failisüsteeme, mis võivad üksteisest märgatavalt erineda nii omaduste kui ka funktsioonide poolest.

Üks füüsiline andmekandja jagatakse üheks või enamaks loogiliseks osaks ehk partitsiooniks, iga partitsioon võib olla vormindatud kasutama erinevat failisüsteemi.

Failisüsteemi peamised ülesanded on:

  • Andmete hoidmine
  • Failide struktureerimine
  • Andmetele õigustekohase ligipääsu tagamine
  • Andmete kaitse
  • Erinevate andmekandjatest ühetaolise keskkonna loomine

Fail on loogiliselt grupeeritud kogus andmeid (infot).

Igal failil on hulk omadusi, mis teda iseloomustavad, kõige tüüpilisemad omadused on:

  • Nimi
  • Tüüp
  • Asukoh
  • Suurus
  • Ligipääsu- ja kasutusõiguse
  • Loomise, muutmise ja viimase kasutamise kuupäev
  • Looja või omanik

Faili tüübi määramiseks on mitmeid erinevaid võimalusi: Microsofti operatsioonisüsteemid lisavad failile faililaiendi, Linux kirjeldab faili tüübi ära numbri abil ning näiteks MacOS lisab faili programmi nime, millega fail loodi jne. Faili tüüp omakorda vihjab enamus juhtudel sellele, milliseid andmeid failis hoitakse ja mis rakendus seda failis olevat infot tõlgendada oskab Failide asukohta kirjeldatakse tavaliselt kahest vaatenurgast: kus fail füüsiliselt andmekandjal asub ning milline on faili asukoht failisüsteemi mõistes.

Faili asukohta failisüsteemis kasutaja jaoks kirjeldavad enamasti kataloogid (kaustad), kuid viis, kuidas failisüsteem katalooge kirjeldab võib olla väga erinev: näiteks Microsofti failisüsteemides on olemas eraldi kataloogi objekt, UNIX'i laadsed operatsioonisüsteemid mõistavad katalooge kui teatavat kindlat liiki faile.

Ajalooliselt on kasutusel olnud ka failisüsteeme kus katalooge ei kasutata, selliseid failisüsteeme nimetatakse ühetasandilisteks failisüsteemideks (flat filesystem). Nende failisüteemide peamine puudus on see, et igal failil sellises failisüsteemis peab olema kordumatu nimi. Enamik tänapäeval kasutatavad failisüsteemid on hierarhilised failisüsteemid (Hierarchical File System), mis tähendab seda, et iga fail sellises failisüsteemis kuulub mõnda kataloogi. Kõik kataloogid kuuluvad omakorda ise mõnda kataloogi väljaarvatud üks kataloog, mida nimetatakse juurkataloogiks (root directory).

[joonis]

Ligipääsu- ja kasutusõigused ning omanik või looja ei pruugi olla kõigis failisüsteemides faili omaduste hulgas (näiteks FAT failisüsteem ei kirjelda õiguseid failide suhtes ning faili loojat või omaniku ei kirjeldata ka). Sellisel juhul on tegemist ebaturvalise failisüsteemiga ning selliseid failisüsteeme ei soovitata tänapäeval kasutada.

Logivad failisüsteemid (tuntud ka kui päevikut pidavad failisüsteemid, ik journal) on failisüsteemid, kus transaktsioonid (mingi hulga andmete muutmised) logitakse ehk siis märgitakse üles, mida ja kus muudeti või millega asendati ning alles seejärel tehakse see transaktsioon failisüsteemis reaalselt. Kui nüüd transaktsiooni teostamise ajal tekib süsteemi töös tõrge, siis süsteemialglaadimisel on võimalik poolikud transaktsioonid tagasi võtta ning teostamata muudatused teostada.

Päevik on faili, andmebaasi vms muudatuste kohta teavet sisaldav andmestruktuur. Päevik paikneb harilikult spetsiaalselt selleks reserveeritud piirkonnas. Failisüsteemid on enamasti väga suured andmestruktuurid ja nende värskendamine võtab palju aega. Kui keset värskendamist toimub süsteemi kokkujooksmine, siis tuleb failisüsteemi taastamiseks läbi käia kogu failisüsteem. Päeviku kasutamise mõte on selles, et muudatusi sisaldav fail salvestatakse kõigepealt päevikusse ja alles hiljem failisüsteemi. Kui seejuures peaks tekkima probleeme, on alati käepärast päevikusse salvestatud failikoopia ning piisab ainult selle faili uuesti salvestamisest. Taolist füüsilist päevikut kasutab näiteks Linux'i failisüsteem ext3. Teine päeviku variant on loogiline päevik, kuhu salvestatakse mitte andmeid endid, vaid neid kirjeldavaid metaandmeid. Loogilist päevikut kasutab näit. failisüsteem XFS.
[vallaste.ee]

Mõned tuntumad failisüsteemid:

  • FAT (File Allocation Table) on Microsofti operatsioonisüsteemides kasutatav failisüsteem, mida kaasaegsetes Micosofti operatsioonisüsteemides ei soovitata kasutada. Kuid kaheldamatult on tegemist ühe levinuma failisüsteemiga mobiilsetes mäluseadmetes (USB-välkmälud, MP3 mängarid, flopid jne). Tegelikult on FAT failisüsteemil olemas tervelt kolm levinud versiooni: FAT12, FAT16 ja FAT32.
  • FAT12 oli algselt mõeldud kasutamiseks ainult floppidel, FAT12 kasutab andmeblokkide kirjeldamiseks 12 bitti, ehk kokku suudab adresseerida kuni 4096 erinevat andmeblokki, iga andmeblokk mahutab 512 ehk siis loogilise ketta maksimaalne suurus on FAT12 failisüsteemis 2048 kB, mis teeb selle failisüsteemi praktiliselt kasutamatuks kõvaketastel.
  • FAT16 failisüsteemi maksimaalne loogilise ketta suurus on kuni 2GB, mis oli kunagi täiesti piisav, kuid mida tänapäeval on kõvaketaste haldamiseks selgelt liiga vähe. Kuid FAT16 failisüsteemi suudab lugeda ja sinna kirjutada pea iga kaasaegne operatsioonisüsteem.
  • FAT32 failisüsteemi maksimaalne loogilise ketta suurus on kuni 8TB, kuid samas on piiratud maksimaalne faili suurus failisüsteemis 4GB suurusega, mis kaasaegsete multimeediumrakenduste kasutamisel saab kiirelt vägagi häirivaks. FAT failisüsteemi suurim puudus on failiõiguste puudumine ning suurim tugevus see, et enamik operatsioonisüsteeme on võimelised seda failisüsteemi kasutama!
  • NTFS (New Technology File System) on tänapäeva Microsofti operatsioonisüsteemides enim kasutatav failisüsteem. NTFS failisüsteemis on failidel olemas kasutajaõigused, võimalus failisüsteemi tasemel failide pakkimiseks või krüpteerimiseks, maksimaalne loogilise ketta ja faili suurus on 16EB (16 700 000 TB). NTFS on logiv failisüsteem.
    NTFS sisaldab mitmeid kaasaegsele failisüsteemile iseloomulike omadusi, näiteks võimaldab NTFS ühendada (mount) uue loogilise ketta olemasoleva loogilise ketta kataloogi külge, võimaldab failisüsteemi indekseerida jne.
    NTFS suurim puudus on, et ainult Microsofti kaasaegsed (NT-seeria) operatsioonisüsteemid suudavad NTFS failisüsteemi vormindatud loogilisi kettaid probleemivabalt kasutada.
  • Ext2 on Linux operatsioonisüsteemides kasutatav failisüsteem. Ext2 failisüsteemis on failidel olemas failiõigused ning maksimaalne lubatud failisuurus on 2 TB ning loogilise ketta maht 32 TB. Failisüsteemi puuduseks on nõrk tõrketaluvus: kuna tegemist ei ole logiva failisüsteemiga, siis süsteemi tõrke korral võib juhtuda et failisüsteem (või selle osa) rikneb.
    Ext2 ning ka paljude teiste Linuxi operatsioonisüsteemis kasutatavate failisüsteemide omapära seisneb selles, et kataloogid on teostatud nagu failid, mis viitavad teistele failidele.
  • Ext3 on ext2 failisüsteemi edasiarendus, lisatud on logiva failisüsteemi tugi. Enamik eeliseid ja puuduseid on samad, mis ext2 failisüsteemil, kuid parandatud on just tõrketaluvust. Enamik tänapäeva Linuxi distributsioone kasutab just etx3 failisüsteemi.
  • Ext4 on ext3 failisüsteemi edasiarendus. Erineb viimasest peamiselt selle poolest, et toetab suuremaid mälumahte (kuni 1024 petabaiti). ning failide salvestamisel on võimalik kasutada ekstente.
  • RaiserFS on samuti Linux operatsioonisüsteemides kasutatav logiv failisüsteem.
    RaiserFS failisüsteemis on failidel olemas failiõigused ning maksimaalne lubatud failisuurus on 8 TB ning loogilise ketta maht 32 TB. Üldiselt loetakse RaiserFS failisüsteemi kiiremaks kui ext2 ja ext3 failisüsteeme, kuid samas on RaiserFS failisüsteemil olnud üsna suuri probleeme stabiilsusega. HFS+ (tuntud ka kui Mac OS Extended)on tänapäeva MacOS operatsioonisüsteemides kasutatav failisüsteem.
  • HFS+ failisüsteemis on failidel olemas failiõigused ning maksimaalne lubatud failisuurus on 8 EB ning loogilise ketta maht 32 EB. Failisüsteemi omapära seisneb selles, et failidega seotud meta-andmeid, failitabelit ja kataloogifaili sisu hoitakse B* puus. Sama failisüsteemi kasutab ka Apple Corp toodetud meediamängarid iPod (samas võivad kasutada ka FAT32 failisüsteemi).

Meta-andmed ehk "andmed andmete kohta" on andmete digitaalne kirjeldus, mis vastab täpselt defineeritud mallile või ka selliste kirjelduste kogumik. Sarnaneb raamatukogu kataloogisüsteemile, kust sageli leiab lisaks andmetele raamatute nimetuste ja nende autorite kohta ka lühikese sisututvustuse.
[vallaste.ee]

Creative Commons Licence
"Raalprojekteerimine" by Eduard Brindfeldt and Urmo Lepiksoo is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Estonia License .