upravljanje sistemom datoteka - vps.ns.ac.rs · zfile system se može koristiti za organizaciju i...

31
Upravljanje sistemom datoteka Sistem datoteka Datoteka (file) predstavlja jedinicu smeštanja informacija na diskovima i ostalim spoljašnjim medijumima. Pri tome datoteka skriva detalje, od korisnika, o tome kako i gde su informacije smeštene, i kako spoljašnji medijum radi. Sve informacije memorisane u računaru moraju biti u datoteci. Operativni sistem je zadužen da obezbedi upravljanje datotekama. Deo operativnog sistema koji je zadužen za upravljanje datotekama naziva se sistem datoteka (file system). Osnovne karakteristike datoteka: Omogućavaju skladištenje velike količine informacija Datoteke su nezavisne od kreiranja i uništavanja procesa Veći broj procesa konkurentno može pristupati informacijama

Upload: others

Post on 18-Oct-2019

10 views

Category:

Documents


3 download

TRANSCRIPT

1

Upravljanje sistemom datoteka

Sistem datotekaDatoteka (file) predstavlja jedinicu smeštanja informacija na diskovima i ostalim spoljašnjim medijumima. Pri tome datoteka skriva detalje, od korisnika, o tome kako i gde su informacije smeštene, i kako spoljašnji medijum radi.

Sve informacije memorisane u računaru moraju biti u datoteci.

Operativni sistem je zadužen da obezbedi upravljanje datotekama. Deo operativnog sistema koji je zadužen za upravljanje datotekama naziva se sistem datoteka (file system).

Osnovne karakteristike datoteka:Omogućavaju skladištenje velike količine informacija

Datoteke su nezavisne od kreiranja i uništavanja procesa

Veći broj procesa konkurentno može pristupati informacijama

2

Sistem datoteka (file system)Najpoznatiji file system-i koriste uređaje za skladištenje podataka kojinude pristup matrici blokova fiksne veličine sektorima, najčešće 512bajtova svaki.File system je zadužen za organizaciju ovih sektora u datoteke i direktorijume i za vođenje evidencije o tome koji sektor pripada kojojdatoteci i koji sektori nisu u upotrebi.File system se može koristiti za organizaciju i pristup bilo kojimpodacima, bilo da su sačuvani ili dinamički stvoreni (sa weba).File system obično sadrži direktorijume koji povezuju imena datotekasa datotekama, tako da povežu ime datoteke sa nekim indexom u File Allocation Table neke vrste, poput FAT-a u MS-DOS-u ili INODE-a u Unix sistemima.

Sistem datotekaSa stanovišta operativnog sistema datoteka predstavlja niz bajtova. Korisnički programi mogu u datoteku smestiti bilo koji saržaj i tretirati ga na bilo koji način.Postoji nekoliko tipova datoteka:

Regularne datoteke – sadrže informacije u binarnom i ASCII obliku (Windows i Unix)Direktorijumi – sistemske datoteke koje održavaju strukturu sistema datoteka (Windows i Unix)Character special datoteke – modeliraju serijske U/I uređaje (Unix)Blocked special datoteke – modeliraju diskove (Unix)

Operacije sa datotekama: kreiranje, brisanje, otvaranje, zatvaranje, čitanje, pisanje, dodavanje, izmena atributa, promena imena i sl.

3

Sistem datotekaZa održavanje strukture sistema datoteka koriste se direktorijumi (directory, folder) koji su najčešće implementirani kao datotekeTipovi direktorijumskih struktura:

Jednonivovski sistem direktorijuma – U sistemu postoji samo jedan (root) direktorijum i sve datoteke se nalaze u okviru njega. Kodvišekorisničkih sistema može doći do konflikta prilikom imenovanja datoteka.Dvonivovski sistem direktorijuma - Postoji jedan root direktorijum i po jedan privatni direktorijum za svakog korisnika. Problemi se javljaju kod korisnika sa velikim brojem datoteka.Sistem sa generalnom hijerarhijom - Postoji jedan root direktorijum od koga se može granati veliki broj direktorijuma u dubinu strukture obrazujući stablo direktorijuma. Obezbeđuje grupisanje datoteka na najprirodniji način.

