Датотечни систем

Из Википедије, слободне енциклопедије

Датотечни системи су различити системи организовања датотека и директоријума на уређајима за смјештање података (чврсти дискови, компакт-дискови, итд.).

Већина оперативних система зависи од одређеног датотечног система; на примјер, новија издања Мајкрософт виндоуза се могу инсталирати само на неком од подржаних датотечних система, попут NTFS и FAT32 и ниједан други датотечни систем није понуђен за вријеме инсталације, док на примјер Линукс не може да се инсталира на њима, јер не подржавају одређене могућности (симболички линкови, карактер фајлови исл.) које он као оперативни систем захтијева, него на неком од датотечних система попут Рајзера, EXT2, EXT3 итд.

Организација[уреди]

Основна идеја иза организације датотечног система је била да се подражава рад у канцеларији, гдје се предмети групишу у фасцикле, а фасцикле у веће фасцикле, ове у ормаре и тако даље. То је у датотечном систему произвело концепт директоријума, који у себи може садржати друге директоријуме и датотеке. Датотеке садрже конкретан садржај (текст, програмски код, машинске инструкције, слике, базе података итд.), док директоријуми само чувају податке о томе које датотеке и директоријуми су у њима садржани.

Примјер датотеке из Виндоуза XP, на датотечном систему чији је блок величине 4 килобајта: стварна величина датотеке је 67 бајтова, величина на диску је 4 килобајта

У позадини, датотечни систем се најчешће састоји од великог низа блокова, који су сви исте величине и који се понекад називају и секторима или кластерима (по енглеској ријечи „cluster“, која значи „скуп“, „гомилица“, „грозд“). Величина једног блока је увијек неки степен двојке бајтова (ријетко 512, најчешће 1024, 2048 или 4096 бајтова). На тај начин се постиже поравнање података, што чини учитавање и писање података бржим.

Један блок служи као најмања јединица складиштења података на датотечном систему, тј. свака датотека је смјештена у цио број блокова. На тај начин, датотека увијек има двије величине — стварну величину (колико бајтова садржи) и величину на диску (колико блокова датотечног система је захватила). Ако датотека „imenik.txt“, на примјер, садржи 5440 бајтова, а величина једног блока је 2048 бајтова, онда је стварна величина датотеке 5440 бајтова, а величина на диску је 3x2048=6144 бајтова, јер не може да стане на само два блока, тј. на простор величине 4096 бајтова. Због тога се препоручује да датотечни систем који ће садржати претежно мале датотеке буде организован у мање блокове, а дат. систем који ће садржати веће датотеке (нпр. филмове, музику итд.) у веће блокове, ради мањег губитка капацитета.

За обичног корисника оваква организација датотечног система у блокове је обично транспарентна — корисник треба да познаје само начине за приступ директоријумима и датотекама, који зависи од одговарајућег оперативног система, а то је најчешће графичко корисничко окружење са иконама. Сам оперативни систем треба да води рачуна о превођењу блокова података у облик који је лак за коришћење.

Стабло директоријума[уреди]

Пошто овако организовани директоријуми и датотеке по својој структури представљају стабло, онда се и сам систем овако организованих датотека и директоријума често назива управо „стабло директоријума (и датотека)“.

Илустрација стабла директоријума као обичног стабла, гдје гране представљају директоријуме, листови датотеке, а само главно стабло — корјени директоријум

Почетни директоријум, односно директоријум који није садржан ни у једном другом а који посредно или непосредно садржи све остале, назива се „корјени директоријум“, јер представља коријен комплетног стабла. По истој аналогији датотеке се називају „листовима“ овог стабла, а појединачни директоријуми унутар стабла његовим „гранама“.

Корјени директоријум се на јуниксу и Мек ОС-у обиљежава косом цртом (/) а на Мајкрософт виндоузу и DOS-у обрнутом косом цртом (\).

Путања до директоријума[уреди]

Водећи се концептом стабла директоријума, могуће је на јединствен начин, полазећи од корјеног директоријума, обиљежити сваки директоријум и датотеку који се у њему налазе. Другим ријечима, када желимо назначити одређени директоријум или датотеку, то чинимо писањем тзв. апсолутне путање, а која се састоји од набрајања свих елемената кроз које се „пролази“ да би се од корјеног директоријума дошло до дотичног директоријума или датотеке. Елементи се при набрајању, по конвенцији, раздвајају истим знаком који се користи за обиљежавање корјеног директоријума, а то је најчешће обична коса црта или обрнута коса црта (/ или \). На примјер, ако се директоријум „Filmovi“ налази у корјеном директоријуму уређаја, а у том директоријуму се налази датотека „Gladijator.avi“, на јуниксу би се та датотека могла означити сљедећом апсолутном путањом:

