ExFAT

From ICO wiki
Revision as of 11:05, 14 November 2013 by Useerme (talk | contribs) (→‎Referaadist)
Jump to navigationJump to search

Referaadist

Referaat on kirjutatud Üllar Seerme poolt aine operatsioonisüsteemide administreerimine ja sidumine raames, tehes ümber Artur Kulikovi poolt loodud referaat. Teema sai valitud 9. september 2013 ning esitatud <kuupäev> 2013.

Sissejuhatus

Viimase aastakümne jooksul on märgata tõusvat trendi selles, kuidas inimesed ennast ümbritsevat maailma jäädvustavad. Varasemalt oli foto- ja filmikaamerate pärusmaaks pigem professionaalid, kuid tehnoloogia arenedes muutuvad säärased vidinad üha enam ja enam teistelegi kättesaadavaks. Selleks, et nähtut talletada on vaja midagi, millele seda talletada ning kaamerate puhul populaarseimaks valikuks olnud SD-kaart ehk turvaline digikaart. Valdav enamik SD-kaarte kasutavad FAT16 või FAT32 failisüsteemi, mis ei ole ehk fotokaamerate puhul niivõrd oluline, kuid liikuva pildi jäädvustamisel võib vale failisüsteem olla problemaatiline, sest failide suurused lähevad oluliselt suuremaks. Eelnimetatud lühendid kuuluvad failisüsteemi nimetuse alla ning failisüsteem ei ole midagi enamat, kui korraldusviis kõvakettal asetsevatele failidele ja kataloogidele (teisisõnu kaustadele). Praktiliselt igal operatsioonisüsteemil on oma failisüsteem. Failisüsteem aitab ära määrata korralduse, kui pikk tohib olla failinimi ja faililaiend, millised tähemärgid nendes lubatud on ja milline tee leitakse, et liikuda vajamineva failini. Järgnev referaat keskendub 2006. aastal esitletud failisüsteemile exFAT.

Eeldused

Kirjapandu mõistmiseks on eeldusteks lugeja huvi infotehnoloogia valdkonna vastu ning tahe uurida ise juurde, kui midagi arusaamatuks jääb. On küll proovitud võimalikult üheselt mõistetavalt selgitada, kuid algmaterjalide vähesuse tõttu ja konkreetsust silmas pidades on hoitud kõrvalekalded minimaalsetena.

Omadused

exFAT on Microsofti poolt loodud ja on mõeldud kasutamiseks eelkõige flash-tüüpi andmekandjatel nagu mälupulgad ja mälukaardid. Selleks, et tagada mitmekülgsemat ja laialdast kasutust, on Microsoft võimaldanud kolmandatel osapooltel osta litsents, mis lubab neil oma toodetes exFAT failisüsteemi kasutada. Litsentsi maksumus erineb olenevalt sellest, kus seda kasutada tahetakse, kuid fotokaamerad, videokaamerad ja digitaalpildiraamid langevad gruppi, kus ühekordne maksumus võib alata 300-st dollarist. Teistsuguste seadmete nagu telefonide, arvutite ja võrguvahendite puhul rakendub ka teistsugune hinnamudel, mis on mõeldud eelkõige klientidele, kes tegelevad masstoodanguga. Lisaks suhteliselt odavale litsentsile on Microsoft lisanud exFAT-i parameetrid, mida edasimüüjad saavad ise muuta. Need parameetrid võimaldavad neil näiteks muuta flash-tüüpi andmekandjate võimekust. Pealtnäha võib see tunduda küll halb, kuid tuleb meeles pidada, et Windowsi operatsioonisüsteemis nende parameetrite väärtusi ei arvestata. Juhul, kui neid muudetakse realiseeruvad need alles kasuks kindlatel seadmetel, nagu kaamerad, kus on ehk tõesti vaja muuta vaikimisi väärtusi, et optimeerida funktsionaalsust. All on näha need erinevad parameetrid, mida saab muuta:

GUID OemParameterType;
UINT32 EraseBlockSize; // Kustutusploki suurus baitides
UINT32 PageSize;
UINT32 NumberOfSpareBlocks;
UINT32 tRandomAccess; // Suvapöördumise aeg nanosekundites
UINT32 tProgram; // Program time in nanoseconds
UINT32 tReadCycle; // Jadalugemistsükli aeg nanosekundites
UINT32 tWriteCycle; // Kirjutustsükli aeg nanosekundites
UCHAR Reserved[4];