Sistem datotekaKada je sistem organizovan korišćenjem stabla direktorijuma (generalna hijerarhija) potrebno je obezbediti pravilno imenovanje datoteka:

Apsolutna putanjaRelativna putanja – bitan pojam je i tekući direktorijum

Operacije sa direktorijumima: kreiranje, brisanje, otvaranje, zatvaranje, promena imena, link i unlink (jedna datoteka se može pojaviti u više direktorijuma) i sl.

4

Implementacija sistema datotekaSistemi daoteteka su smešteni na disku ili nekom spoljašnjem medijumu. Diskovi mogu biti podeljeni na jednu ili više particija pri čemu svaka particija može imati nezavisan sistem datotekaSvaki disk sadrži:

MBR (master boot record) – nalazi se na sektoru 0 i koristi se za podizanje sistemaParticiona tabela (partition table) – nalazi se na kraju MBR-a i sadrži informacije o particijama (početnu i krajnju adresu svake particije)Particije

Particija može da sadrži:Boot block – koristi se za učitavanje operativnog sistema (loader)Super block – sadrži informacije o sistemu datotekaStrukture za upravljanje slobodnim prostorom particijeRoot direktorijumOstali direktorijumi i datoteke

Implementacija sistema datoteka

Entire disk

MBR

Partition tableDisk partition

Files and directoriesRoot dirFree space mgmSuper blockBoot block

5

Implementacija sistema datotekaPrilikom implementacije sistema datoteka jedna od najvažnijih stvari o kojoj se vodi računa jeste način na koji se pamti informacija o tome koji blok diska pripada kojoj datoteci.Raspored prostora diska naziva se ALOKACIJA. O pristupu podacima nadisku brine sistem datoteka (File System), kojem su performanse i osobinevezane uz operativni sistem koji ga koristi. Tako Windows OS korisiti FAT i NTFS file sistem.Postoje različiti pristupi:

Kontinualna alokacijaAlokacija uz pomoć lančane listeAlokacija uz pomoć lančane liste korišćenjem tablice u memorijii-nodes

Kontinualna alokacijaSvaka datoteka se smešta na disk u vidu kontinualne grupe blokovaPrednosti:

Jednostavna implementacijaPerformanse prilikom pristupanja datoteci su izuzetno dobre

Nedostaci:Tokom vremena se javlja fragmentacija diska (zahteva kompakciju)

Primer ovakvog sistema datoteka: kod CD – ROM (nema izmena datoteka)

File B (3 blocks)

File D (5 blocks)

File F (6 blocks)

File G (3 blocks)

File G (12 blocks)

File G (6 blocks)

File A (4 blocks)

6

Alokacija uz pomoć lančane listeDatoteka se čuva kao lančana lista blokova koji joj pripadaju. Prva rečsvakog bloka se koristi za smeštanje pokazivača na sledeći blok u listi.Prednosti:

Nema fragmentacijeDirektorijumska struktura se lako implementira jer se pamti samo adresa prvog bloka

Nedostatak:Loše performanse – blokovima se pristupa sekvencijalno a svaki blok se mora učitati sa diska

File block

0

File block

1

File block

2

File block

3

File block

4

0

4 7 2 10 12

Alokacija uz pomoć indeksnih čvorova (i-nodes)

Za svaku datoteku se održava struktura koja se naziva i-node i koja čuva informacije o atributima datoteke i blokovima koji pripadaju datoteci

Prednosti:Potrebno je znatno manje prostora –ograničen je broj datoteka koje sistem može istovremeno otvoriti a u memoriji se čuvaju samo i-node-ovi otvorenih datoteka

Nedostatak:i-node nije dovoljno veliki da bi zapamtio sve blokove koji pripadaju datoteci – poslednja adresa nije adresa bloka već adresa novog i-node-a Address of block of pointers

Address of disk block 7

Address of disk block 6

Address of disk block 5

Address of disk block 4

Address of disk block 3

Address of disk block 2

Address of disk block 1

Address of disk block 0

File Attributes

Disk block containing

additional disk addresses

7

