Failihaldus

Andmed jagunevad laias laastus kaheks: programmideks ja kasutaja poolt sisestatud andmeteks. Arvuti seisukohast on programm samasugune infohulk nagu kasutaja sisestatud andmed. Vahe on ainult selles, et programm sisaldab infot, mida arvuti tegema peab (s.t. mida arvuti protsessor tegema peab), kasutajaandmed on aga infohulk, mida arvuti üldjuhul ühel või teisel viisil töötlema peab. Seejuures on mõlemat tüüpi info salvestatud failidesse.

Fail on kõige väiksem terviklik kindlat tüüpi infokogum. Kuna faile on arvutis tihti tuhandeid, on igaühele neist antud nimi, mis hõlbustab faili leidmist. Failid peavad olema alati mingit kindlat tüüpi: programmifailid, tekstifailid, pildifailid. Muidugi esineb ka erandeid, näiteks arhiivifailid võivad sisaldada omakorda pildi-, video- ja tekstifaile. Sellegipoolest on arhiivifail samuti kindla struktuuriga,sarnaselt arvuti kõvakettale, võimaldades failideks salvestatud infot kätte saada. Seega võib üldisemalt öelda, et fail on teatud kokkuleppeline meetod info kapseldamiseks.

Failid Windowsis

Windows operatsioonisüsteemis kasutatakse faili tüübi kirjeldamiseks faili laiendit. Tegelikult on see pärit juba eel-Windowsi aegadest, olles mõnes mõttes jäänuk vanast mittegraafilisest operatsioonisüsteemist DOS. Faili laiend kirjutatakse faili nime järele ja eraldatakse viimasest punktiga. Samuti DOS-ist on pärit kokkulepe, et faili laiend on kolm märki pikk. Kuna nüüdseks on praktiliselt kõik kolmemärgilised tähekombinatsioonid juba laienditena kasutusel, kasutatakse uute laiendite juures ka rohkem tähemärke.

Faili laiendi probleemid

Oluline on siinjuures märkida, et laiend tegelikult ei määra faili tüüpi. Faili tüüp on sageli kirjas failis endas (kusagil faili alguses), samuti on võimalik failitüüpi määrata teatavate seaduspärasustega, kuidas andmed antud failis paiknevad. Seega on faili laiend rohkem oletus või vihje selle kohta, mis tüüpi andmed antud failis salvestatud on. Windows kasutab faili laiendit näiteks selleks, et näidata tema nime ees sobilikku ikooni ning samuti selleks, et püüda teda ühe või teise programmiga avada, kui failinimel topeltklõps teha.

Kuna kõik eelnev põhineb aga oletusel ja kokkuleppel, võib näiteks mõne pildifaili puhul laiendi asemele kirjutada “doc”, mille tulemusena näidatakse antud faili nime ees Microsoft Wordi dokumendi ikooni, ning topeltklõpsu tulemusena püütakse antud faili sisu MS Wordi programmis ka näidata. Kuna aga tegemist oli pildiga, millele on tahtlikult külge pandud vale faililaiend, siis viimane tegevus muidugi ei õnnestu ja Word annab veateate. Säärane katse ilmestab veelkord faili laiendite suhtelisust ja võimalikku ebatäpsust ning väärkasutust. Ka viirused ja muu pahavara kasutab sageli just faililaiendeid selleks, et arvutikasutajat eksitada ning meelitada teda programmi käivitama. Säärase vastandlikkuse ja ebakõla tõttu on paljudes teistes operatsioonisüsteemides (näiteks GNU/Linux) loobutud faililaiendite kasutamisest. Tõsi küll, paljud teiste süsteemide all töötavad programmid lisavad neid ikkagi failide salvestamisel, kuid see pole operatsioonisüsteemi seisukohast vajalik.

Failid ja kataloogid

Kuna arvutis on faile väga palju, ei ole mõistlik hoida neid kõiki koos (loe: kõrvuti). Kujutage ette, et iga fail on üks paberileht ning kuna arvutis on vahel sadu tuhandeid faile, siis moodustuks antud paberilehtedest tohutu suur kuhi, millest vajaliku leidmine oleks äärmiselt vaevarikas. Seetõttu kasutatakse ka failide haldamisel grupeerimist nagu koondatakse ka sarnased paberilehed kokku näiteks raamatuks. Raamatud omakorda paigutatakse riiulitesse, mis raamatukogus paiknedes kasutamise hõlbustamiseks nummerdatakse. Sarnaselt toimitakse ka arvutis failidega, koondades need kokku kataloogideks.

Kataloogi võib vaadelda kui vahendit failide grupeerimiseks. Selles asuvad sageli ühesuguse sisu või eesmärgiga failid. Näiteks ühe programmiga seotud failid salvestatakse sageli ühte kataloogi. Ühe kataloogi piires peavad failid olema unikaalsete nimedega. See ongi teine põhjus kataloogide kasutamiseks – vastasel juhul on mõeldamatu, et kõik sadakond tuhat faili arvutis peaksid olema unikaalse nimetusega. Kataloogide kasutamine piirab unikaalsuse nõuet märgatavalt ning hõlbustab failide haldamist.
Andmete organiseerimisel saab vajadusel ühte kataloogi paigutada mõne olemasoleva kataloogi sisse. Sellisel juhul nimetatakse loodud kataloogi alamkataloogiks. Sääraselt oraganiseeritud failid ja kataloogid moodustavad kataloogipuu. Antud meetod on pärit juba operatsioonisüsteemide ja andmesalvestuse algusaegadest ning on siiani osutunud väga efektiivseks ja robustseks.

Failihalduse probleemid

Kujutage ette olukorda, kus kataloogid sisaldavad mingit kindlat tüüpi andmeid (faile). Andmehulga kasvades ja failide arvu suurenedes tekib varem või hiljem olukord, kus ühte faili salvestatud andmed peaksid kuuluma rohkem kui ühte kataloogi. Näiteks kataloogide “Sünnipäev” ja “Ema” korral peaksid ema sünnipäevapildid olema salvestatud mõlemasse kataloogi, sest tegemist on nii sünnipäeva kui emaga seotud fotodega. Säärane probleem on tõstatanud sageli küsimuse antud failisalvestamise meetodi efektiivsusest ning sundinud tarkvaratootjaid ja arvutiteadlasi välja töötama alternatiivseid failihaldusmeetodeid. Kuna ühtegi neist ei ole hetkel veel traditsioonilistesse personaalarvutite operatsioonisüsteemidesse jõudnud, jääb antud probleem siinkohal lahenduseta. Sageli on leitud väljapääs selles, et failid salvestatakse küll füüsiliselt mõnda kindlasse kataloogi, lisades aga igale failile nn. metainfo, mis näitab antud failis oleva info kuuluvust ja vastavust ühele või teisele kriteeriumile.

Failihalduse teine probleem on seotud operatsioonisüsteemiga. Nimelt ei luba operatsioonisüsteem teostada toiminguid failidega, mida ta hetkel kasutab või mis on avatud (kasutusel) mõnes rakendusprogrammis. Ei ole võimalik faili kustutada või tema nime muuta juhul, kui ta näiteks on avatud tekstiredaktoris. Failitoimingute tegemiseks tuleb enne veenduda, et antud fail pole kasutusel. Mõnikord võib see nõuda ka kasutaja eelnevat välja-sisselogimist või arvuti taaskäivitamist.

Files

FailihaldusLaadi alla