exFAT-i peamiseks omaduseks on see, et ta lubab luua ja hallata faile, mis on suuremad kui 4GB ning võimaldab kasutamist teistel operatsioonisüsteemidel nagu OS X. Microsofti enda operatsioonisüsteemidel on toetus exFAT-ile alates Windows XP-st, kuid viimasel ainult juhul, kui on paigaldatud uuendus KB955704. Kuigi on äärmiselt ebatõenäoline, et tavakasutaja küündib iialgi nii kõrgetesse mahtudesse, siis sellegipoolest võimaldab exFAT kasutada kuni 512 tebibaidi suurust ketast. Üks tebibait on umbes 1.099 terabaiti, ehk siis oleks võimalik kasutada umbes 562 terabaidi suurust ketast. Lisaks eelnevale võimaldab ta kasutada kuni 32 mebibaiti suurust (~33 megabaiti) klasterit. Selleks, et mõista selle kasulikkust, tuleb esmalt seletada veidi, kuidas kõvaketastel olevate failidega ümber käiakse.

Kõvaketas üldjoontes

Tüüpiline kõvaketta ülesehitus.
Ühe ketta lihtsustatud ülesehitus

Paremal joonisel on näha tüüpilist ketta ülesehitust, kus ketas on ära jaotatud radadeks, klasteriteks ja lõpuks ka sektoriteks. Täht A tähistab rada, mis viitab kettal järjestikusele pikijäljele, kuhu on võimalik kirjutada faile ning kust on võimalik ka lugeda faile. Praeguse joonise puhul koosneb üks rada 16-st sektorist (millest tuleb ka kohe juttu). Ideaalis oleks kena, kui kõik kirjutatud failid hõivaksid ühe raja otsast lõpuni, kuna nii oleks teda kõige parem lugeda ja kirjutada, kuid reaalsuses on lood teisiti. Järgmisena on täht B, mis tähistab sektorit ning sektor ei ole midagi muud kui raja väikseim alajaotus. Sektori suurus on üldjuhul 4096 baiti. Nüüd, kui meil on vaja kirjutada kõvakettale fail, mis on 8000 baiti suur, siis võetakse kasutusele kaks sektorit. Selle asemel, et terve rodu sektoreid hõivata ning nende üle arvet pidada, võeti kasutusele klasterid (täht C), mis on kogum järjestikuseid sektoreid ning hetkel võib lugeda pildil olevat rohelist ala kui kaks klasterit, mis mõlemad koosnevad kahest sektorist või üks klaster, mis koosneb neljast sektorist. See oleneb sellest, mis on klasteri suuruseks võetud. Juhul, kui võetakse kasutusele suured klasterid, siis vähendatakse aega, mis kulub kirjutamisele ja lugemisele ning hõlpsustab operatsioonisüsteemi poolt failide üle arveldamist. Suurte klasteri suuruste puhul on risk raisata kõvakettaruumi, kuna failid, mis on väiksemad kui klasteri enda suurus, ei hõiva kuidagi ülejäänud ruumi klasteris. exFAT-i potentsiaalselt ~33 megabaidine klasteri suurus võimaldab talletada äärmiselt suuri faile ja seda võimalikult efektiivselt. Väiksem klasteri suurus suurte failidega tekitaks killustatust, kuna peab hakkama järjestikuseid klastreid juurde otsima lisaks nendele, mis faili esimese osa jaoks kõrvuti asetsesid.

Puudused

Peamine põhjus, mis pärsib exFAT-i laialdast kasutamist ja aktsepteeritust, on Microsofti piirangud failisüsteemi muutmisel ja levitamisel. Mitmed patendid takistavad exFAT-i funktsionaalsuse imiteerimist, mis suurendaks ühilduvust seadmetega. Hetkel toetavad paljud olmeelektroonika seadmed küll FAT12, FAT16 ja FAT32 failisüsteeme, kuid exFAT-i mitte, mistõttu ei saa teda ka universaalselt kasutada üle mitmete seadmete. Loomulikult on võimalik tõsta mälukaardilt näiteks pildid maha, formaatida too ümber ühilduvaks failisüsteemiks, kuid tuleb tõdeda, et paljudele on see tegevus liigne ja oskused seda teha puudulikud. Inimesed, kes endiselt kasutavad Windows Vistat peavad tõdema veel üht negatiivset aspekti exFAT-i kasutamisel ning seda sellepärast, et nad ei ole võimelised kasutama oma exFAT vormingus andmekandjaid, nagu mälupulgad, mälukaardid, pooljuhtkettaid ja muid sääraseid, mis on kiiremad, kui kõvaketas vahemällu kirjutamise poolest, ReadyBoost tehnoloogia jaoks, mis lubab eelmainituid kasutada vahemälu jaoks. Alates Windows 7-st on see funktsionaalsus olemas ning lubatakse suuremaid vahemälu suurusi kui 4 gibibaiti (umbes 4,29 gigabaiti).

Allikad

1. Description of the exFAT file system driver update package
2. Microsoft Licenses Windows 7's exFAT Flash File Format
3. Intellectual Property Licensing for exFAT File System
4. Microsoft's Latest Flash Memory Technology Now Available for License
5. NTFS vs. FAT vs. exFAT by Raw Data
6. OEM Parameter Definition with exFAT
7. File Storage Hardware and Disk Organization
8. Understand ReadyBoost and whether it will Speed Up your System