Alokacija uz pomoć lančane liste korišćenjem tablice u memoriji

Pokazivač kojima se blokovi ulančavaju se ne nalaze u samim blokovima već su smešteni u posebnu tablicu u memoriji (File Allocation Table)Prednosti:

Čitav blok na disku se koristi samo za podatke Bolje performanse – pristup i dalje ide sekvencijalno ali su sada svi pokazivači u memoriji pa nema potrebe da se sistem obraća diskuLaka implementacija direktorijumske strukture

Nedostaci:Čitava tabela se mora nalaziti u memoriji - za disk od 20 GB i blok veličine 1KB tabela ima 20 miliona stavki (ako svaka ima 4B to je 80MB)

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

-1

-1

14

12

2

3

7

11

10

File A starts here

File B starts here

Unused block

FATFAT file sistem napravljen je 1977. godine sa ciljem skladištenja podataka na diskete. Od tada je konstantno bio modifikovan da bipostao brži i fleksibilniji sistem za upravljanje podacima ne samo za diskete nego i za diskove. FAT podržava diskove veličine do 2 GB. FAT32 je unapređenje FAT sistema i prvi put je implementiran u Windows 95 OS i podržava diskove do 2 TB.Kod FAT file sistema disk je podeljen na veće delove od sektora koji se nazivaju clusteri ili allocation units.Svaki cluster sastoji se od više sektora. Veličina clustera je od 2.048 do 32.768 bajtova, ili 4 do 64 sektora.

8

FAT

FATFAT sadrži popis klastera, njihov broj, za svaku datoteku posebno. Naravno različite datoteke ne mogu imati klaster diska s istimbrojem.Kako kod PC računara svaki klaster ne sadrži podatke o sledećem, nego su redom nabrojeni u FAT tablici, gubitak ili promenapodataka u tablici praktično znači gubitak svih podataka na disku.Podaci se ne upisuju sektor po sektor nego po klasterima. Kad suglave diska u jednom klasteru podaci datoteke upisuju se u svimsektorima na svim površinama tog klastera.

9

FATFile allocation table je tablica u kojoj se nalaze informacije o clusterima. Svaki cluster ima vrstu u file allocation tablici koja opisuje kako je iskorišćen. Postoje različiti kodovi koji opisuju različita stanja clustera(unused, bad) - operativni sistem zna koji delovi diska su trenutno zauzeti, a koji su slobodni za upotrebu. Operativni sistem čita beleške iz tablice da bi zajedno povezao clustere i formirao datoteke.Svaka datoteka na disku zauzima najmanje jedan cluster.

FATŠto je veća veličina clustera ili što više ima malih datoteka na disku, više će biti neiskorišćenog prostora.

Što je veličina clustera manja, disk sadrži više clustera, što značiveću file allocation tablicu.

Zbog toga treba naći optimalnu veličinu clustera, zavisno odveličine diska koji se koristi.

Kako FAT koristi veličinu clustera od 32 KB za diskove veličinepreko 1.2 GB, iskoristivost diska dosta je smanjena.

10

Sloj za upravljanje datotekamaProstor na disku je organizovan u nekoliko celina:

Osnovni sektor za podizanje glavne particije (MBR – Master boot record) – jedan za ceo diskGlavna tabela particija – spisak particija na disku (najviše 4 stavke). Za svaku particiju se prati: lokacija osnovnog sektora zapodizanje volumena, početna i krajnja adresa particije, oznakaoperativnog sistema particije i vrsta FAT-a, vrsta particije(primarna, dopunska), oznaka aktivne particijeOsnovni kod za podizanje sistema – mali program koji pokrećeBIOS, čija je osnovna funkcija da prepusti kontrolu sistema onojparticiji koja je označena kao aktivna

Sloj za upravljanje datotekamaSvaka particija se sastoji od nekoliko celina:

Osnovni sektor za podizanje volumena (VBR – Volume boot record)Informacije o disku, veličine klastera, veličine FAT-a..Kod za podizanje volumena (program za učitavanje operativnogsistema)Tabela za razmeštanje datoteka (FAT – File Allocation Table) #1Tabela za razmeštanje datoteka (FAT – File Allocation Table) #2 (rezervna kopija)Osnovni direktorijum (Root) Oblast za podatke (podeljeno u klastere)