/Filmovi/Gladijator.avi

Дакле, почев од корјеног директоријума (/), преко директоријума „Filmovi“ долазимо до датотеке „Gladijator.avi“.

За разлику од апсолутне путање, релативна путања описује локацију датотеке или директоријума у односу на „тренутну позицију“ у датотечном систему, тј. полазећи од директоријуму у којем се корисник већ налази. На примјер, ако се датотека „player.exe“ има апсолутну путању „/Filmovi/Player/Player.exe“, а корисник се тренутно налази у директоријуму „/Filmovi“, у том тренутку релативна путања датотеке „player.exe“ је „Player/Player.exe“.

Под оперативним системом Виндоуз, за који не постоји концепт апсолутног корјеног директоријума, тј. за који постоји корјени директоријум за сваки складишни уређај и партицију на систему, апсолутна путања се додатно састоји од назнаке уређаја односно партиције на њеном почетку. Тако, на примјер, уколико се споменути директоријум „Filmovi“ налазио на примарној партицији чврстог диска, онда би апсолутна путања датотеке „player.exe“ на Виндоузу била „C:\Filmovi\Player\Player.exe“.

Подјела[уреди]

Датотечни системи се могу подијелити на дисковне, мрежне и датотечне системе посебне намјене.

Дисковни датотечни системи[уреди]