11

Sloj za upravljanje datotekama

FATFAT se nalazi na disku odmah iza boot sectora.Svaka particija se sastoji od dve identične kopije fat-a. Druga tablicapostoji u svrhu backupa u slučaju da se ošteti prva.Oštećenje tablice može rezultovati gubitkom podataka, jer ona sadržizapis o lokaciji podataka na disku.U FAT file sistemima pre FAT-a 32 postojao je problem jer se drugatablica nalazila odmah iza prve, i postojala je velika verovatnoća ako se npr. bad sectori pojave na mestu gde se nalazi prva, da će se pojaviti i na mestu gde se nalazi druga tablica. Takođe, OS je prečesto preslikavao prvu tablicu u drugu, i bilo kakvagreška u primarnoj rezultovala je greškom i u sekundarnoj tablici. Kod FAT-a 32 napravljena su neka poboljšanja u vezi backupa tablice. Sada je bilo koja tablica mogla biti primarna i fat mirroring funkcija se mogla isključiti.

12

FATOperativni sistem prilikom formatiranja diska nastojinjegovu površinu da podeli na što više klastera, što znači da je veličina i broj klastera proporcionalnaveličini diska i ne predstavlja standardnu nepromenljivuveličinu.Veličina klastera kreće se od 2KB do 32KB U FAT tablici čuvaju se nizovi brojeva klastera svakesnimljene datoteke ponaosob.

FAT

13

FATKoristi se hijerarhijska struktura direktorijuma za organizaciju datotekakoji se nalaze na disku. Početak tog logičkog stabla se naziva rootdirektorijum. Na svakoj particiji može postojati samo jedan root direktorijum.Kod starijih FAT sistema, root direktorijum je bio drugačiji od ostalihdirektorijuma. Nalazio se na disku odmah iza dve fat tablice. Osim štoje imao fiksnu poziciju, imao je i fiksnu veličinu, dok su ostalidirektorijumi imali proizvoljnu veličinu. FAT32 - jedno od unapređenja je da je ukinuo ograničenja rootdirektorijuma. Od tada se root direktorijum tretira isto kao običnidirektorijum, pa se može premestiti i proširiti na bilo koju veličinu.Root direktorijum se ne može izbrisati i nema roditeljski (eng. parent)direktorijum jer se nalazi na vrhu hijerarhijske strukture.

Sloj za upravljanje datotekama

14

Master Boot RecordSvaki hard disk mora imati početnu tačku gde su smeštene informacije o disku kao što su broj particija, vrsta particija... Takođe mora imati mesto sa kojeg BIOS započinje proces podizanja operativnog sistema. To mesto se naziva master boot record ili master boot sector. Master boot record se uvek nalazi na poziciji cylinder 0, head 0, sector 1, tj. na prvom sektoru na disku. Kada BIOS podiže sistem, uvek gleda na to mesto za instrukcije i informacije kako da podigne sistem. Master boot record se sastoji od:

master partition tablemaster boot code

Master Boot RecordMaster partition table:

Mala tablica koja sadrži opise particija koje se nalaze na disku. U njoj ima mesta za opis samo 4 particije. Zbog toga disk može imati samo 4 prave particije koje se nazivaju primarne particije. Sve ostale particije su logičke particije koje su povezane sa primarnima. Samo jedna particija može biti označena kao aktivna, i to je particija koja se koristi za podizanje sistema.

Master boot code:Master boot record sadržava mali boot program koji BIOS izvršava da bi pokrenuo boot proces. Ovaj program prebacuje kontrolu na bootprogram koji se nalazi na aktivnoj particiji.

15

ParticijeSvaka particija ima svoj vlastiti volume boot sector. Svaki taj sektor sastoji se od sledećeg:Disk parameter block ili media parameter block - tablica koja sadrži specifične informacije o particiji kao što su npr. veličina, broj sektora koje sadrži, tabela particije, broj sektora u clusteru...

Informacija koja je sadržana u ovom bloku koristi operativnom sistemu da odredi gde su smeštene ostale interne strukture particije, kao što je npr. file allocation table.

Volume boot code: kod koji se koristi za podizanje operativnog sistema kojeg poziva master boot code koji se nalazi u master boot recordu, ali samo za particiju koja je označena kao aktivna. Za ostale particije, ovaj kod je neiskorišćen.

Particije

Zbog velike važnosti informacije skladištene u Master Boot Recordu, oštete li se ili promene nabilo kakav način mogu uzrokovati gubitakpodataka.Master Boot Code je prvi program koji se pokreće kada pokrenemo računar, pa je najčešćemesto koje napadaju virusi.

16

Particije

Particija je potrebna da bi mogli uopšte koristitiprostor na hard disku. Sve ako i ostavljamo disk u jednom komadu, on mora biti particionisan da bi operativni sistem znao da se radi o jednojparticiji.

Particije

Pravila kod pravljenja particija su sledeća:Maximalno mogu biti četiri particije na jednom hard-disku. Nazivamo ih primarne particije.Samo jedna particija može biti označena u bilo kojemtrenutku kao aktivna te se koristi za podizanje sistema.DOS, Windows i svi ostali operativni sistemi kojizavise o boot-u, prepoznaće aktivnu primarnu particijua sve ostale primarne particije zanemariti.

17

ParticijeJedna od četiri particije može biti označena kaoextended DOS particija. Ova particija može bitipodeljena na više logičkih particija.To je način na kojimožemo imati dve ili više logičkih particija na jednomhard-disku.Jednom kad je sistem postavljen, nema nikakvihfunkcionalnih razlika između ovih particija, osim da jeC: jedina bootabilna i gde se nalaze sve sistemskedatoteke.

ParticijeKod extended particija, logičke particije čine povezanustrukturu.Informacije o extended particiji se nalaze u master partition tablici, jer je extended particija jedna od 4 particije memorisane u master boot recordu. Master partition table sadrži link na extended partition table, koja sadrži informaciju o prvoj logičkoj particiji i link na sledeću extended partition table.Extended partition tablice su povezane u lanac počevši odmaster partition tablice.

18

FAT

Kao rezultat načina na koji FAT alocira prostor diska i veže datoteke, moguće je da se pojave neke logičke greške.

Većina tih grešaka se dogodi kada se sruši neki program ili kada nestane struje, jer se dogodi da clusteri budu alocirani, ali ne i vezani za neku datoteku.

FATSledeće greške su najčešće kod FAT diskova:lost clusters: to su oni clusteri koji su u file allocation tablici označeni da su u upotrebi, ali ih sistem ne može povezati ni sa jednom datotekom. Uglavnom će ova snimljena datoteka biti oštećena u nekom pogledu, ali možemo pregledati njen sadržaj i možda spasiti barem jedan deo podataka.cross linked files: dve datoteke pokazuju na iste podatke na diskuallocation or FAT errors: zapisi u file allocation tablici su oštećeni ili podešeni na nepostojoće vrednosti. Većina programa će otkriti i popraviti ovakve greške.Vraćanje izbrisanih datoteka je poprilično jednostavno kod FAT file sistema zbog načina na koji on briše datoteke. Kada se datoteka izbriše, ona u stvari nije fizički uklonjena sa diska. Umesto toga, sistem sprema heksadecimalnu vrijednost E5h na prvo slovo imena datoteke. U DOS-u se koristila naredba undelete. Pri tom postupku sistem pita unos prvog slova datoteke. Ako nešto drugo upišemo preko tih sada slobodnih clustera, podaci su nepovratno izgubljeni.

19

Fragmentacija diskaKako je svaka datoteka memorisana kao lista clustera, podacikoji su u njoj sadržani mogu se nalaziti bilo gde na disku. Iakodatoteka može biti podeljena po celom disku, to nije poželjnozbog brzine.

Diskovi su relativno spori - mehanički uređaji. Svaki put kadadisk pomeri glavu na neku drugu stazu, za to vreme procesorizvede hiljade ciklusa.