Дисковни датотечни системи најчешће служе за организацију чврстих дискова, али такође за компакт-дискове, дискетне и друге. Примјери дисковних датотечних система су Рајзер, NTFS, FAT32, Ext2, Ext3, ISO 9660 и други. На страни се налази листа дисковних датотечних система (фајл система)[1] и то:

  • ADFS – фајл систем за пуњење, наследник DFS-а. Развијен од компаније Acorn.
  • AdvFS - Advanced File System, развијен од стране Digital Equipment Corporation за њихове Digital UNIX (сада Tru64 UNIX) оперативне системе.
  • AFS – коришћен је на SCO OpenServer.
  • AFS - Ami File Safe је комерцијални фајл систем намењен Amiga рачунарима током деведесетих година прошлог века. (AFS је компатибилан PFS).
  • AthFS - AtheOS фајл систем је 64-битни журнални систем коришћен од стране Syllable-а.
  • BFS - the Boot File System used on System V release 4.0 and UnixWare.
  • BFS – Be File System коришћен на BeOS, повремено погрешно именован као BeFS. Open source имплементација овог система зове се OpenBFS и коришћен је на Haiku оперативним системима.
  • Btrfs - Copy-on-write фајл систем за Линукс (Linux) представљен је од стране компаније Oracle током 2007. године и објављен под GNU General Public License (GPL).
  • CBMFS – Фајл систем коришћен на већини Commodore 64 компатибилних флопи дискова укључујући дискове 1541.
  • CMDFS – Фајл систем екстензија или проширење за CBMFS развијен од стране Creative Micro Designs, за њихове 3.5″ флопи дискове, RAM дискове и хард диск контролере.
  • CP/M — Изворни фајл систем коришћен на CP/M (Control Program for Microcomputers) оперативним системима развијен и коришћен том седамдесетих година прошлог века.
  • DDFS – Data Domain File System је развијен и намењен системима за брисање дупликата. Чини га посебан алгоритам који проналази и уклања дупликате из одређене групе података. Испоручиван је у Data Domain Deduplication Storage Systems који су представљали алтернативне медије тракама за чување архива или бекап копија.
  • DTFS – Desktop File System омогућава компресију коришћену на SCO OpenServer.
  • DOS 3.x - Оригинални оперативни и фајл систем развијен за Apple II системе.
  • EAFS – Проширени Acer Fast Filesystem, коришћен на SCO OpenServer-у.
  • Extent File System (EFS) – EFS је старији блоковни фајл систем који ради под IRIX-ом.
  • ext – Extended file system, намењен Линукс (Linux) системима. Прошрена верија је имплементирана током 1992-те године као први фајл систем намењен искључиво за Линукс кернел.
  • ext2 – Други и проширени фајл систем, развијен пре свега за Линукс (Linux) системе.
  • ext3 – Журнална верзија фајл система ext2. Журнални фајл систем означава да се измене на фајл систему чувају на засебном месту у деловоднику и касније ће бити додате као измена главном фајлу. Ови системи су далеко отпорнији на грешке.
  • ext4 – Новија верзија журналног фајл система ext3 са могућношћу проширења.
  • FAT – File Allocation Table преведено Алокациона табела за фајлове коришћена на DOS и Microsoft Windows оперативним системима. Верзије FAT12, FAT16 и FAT32 означавају 12-битну, 16-битну и 32-битну дубину табеле. Овај је фајл систем подржан од стране готово свих оперативних система за личну или пословну примену. Широка распрострањеност омогућава пренос података са великог броја различитих рачунара старије и новије генерације. Ово значи да ваше фајлове можете лако копирати са рачунара из средине осамдесетих година прошлог века на најновији рачунар данас.
    • VFAT – Ово је верзија Microsoft Windows FAT фајл система која омогућава коришћење дугачких имена фајлова (до 255 карактера). Изворно FAT фајл системи могу да бележе искључиво тзв. 8.3 формат.
    • FATX – Модификована верзија Microsoft Windows FAT фајл система коришћеног на оригиналној Xbox конзоли.
  • FFS (Amiga) – Fast File System (Брзи фајл систем), коришћен на Амига рачунарима. Током година овај је фајл систем добио нове верзије попут: FFS1, FFS Intl, FFS DCache и FFS2.
  • FFS – Fast File System, коришћен је на BSD системима.
  • Fossil – Изворни фајл систем коришћен на Plan 9 оперативном систему развијеног од стране Bell Labs-а. Користи се у мрежном окружењу „План 9″ и омогућава креирање тренутне слике целокупног фајл система.
  • Files-11 – OpenVMS фајл систем коришћен на неким PDP-11 системима. Овај фајл систем продржава тзв Досијее. Ово значи да се фајлови смештају у својеврсне досијее.
  • HFS – Хијерархијски фајл систем био је у употреби све док HFS+ није представљен на Mac OS 8.1. Такође је познат као Mac OS стандардни формат. Хијерархијски систем датотека како га неки јос преводе наследник је тзв. Macintosh File System (MFS). Не треба га мешати са IBM-овим HFS provided with z/OS.
  • HFS+ – Наредна верзија Епловог HFS-а (Хијерархијски фајл систем). Овај фајл систем је подржан на Mac OS 8.1 и напреднијим верзијама, укључујући Mac OS X. Подржава тзв журналистику или деловоднике које смањују могућност губитка података након пада система. Неки га зову још „Mac OS Extended“ или HFS+.
  • HPFS – High Performance File System или систем високих перформанси коришћен на OS/2 оперативном систему.
  • HTFS – High Throughput Filesystem или фајл систем велике пропусне моћи коришћен на SCO OpenServer-у.
  • ISO 9660 – Користи се на CD-ROM and DVD-ROM оптичким медијима (Rock Ridge и Joliet су екстензије овог фајл система.
  • LisaFS - Фајл систем коришћен на Apple Lisa оперативним системима. Овај фајл систем је јединствен што дозвољава да два различита фајла са истим именом и истом локацијом могу бити сачувани на пример „file“ и „file“.
  • LFS – BSD имплементација фајл система базираног на лог структури.
  • MFS – Macintosh File System, мекинтош фајл систем коришћен је на раним Mac OS системима. Наследио га је Хијерархијски фајл систем (HFS).
  • Next3 – Верзија ext3 фајл система који подржава snapshot-ове.
  • MFS – TiVo’s Media File System или Тиво медијски фајл систем је систем датотека коришћен на Tivo хард дсиковиума за снимање у реалном времену.
  • Minix file system – Коришћен на Миникс системима.
  • NILFS – Линукс импементација система базираног на логовима.
  • NTFS – New Technology File System или фајл ситем нове технологије користи се на Windows NT оперативним системима и новијим оперативним системима попут Windows XP-а.
  • NetWare File System - Оригинални NetWare 2.x – 5.x фајл системи, коришћени су и на каснијим верзијама овог система.
  • NSS – Novell Storage Services је нови 64-битни журнални фајл систем користи балансирани систем дрвета. Користи се на NetWare оперативним системима 5.0 и новијим као и на Линуксу(Linux).
  • OneFS - One File System је дистибуиран фајл систем базиран на деловодницима. Користи га Isilon. OneFS користи FlexProtect и Reed-Solomon кодирање и подржава отказ чак 4 отказа хард диск уређаја истовремено.
  • OFS – Old File System за Amig-е. Своју је примену нашао за флопи дискове, али је прилично бескористан на хард диск уређајима.
  • PFS – PFS2, PFS3, etc. У свету рачунарске технологије важи за веома технолошки интересантан фајл систем. Своју је примену нашао на Амиги. Веома прост и елегантно дизајниран.
  • ProDOS - Оперативни систем и систем датотека наследник DOS 3.x, коришћен је на Apple рачунарима пре Мекинтоша, Лизе и Еплових серија укључујући остале новије серије.
  • Qnx4fs - Фајл систем коришћен на QNX-у верзијама 4 и 6.
  • Qnx6fs - Нови „copy-on-write“ фајл систем представљен на QNX 6.4.0 и коришћен надаље од верзије 6.4.1.
  • ReFS (Resilient File System) - Ово је последља генерација Мајкрософтовог фајл система који је базиран на NTFS-у. Овај фајл систем није могуће бутовати или комперсовати са кластером величине 64KB. Такође се користи на Windows Server 2012 оперативном систему.
  • ReiserFS – Линукс фајл систем који користи деловоднике или журнале.
  • Reiser4 – Новија верзија Линукс фајл система који користи деловоднике или журнале.
  • Reliance – Datalight-ов фајл систем намењен високо поузданим системима.
  • Reliance Nitro – Трансакциони фајл систем базиран на дрвету развијен за системе високих перформанси. Развијен од стране Datalight-а.
  • RFS – Изворни фајл систем за RTEMS AT&T UNIX систем V коришћен на SCO UNIX и SCO OpenServer-у.
  • SkyFS - Развијен за SkyOS да замени BFS као главни фајл систем. Базиран на BFS-у, али садржи многа нова побољшања.
  • SFS – Smart File System је фајл систем са деловодницима и подржава Амигу.
  • Soup (Apple) - Фајл систем за Apple Newton Platform-у, организован је као база података.
  • SpadFS - Развијен за Линукс, без деловодника са хаширањем.
  • STL (standard language file system) - STL је фајл систем развијен од стране АјБиЕм-а.
  • TRFS - Екпериментални фајл систем.
  • Tux3 - Експериментална верзија фајл система који би требало да замени ext3.
  • UDF – Фајл систем базиран на пакетима за WORM/RW медије попут CD-RW и DVD-а, сада подржава хард дискове и флеш меморију
  • UFS – Unix File System, коришћен на Solaris-у и старијим BSD системима.
  • UFS2 – Unix File System коришћен на новијим BSD системима.
  • VxFS - Veritas file system је први комерцијални журнални фајл систем за HP-UX, Solaris, Linux и AIX.
  • VLIR (Variable Length Indexed Record) – је фајл систем допуљен од стране Berkeley Softworks-а за CBMFS, дозвољава потпуни слободан приступ за читање и писање, а за рачунаре који раде под GEOS-ом.
  • WAFL – Write Anywhere File Layout. Фајл систем који означава да је упис могућ свуда, добрих перформанси базиран на логовима. WAFL користи RAID-DP као заштиту од престанка рада више дискова истовремено и NVRAM за манипулацију логовима. Кортисти се на NetApp системима.
  • XFS – Користи се на SGI IRIX и Linux системима.
  • ZFSШаблон:Snd Sun Microsystems је развио ZFS open source спацификацију која је касније прилагођена IBM zSeries системима.

Мрежни датотечни системи[уреди]

Мрежни датотечни систем је датотечни систем који приказује слику неког удаљеног датотечног система, дозвољавајући кориснику да се према удаљеним датотекама и директоријумима понаша као да су на локалном рачунару. Примјери оваквих датотечних система су NFS, SMB и други.

Датотечни системи посебне намјене[уреди]

Датотечни системи посебне намјене су у принципу сви они датотечни системи који нису ни дисковни ни мрежни. Најчешће се користе у ситуацијама када се жели поједноставити коришћење одређених сервиса, па се сервиси представљају у облику датотека и директоријума иако то у стварности нису. Примјер је јуниксов датотечни систем „/proc“, на којем се системски процеси и особине оперативног система могу видјети у облику датотечне хијерархије.

Спољашње везе[уреди]

  1. ^ „Fajl sistemi“. adreca.net Приступљено 23. 10. 2014..