U idealnom slučaju, svaka datoteka bi bila podeljena na clusterekoji se nalaze jedan iza drugoga na disku. Ovo bi omogućilo dasvaka datoteka bude pročitana bez mnogo mehaničkih pokretadiska.

Fragmentacija diskaSledeći pojednostavljeni primer ilustruje kako dolazi do fragmentacije diska: disk se sastoji samo od 12 clustera

kreiramo 4 datoteke: A – 1 cluster, B – 4 clustera, C – 2 clustera i D – 3 clustera.

Sada izbrišemo datoteku C

Kreiramo datoteku E koja treba 3 clustera. Kako na disku nema uzastopna 3 clustera, datoteku moramo podeliti na 2 dela

20

Fragmentacija diskaSada izbrišemo datoteke A i E i dobijemo sledeće:

I na kraju kreiramo datoteku F koja se sastoji od 4 clustera

Program za defragmentaciju bi sada trebao da preuredi datoteke takoda složi clustere jedan za drugim i na kraju bi trebali dobiti:

Većina programa za defragmentaciju neće voditi računa gde sudatoteke smeštene posle defragmentacije, a neki napredniji programiće staviti češće korišćene datoteke na početak, gde je brzina pisanja i čitanja malo veća.

NTFSNTFS (New Tehnology File System) - aktuelni NTFS 5, kojidolazi uz Win2k/XP, nudi sve ono što nudi FAT32 ali i više.NTFS ima svojstvo da poveća pouzdanost.Da bi upravljao pristupom datotekama, mogu se postavitirazna dopuštenja za direktorijume ili pojedine datoteke. NTFS datoteke nisu dostupne od ostalih operativnih sistema kao što je DOS. Za velike aplikacije NTFS podržava “spanning volumes”, što znači da direktorijumi i datoteke mogu biti ‘raštrkane’preko nekoliko diskova.

21

Pregled strukture particijeNTFS deli sav koristan prostor u clustere – blokovi podataka. NTFS podržava skoro sve veličine clustera – od 512 bytes do 64 KBytes. 4 KBytes cluster se smatra standardom. NTFS disk je simbolički podeljen u dva dela.Prvih 12% diska su dodeljeni takozvanom MFT (metafile) području – mesto gde MFT metafile raste.

Bilo kakvo snimanje podataka u ovom području je nemoguće. MFT područje se uvek drži prazno da se ne bi najvažnija datoteka (service file) fragmentirala u rastu. Ostatak od 88% diska predstavlja standardno mesto za snimanje datoteka.

MFT-područje

Proces iskoristivosti MFT-područja:Kada se datoteka ne može snimiti na uobičajeno mesto MFT-područje se jednostavno smanji i tako oslobodi mesto za datoteke koje želimo snimiti. Nakon što se opet oslobodilo nešto mesta na disku MFT se opet može proširiti.

22

MFT i njegova strukturaNTFS file system se odlikuje uspehom strukturiranja: svaki deo sistema je DATOTEKA (file). Najvažnija datoteka na NTFS-u - MFT ili Master File Table –standardna tablica datoteka. Nalazi se u MFT području i u njoj se nalazi centralni direktorijum svih ostalih datoteka na disku i same sebe. MFT je podeljen u delove fiksne veličine (obično 1 KBytes), i svaki deo odgovara nekoj datoteci. Prvih 16 datoteka su “housekeeping” i one su nepristupačne operativnom sistemu. Druga kopija prva 3 zapisa je zbog pouzdanosti smeštena u sredini diska. Ostatak MFT- datoteka može biti smešten, kao bilo koja datoteka, bilo gde na disku.

MFT i njegova strukturaPrvih 16 NTFS datoteka (metafiles) su sistemske datoteke. Svaka od njih je odgovorna za neki deo sistemske operacije.Prednost ovakvog modularnog pristupa je u neverovatnoj fleksibilnosti - na primer fizička greška u području FAT-a je fatalna za sve operacije na disku. NTFS može premestiti jednak fragment na bilo koje mesto sistemskog područja diska i tako izbeći ikakvu štetu njegove površine osim ako nisu u pitanju prvih 16 MFT elemenata.

23

U tablici su prikazani metafileovikoji se koriste i njihova funkcija:

Datoteka – tablica podudaranja između velikih i malih slova u imenima datoteka na disku. To je potrebno jer u NTFS-u imena datoteka su snimljena u Unicode-u tako da čine 65 hiljada različitih slova i nije lako tražiti za njihovim malim i velikim ekvivalentima.

Upcase

Datoteka gde se snimaju korisnička prava na područje diskaQuota

Bitmap slobodnog mesta na particiji Bitmap

Root direktorijum.

Popis standardnih atributa datoteka na particijeAttrDef

“housekeeping informacije” – labela particije, verzije sistema datoteka, itd.Volume

Dnevnik sačuvanih datotekaLogFile

Kopija prvih 16 MFT zapisa smeštenih u sredini diskaMFTmirr

Sam MFTMFT

DirektorijumiKod direktorijuma NTFS ima specifično snimanje datoteka koje ukazuje na druge datoteke i direktorijume čineći hijerarhijsku strukturu podataka na disku.Directory file se deli u blokove, od kojih svaki sadrži ime datoteke, osnovne atribute i odnos na sastavni dio MFT-a koji daje kompletnu informaciju na elemente direktorijuma. Unutrašnja struktura direktorijuma je binarno stablo. To znači ako želimo naći neku datoteku sa zadatim imenom u linearnom direktorijumu kao što je na primer FAT, operativni sistem mora pretražiti sve elemente direktorijuma dok ne nađe onaj koji tražimo.Binarno stablo alocira imena datoteka da učini pretragu bržom – uz pomoć dobijanja binarnog odgovora na pitanje o mestu datoteke. Binarno stablo je u mogućnosti davanja odgovora na pretragu u kojoj grupi je potrebno ime smešteno – ispod ili iznad zadaog elementa.

24

StabilnostNTFS je fail-safe sistem koji može ispraviti sam sebe kod bilokoje stvarne greške. Svaki moderni sistem datoteka je temeljen na sličnom konceptukao što je transaction – radnja izvedena u celosti i tačno iliuopšte nije izvedena.NTFS nema posredne (nepouzdane ili netačne) uslove - količinaodstupanja podataka ne može se podeliti pre greške ili posleprekida - ili su izvedeni ili poništeni.Običan NTFS korisnik će teško primetiti grešku u sistemu, aliako je vidi treba pokrenuti chkdsk.

KompresijaNTFS je napravljen da podržava kompresiju diska. Ranije su postojali Stacker ili DoubleSpace za ovu namenu.

Svaka datoteka ili direktorijum mogu se snimiti na disk u kompresovanom obliku i ovaj proces je u potpunosti razumljiv za sve aplikacije.

Kompresija datoteka ima vrlo veliku brzinu i samo jedno veliko negativno svojstvo – velika virtualna fragmentacija kompresovane datoteke.

Kompresija se izvodi pomoću blokova od 16 clustera koji se zovu "virtual clusters". Ova mogućnost je veoma fleksibilna i dozvoljava da se postignu razni efekti – na primer pola datoteke može biti kompresovano a druga polovina ne.

25

Encryption (NT5)Svaka datoteka ili direktorijum može se enkriptovati tako da ne bude čitljiv za druge NT programe.

U kombinaciji sa standardnom i sigurnom lozinkom u samom sistemu ova mogućnost pruža sigurnost važnih podataka za većinu aplikacija.

Prednosti NTFS-aNTFS se ne ograničava na broj zapisa od 512 u root direktorijumu. Windows 2000 i Windows XP mogu formatirati particije do 2 TB. NTFS upravlja slobodnim diskom efektivnije koristeći male clustere. NTFS podržava encryption sistem (EFS), da spreči nedopuštene pristupe sadržajima datoteka.

26

Nedostaci NTFS sistemaNTFS particije nisu pristupačne od MS-DOS, Windows 95, Windows 98, i Windows Millennium Edition operativnih sistema.

Mnoge unapređene mogućnosti NTFS-a koje se nalaze u verziji 5 nisu dostupne u Windows NT.

Na malim particijama sa većinom malih datoteka NTFS sistemdatoteka može uzrokovati mali pad u brzini izvođenja u odnosu naFAT.

Floppy disk ne može biti formatiran kao NTFS.

Razlika između FAT, FAT32, NTFS

Sistemi

sistema sistema

8

27

Razlika između FAT, FAT32, NTFS

Dozvoljava postojanje više kopija tabele datoteke koje se čuvaju na disku.

Postoji samo jedna tabela evidencije razmeštanja datoteka.

Podržava dugačka imena (255+3).Za ime datoteke rezervisano je 8 znakova i 3 znaka za tip (ekstenziju). FAT 32 podržava 255 znakova za ime.

Uz atribute koje već podržavaju FAT i FAT 32 podržava još i Time Stamp i kompresiju.

Podržava atribute fail-ova: Read-only, Sistem, Archive, Hidden.

Datoteka može biti bilo gde.Sve datoteke se postavljaju od prvog slobodnog klastera na disku.

Veličina klastera se može podešavati.Veličinu klastera određuje veličina diska.

NTFSFAT, FAT 32

Raiser file system (RAISERFS)Predstavlja noviju generaciju file sistema koji za pristuppodacima koriste tzv. binarna stabla kojima se izbegavaserijsko pretraživanje podataka (lista).

Metodom binarnih stabala sistem vrlo brzo pristupapodacima.

Primer lančane liste

28

Sistem počinje svoju pretragu u root-u (korenu), jer iz root-a možedoći do svake druge niti (node).Root poseduje pokazivače na njegova tzv. subtrees (podstabla).Leafs su niti koje nemaju svoju decu (children), a interne niti(internal nodes) su niti koje imaju svoju decu.

Primer binarnog stabla

Raiser file system (RAISERFS)

Ovakva metoda (organizacija) podataka nudi brz pristup podacima.Mana mu je što se s vremenom desi da jedna strana binarnog stablamnogo više “teži” i time otežava (uskraćuje) brzi pristup podacima.Takva binarna stabla zovemo “nebalansirana binarna stabla”

Raiser file system (RAISERFS)

Primer nebalansiranog binarnog stabla

29

Raiser file system (RAISERFS)Ono što Reiser file sistem čini brzim - svoja binarnastabla balansira (optimizira) posebnim algoritmima takošto pregleda stablo te ga presloži da ima što manje“mrtvih tačaka” eng. Leaf nodes.Postoje dve metode balansiranja:

balansiranje po veličini stabla (Height Balanced Trees)balansiranje slobodnog prostora (Free Space Balansing)

Balansiranje po veličini stabla(Height Balanced Trees)

Stabla balansirana po veličini su stabla kojima svaka mogućapretraga od korenske niti (root node) do mrtve niti (leaf node) imajednak broj podniti odnosno skokova. Reiser file sistem nastoji da svoja stabla što duže drži u ovakvomobliku jer su tada najpristupačnija i najbrža za potragu.

30

Balansiranje slobodnog prostora(Free Space Balansing)

Balansiranje slobodnog prostora - defragmentiranje diskaSlaže relativno male datoteke u bliske blokove ili u isti blok tako da netroše mnogo mesta na disku – sharing blocks.Ova metoda osigurava redni zapis podataka na disk čime se postižebolja defragmentacija diska bez ručnog defragmentiranja.Podaci se komprimuju pre samog pisanja na disk (dok su još u memoriji).Uobičajeno prilikom formatiranja diska Raiserfs-om, blokovi supostavljeni na 4 kB što daje određene prednosti za zapis većih datoteka.

Raiser file system (RAISERFS)Određena zaštita za nagli gubitak struje i slične greške.

Evidenciju eng. journaling o svemu što bi trebao napisatipo disku neposredno pre pisanja - u svoju journalingtablicu upisuje sve korake koje treba napraviti potom ih redom briše kako ih izvršava.

U slučaju nestanka struje file system prilikom podizanja sistema vrši pregled ako postoji sadržaj u journalingtablici i zavisno od toga izvršava ono što zadnji put nije uspeo.

Ova metoda nije uvek uspešna ali pruža određenu zaštitu.

31

Upravljanje sistemom datoteka