Datotečni Sistemi Windows i Linux Os-A.final Ver
-
Upload
josip-mijatovic -
Category
Documents
-
view
75 -
download
3
description
Transcript of Datotečni Sistemi Windows i Linux Os-A.final Ver
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
UNIVERZITET U TUZLI
Filozofski fakultet
Josip Mijatovi
DIPLOMSKI RAD
Tema: Datoteni sistemi Windows i Linux operativnih sistema
Tuzla, Septembar 2013. godine
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
UNIVERZITET U TUZLI
FILOZOFSKI FAKULTET
STUDIJSKI ODSJEK: Tehniki odgoj i informatika
Josip Mijatovi
DIPLOMSKI RAD
Tema: Datoteni sistemi Windows i Linux operativnih sistema
Tuzla, Septembar 2013. godine
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Mentor: dr.sc. Amira erifovi-Trbali, docent
Rad ima 48 stranica.
Redni broj diplomskog rada:
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
5
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 1 ~
Saetak
Jedna od najveih potreba za primjenu raunara je svakako skladitenje i uvanje podataka.
Razvoj operativnih sistema doprinio je i nove naine na koje operativni sistem organizira,
upravlja i pristupa podacima pomou logikih struktura na tvrdom disku. Sama
organizacija i pohranjivanje datoteka na mediju obavlja se uz pomo datotenog sistema,
koji predstavlja dio jezgre operativnih sistema.
Prvo poglavlje sadri uvod i osnovne naznake za tematsku cijelinu koja se istrauje u ovom
diplomskom radu.
U drugom poglavlju obrauju se svojstva i predstavljena je globalna arhitektura datotenog
sistema. Date su definicije osnovnih pojmova i opisani kljuni koncepti, kao to jestruktura datoteke, smjetaj datoteke na disku, naini implementacijedatotenih funkcija,
metode posluivanja zahtjeva za pristup podacima, itd.
Tree poglavlje je posveeno datotenim sistemima koji pripadaju Windows operativnim
sistemima. Navedeni su datoteni sistemi koje je Windows OS koristio tijekom svoje
historije, a potom i poblie opisaneprednosti i nedostaci pojedinih. Na kraju poglavlja je
data meusobna usporedbaobraenih datotenih sistema.
U etvrtom poglavlju prezentirana je struktura datotenog sistema koji pripada Linux OS -
u. Opisana je hijerarhija direktorija te podatkovna struktura. Pored toga, obraene su
specifikacije i karakteristike najznaajnih datotenih sistema koje je Linux podravao
tijekom svojeg razvoja, a to su: proireni datoteni sistemi (ext2/ext3/ext4), XFS, JFS,
JFFS te ReiserFS.
U petom poglavlju iznesen je zakljuak ovog diplomskog rada, a na samom kraju nalazi se
popis tablica i slika kao i literatura koja je koritenapri izradi ovog rada.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
6
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 2 ~
Summary
One of the biggest reasons for the usage of computers is definitely data storage. The
development of operating systems has contributed the formation of new way in which the
operating system organizes, menages and accesses data, using the logical structure of the
hard drive. The organization and storage of files on the media is done with the help of file
system, which is part of the core of any operating system.
The first chapter provides an indruduction and basic outlines for the topic is being
researched in this paper.
The second chapter deals with the properties and the global architecture of the file system.
The definition of basic concepts are given and key concepts, such as the structure of file,
storing the file on the disk, means of implementation of file functions, methods of
answering requests for data accessing, are described.
The third chapter is devoted to file systems that belong to the Windows operating system.
File system that Windows OS used troughout its history are named and their advantages
and disadvantages thorougly explained. At the end of the chapter there is a comparison of
the analyzed file system.
The fourth chapter presents the structure of the file system that belongs to the Linux
operating system. It describes the hierarchy of directories and data structure. In addition,
we examined the specifications and characteristics of the most important file system that
Linux has supported during its development. Those are: extended file system (ext2, ext3,
ext4), XFS, JFS, JFFS and ReiserFS.
The fifth chapter contains the conclusion of this paper, and ath the end there is a list of
tables and figures, as well as the list of the literature that was used in writing this paper.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
7
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 3 ~
Sadraj
1. UVOD ............................................................................................................................... 5
2. SVOJSTVA DATOTENOG PODSISTEMA............................................................. 6
2.1. Uloga datoteka u raunarskim sistemima................................................................... 6
2.2. Struktura datoteke ....................................................................................................... 7
2.3. Smjetanje datoteka na disku................................................................................. 10
2.3.1. Opis diskovnog prostora.................................................................................. 10
2.3.2. Nain smjetanja datoteka na disku................................................................ 11
2.4. Naela ostvarenja datotenih funkcija................................................................... 12
2.4.1 Stvaranje datoteke............................................................................................. 13
2.4.2. Otvaranje datoteke........................................................................................... 13
2.4.3. itanje datoteke................................................................................................ 14
2.5. Metode posluivanja zahtjeva za pristup datotekama......................................... 15
2.5.1 Posluivanje redom prispjea.......................................................................... 15
2.5.2. Posluivanje s najkraim vremenom premjetanja....................................... 16
2.5.3. Posluivanje pregledavanjem.......................................................................... 16
2.5.4. Posluivanje krunim pregledavanjem........................................................... 17
2.5.5. Odabir metode posluivanja............................................................................ 18
3. DATOTENI SISTEMI WINDOWS OS-A..................................................................... 19
3.1. FAT (File Allocation Table).................................................................................... 19
3.1.1 FAT16 ................................................................................................................. 20
3.1.2. FAT32 ................................................................................................................ 21
3.2. NTFS (New Technology File System).................................................................... 23
3.3 Usporedba FAT16, FAT32 iNTFS datotenih sistema............................................ 25
3.4. Primjer komparacije. FAT32 vs NTFS ................................................................... 26
4. DATOTENI SISTEMI LINUX OS-A ....................................................................... 29
4.1.Drugi proireni datoteni sistem ext2................................................................. 32
4.1.1. Podatkovna struktura...................................................................................... 32
4.1.2. Ogranienja i prednosti ext2 datotenog sistema.......................................... 33
4.2. Trei proireni datoteni sistem - ext3................................................................. 34
4.2.1. Dnevnienje (eng. journaling)......................................................................... 35
4.2.2. Ogranienja i prednosti ext3 datotenog sistema.......................................... 36
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
8/
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 4 ~
4.3. etvrti proireni datoteni sistem ext4.............................................................. 37
4.3.1. Znaajke............................................................................................................. 37
4.4. XFS............................................................................................................................ 38
4.4.1. Specifikacije....................................................................................................... 38
4.5. JFS............................................................................................................................. 40
4.6. JFFS........................................................................................................................... 42
4.6.1. itanje i pisanje podataka na flash memoriji................................................. 42
4.7. Reiser3..................................................................................................................... 43
4.7.1. Znaajke i nedostaci......................................................................................... 43
5. Zakljuak........................................................................................................................ 45
Popis slika ........................................................................................................................... 46
Popis tablica ....................................................................................................................... 47
Literatura ........................................................................................................................... 48
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
9/
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 5 ~
1. UVOD
Svi sadraji koji se u raunalu trebaju trajno uvati pohranjuju se u datoteke. Praktiki svi
poslovi koje izvodimo raunalom oslonjeni su na uporabu i pretvorbu datoteka (eng.file).
Zbog toga se korisnik ve u svom prvom pristupu raunalu susree s datot ekama. Taj sepristup obavlja posredstvom dijela operativnog sistema koji nazivamo datotenim
sistemom (eng.File System).
Datoteni sistem je apstrakcija organizacije podataka na nekom mediju, tj. datoteni sistem
definira nain pohranjivanja i organiziranja raunalnih datoteka na medij za pohranu
podataka. Organizacija datoteka podrazumijeva fiziko smjetanje na disku (gdje, u kojim
sektorima) i logiko smjetanje (kako su datoteke grupirane, kako im se pristupa, pronalazi
itd.).
Datoteni sistem korisniku raunala pomae u rasporeivanju i organizaciji direktorija i
datoteka, kako bi mogao lake koristiti i upotrebljavati podatke sauvane u njima.
Formalno reeno, datoteni sistem je skup apstraktnih tipova podataka koji su
implementirani tako da potpomau dohvaanje podataka, njihovo uredno pohranjivanje,
manipuliranje i pristup podacima, i makar i najjednostavniju, hijerarhijsku strukturu.
Danas su funkcije datotenih sistema dio jezgre operativnih sistema. Prilikom instalacijeoperativnog sistema najee se moe odrediti koji e se datoteni sistem rabiti kao
osnovni na nekom raunalu, no na vie vanjskih medija dostupnih nekome raunalu
mogue je rabitivie datotenih sistema.
Razliiti operativni sistemi imaju razliite potrebe i stoga koriste razliite datotene
sisteme. U daljnjim poglavljima e se obraivatidatoteni sistemi koji pripadaju Windows
OS-u te Linux OS-u. Windows operativni sistem koristi FAT (eng. File Allocation Table)
nazivan jo i FAT16, FAT32, te NTFS (eng. New Technology File System). Linuxoperativni sistem koristi slijedee datotene sisteme: ext2, ext3, ext4, te XFS, JFS, JFFS i
Reiser3. Pored ovih, postoje i jo mnogi drugi datoteni sistemi od strane Linuxa, ali su
ovo oni koji se najee koriste.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 6 ~
2. SVOJSTVA DATOTENOG PODSISTEMA
2.1. Uloga datoteka u raunarskim sistemima
Datoteka u raunarstvu je skup binarnih podataka, koji su spremljeni na medij dostupanprogramu za itanje ili za promjenu. Unutar operativnog sistema korisnike i ostale
datoteke smjetene su u posebni datoteni sistem. S obzirom na to da se sadraji radnog
spremnika gube pri svakom iskljuivanju raunala, datoteke se uvaju na vanjskim
spremnicima. Najee koriteni vanjski spremnici su diskovi. Na svaki se disk, osim
samih datoteka, pohranjuju i tablice ili direktoriji (eng. directories) u koje se smjetaju
imena datoteka s kazaljkama koje omoguuju pristup do datoteka. Tablice se uobiajeno
organiziraju po odjeljcima i pododjeljcima (eng. subdirectory) kako bi se olakalopronalaenje datoteka. Takve se tablice mogu slikovno prikazati kao razgranato stablo u
ijoj se posljednjoj razini nalaze nazivi datoteka.
Za svaku se datoteku svi vani podaci, tzv. atributi datoteke (eng. attributes) smjetaju u
jedan zapis koji nazivamo opisnikom datoteke (eng. file descriptor). Podatke iz tog zapisa
koristi operativni sistem, a ne korisniki programi. Takav smjetaj opisnika omoguuje da
se ista datoteka moe nazvati razliitim imenima i da se do nje moe pristupiti iz razliitih
ogranaka direktorija.
Datoteke uz svoj naziv uobiajeno dobivaju sufiks (odvojen od imena takom) kojim se
opisuje tip datoteke. Datoteke mogu sadravati primjerice:
programe u strojnom obliku pripremljenom za izvoenje (uobiajeno sa
sufiksom exe);
izvorne programe napisane u viem programskom jeziku (uobiajeno sa
sufiksom koji ukazuje na jezik: c, cpp, pas i sl.);
datoteke koje sadre tekstove i dokumente (uobiajeno sa sufiks ima txt, asc ili
doc).
Datoteni sistem omoguuje provoenje razliitih operacija nad datotekama. Za odreeni
tip datoteka doputene su samo odreene operacije; tako se, primjerice, datotekom koja
sadri program pripremljen za izvoenje moe obaviti samo operacija pokretanja
programa. Znakovna se datoteka ne moe pokrenuti kao program (ak ako je u datoteci
pohranjen program napisan nekim viim programskim jezikom).
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 7 ~
Za pojedine tipove datoteka moe se odrediti doputeni naini njihove uporabe (samo
izvoenje, samo itanje, samo pisanje). Openito, pristup do odreenih datoteka moe se
sigurnosno zatititi, tj. dopustiti ga samo za to ovlatenim korisnicima.
Datoteke, osim trajnog pohranjivanja nekih sadraja, imaju jo jednu vanu svrhu uraunalnim sistemima: one slue i za razmjenu informacija izmeu programa. Datoteka
moe biti stvorena i popunjena od strane jednog programa i nakon toga njezin sadraj
moe dohvatiti drugi program. Prema tome, moe se rei da datoteke u raunalnim
sustavima imaju dvojaku ulogu:
one slue za trajno pohranjivanje svih oblika sadraja i
s pomou njih se moe obavljati razmjena informacija izmeu razliitih programa.
2.2. Struktura datoteke
Datoteni sistem u naelu se ne brine o sadraju datoteka. Ipak je, zbog potpunijeg
razumijevanja datotenih operacija, prikladno razmotriti neke od moguih naina
strukturiranja datoteka.
Binarna datoteka: Najjednostavniji oblik datoteke koristi se za pohranjivanje mainskih
programa pripravnih za izvoenje. Takva se datoteka moe promatrati kao niz bitova
(pohranjenih u bajtove) koji se kao cjelina prenose iz jednog spremnika u drugi, i to bez
ikakvih promjena.
Nestrukturirana datoteka: U dananjim se operativnim sistemima preteito
upotrebljavaju datoteke koje se sastoje od niza bajtova i nemaju nikakvu strukturu.
Datoteni sistem omoguuje pristup do pojedinog bajta s pomou datotenog pokazivaa
(eng. file pointer). Pri otvaranju datoteke datotenipokaziva postavlja se na poetak
datoteke. Datoteni sistem svojim funkcijama omoguuje itanje niza bajtova iz datoteke i
pisanje niza bajtova u datoteku. Datotena se pokazivapri itanju i pisanju pomie za broj
proitanih, odnosno upisanih bajtova. Posebnom se oznakom obiljeava kraj datoteke (eng.
End of File). Pokuaj itanja iza kraja datoteke izaziva pogreku, dok pisanje u datoteku
moe izazvati produljenje datoteke i pomicanje oznake novog kraja datoteke.
U sueljima predvienim za pojedine programske jezike nalaze se API (eng. application
programming interface) funkcije koje omoguuju odreeno formatiranje podataka. itanje
i pisanje osnovnih tipova podataka u skladu s deklariranim formatom uzrokuje dohvat,
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 8 ~
odnosno pohranjivanje odreenog broja bajtova u datoteku i pomicanje datotenog
pokazivaa usklaeno s brojem dohvaenih ili pohranjenih bajtova. Nadalje, postoje
funkcije koje eksplicitno djeluju na pomicanje datotenog pokazivaa. Datoteka se u neku
ruku moe promatrati kao linearni adresni prostor ije adresiranje obavlja datoteni
pokaziva.
Potpora formatiranju postoji u ASCII skupu znakova u kojemu postoje posebni znakovi za
odvajanje zapisa (primjerice, znakovi CR od eng. Carriage Return i LF od eng. Line
Feed), kao i znak za kraj retka (EOL od eng. End of Line). Ti se znakovi mogu koristiti za
svojevrsno strukturiranje datoteka pri emu se datoteke tada uobiajeno nazivaju
znakovnim datotekama (eng. text file). Velika je prednost nestrukturiranih datoteka to one
omoguuju jednostavnu razmjenu sadraja izmeu razliitih programa, i to ak i onih kojise izvode u potpuno razliitim programskim okruenjima i uz potporu razliitih
operativnih sistema.
Primjer 1. Na razini primjenskog programa potpuno ne strukturirani bajtovi mogu se
organizirati u razliite strukture. Tako se datoteka moe strukturirati u podnizove bajtova
stalne ili promjenljive duljine (slika 1.).
Slika 1. Strukturiranje nestrukturirane datoteke
Unutar korisnikog programa moraju se nalaziti parametri (veliina n za datoteku sa
stalnim duljinama zapisa, tablica veliina ni za datoteke s promjenljivim duljinama zapisa)
koji odreuju logiku strukturu datoteke. Uporabom API funkcije za postavljanje
datotenog pokazivaa na izraunati poetni bajt nekog logikog zapisa izvorna se
nestrukturirana datoteka moe pretvoriti u datoteku koja omoguuje neposredni pristup do
svakog zapisa.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 9 ~
Indeksna struktura: U nekim ranijim operativnim sistemima datoteni je sistem
podravao i operacije s tzv. indeksnim datotekama. Danas se uporaba indeksno
organiziranih struktura zapisa preputa sustavima baza podataka. Programski sistemi za
podravanje baza podataka omoguuju pohranjivanje i dohvaanje zapisa usklaeno s
vrijednostima pojedinih polja tih zapisa. Meutim, indeksna se struktura moe organizirati
unutar korisnikog programa uporabom tablica za pohranjivanje parametara strukture te
izgradnjom funkcija za pristupanje do pojedinih elemenata strukture uporabom postojeih
API funkcija za pristupanje ne strukturiranoj datoteci.
Primjer 2. Pretpostavimo da se datoteka sastoji od N zapisa Rj (O i N-1) jednake
duljine n, koje elimo dohvaati s pomou indeksa. U izvorno nestrukturiranoj datoteci
moe se oponaati indeksni pristup tako da se redne brojeve poetnih bajtova svakogzapisa smjesti u posebni poredak (smjeten takoer unutar datoteke, slika 2.).
Slika 2. Indeksno- sekvencijalna organizacija
Zapisi mogu u datoteci biti razmjeteni proizvoljnim redoslijedom. Redoslijed pristupa
odreen je razmjetajem kazaljki u poredak. Ovakva se organizacija moe nazvati
indeksno-sekvencijalnom. Uporabom postojeih API funkcija moe se pripremiti funkcije
za organizaciju takve datoteke.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 10 ~
2.3. Smjetanje datoteka na diskuKao to je ve spomenuto u poglavlju 2.1., svaka je datoteka opisana u datotenom sistemu
svojim opisnikom. Opisnik sadri sve atribute datoteke. Tipini sadraji opisnika jesu:
naziv datoteke,
tip datoteke,
lozinka,
ime vlasnika datoteke,
prava pristupa,
vrijeme stvaranja datoteke,
vrijeme zadnje uporabe datoteke,
ime posljednjeg korisnika i slino,
opis smjetaja datoteke na disku.
Naziv svake datoteke mora biti jedinstven kako bi je se moglo nedvosmisleno prepoznati.
Vlasnik datoteke koji poznaje lozinku moe mijenjati neke atribute datoteke, primjerice,
pravo pristupa do datoteke. Datoteke mogu upotrebljavati i drugi korisnici, ali samo na
nain kako je to propisao vlasnik. Pristup do datotekemoe biti sigurnosno zatien pa se u
opisniku mogu nai i elementi sigurnosne zatite, odnosno pokazivaa na zatitni
podopisnik.
Jedan od najvanijih sadraja opisnika datoteke jest opis njezina smjetaja u vanjskom
spremniku. Najprikladniji vanjski spremnik za smjetanje datoteka je magnetski disk.
2.3.1. Opis diskovnog prostoraNa disku se ne mogu adresirati pojedinani bajtovi nego sektori. Prema tome, datoteke je
smisleno smjetati na disk tako da ih se podijeli na blokove bajtova koji su po veli ini
jednaki veliini sektora, odnosno cjelobrojnom viekratniku te veliine (pri emu je
viekratnik najee potencija broja dva) kada se za smjetanje blokova odabere nakupina
(eng. cluster) od vie susjednih sektora. Primjerice, uz veliinu sektora od 512 bajtova
blokovi mogu imati duljinu od 1 KB, 2 KB, 4 KB, 8 KB itd., a nakupine sektora ine 2, 4,
8, odnosno 16 uzastopnih sektora.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 11 ~
Slika 3. Fizika organizacija podataka na disku
Jedan fiziki disk moe se upotrebljavati ili kao jedan jedinstveni adresni prostor ili se onmoe podijeliti na logiki razdvojene adresne potprostore, tzv. sveske (eng. volume). Svaki
svezak ima svoj direktorij, odnosno datotenu tablicu u kojoj su sadrani opisnici svih
datoteka smjetenih u tom svesku. Osim toga, sastavni je dio svake datotene tablice i opis
slobodnog prostora sveska. Evidencija o zauzetim i slobodnim sektorima, odnosno
nakupinama sektora moe se najsaetije obaviti bitovnim prikazom.
U nizu bitova svakom sektoru, odnosno nakupini sektora pripada jedan bit ija je
vrijednost jednaka 1 kada je sektor, odnosno nakupina zauzeta ili jednaka 0 u suprotnom
sluaju. Eventualni neispravni sektori mogu se pri poetnom ispitivanju diska oznaiti s 1 i
tako ih iskljuiti iz daljnje uporabe, ime se omoguuje uporaba i djelomino neispravnog
diska. Sektori oznaeni kao da su zauzeti nee se nikada dodijeliti niti jednoj datoteci i,
prema tome, ne mogu naruiti funkcionalnost diska.
Slobodni se prostor sveska moe opisati i svojevrsnim dinamikim strukturama u kojima se
neposredno moe odrediti adresa slobodnog sektora, odnosno nakupine sektora (iz
bitovnog se prikaza adrese dobivaju brojenjem bitova).
2.3.2. Nain smjetanja datoteka na diskuSa stanovita brzine prijenosa sadraja datoteka s diska u radni spremnik i obrnuto bilo
prikladno cjelovite datoteke smjestiti kompaktno u uzastopne sektore na disku. Meutim,
na temelju razmatranja uporabe radnog spremnika moemo zakljuiti da bi takav nain
smjetanja datoteka izazvao fragmentaciju prostora jednog sveska. Naime, taj je nain
smjetanja datoteka na disk usporediv s dinamikim dodjeljivanjem radnog spremnika s
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 12 ~
jednim segmentom. Zbog toga se kao rjeenje namee nain smjetanja datoteka koji
podsjea na dodjeljivanje radnog spremnika tzv. stranienjem.
Datoteka se moe promatrati kao "logiki adresni prostor" koji zapoinje nultom adresom i
zavrava adresom koja je za jedan manja od duljine datoteke. Znamo da unutar togadresnog prostora "adresu" odreuje pokaziva datoteke. Datoteka se moe podijeliti na
blokove (procesni logiki adresni prostor dijeli se na stranice), ija je veliina jednaka
veliini sektora, odnosno nakupine sektora diska. Blokovi se razmjetaju u nakupine
sektora na disku na jednak nain kao to se stranice smjetaju u okvire radnog spremnika.
U dijelu opisnika datoteke koji sadri opis razmjetaja datoteke na disku mora se nalaziti
tablica kazaljki na nakupine sektora koja podsjea na indeksno-sekvencialnu organizaciju
opisanu u primjeru 2, pri emu bi zapisi bili po veliini jednaki nakupinama sektora.
Pokazivai se redom dohvaaju s pomou indeksa.
Fragmentacija prostora sveska odreena je veliinom nakupine sektora. Naime, pri podjeli
datoteke na blokove posljednji blok bit e samo u iznimnim sluajevima popunjen. U
najgorem sluaju on moe sadravati samo jedan bajt i tada je posljednja nakupina sektora
praktiki prazna. Oekivati je da e u prosjeku datoteke popuniti polovinu posljednjeg
bloka. Fragmentacija diskovnog prostora ovisi, dakle, o veliini nakupine sektora.
2.4. Naela ostvarenja datotenih funkcijaDatoteni sustavi s pomou zbirke API funkcija omoguuju obavljanje tipinih operacija s
datotekama. Tipine operacije jesu:
stvoriti i unititi;
otvoriti i zatvoriti;
itati i pisati.
Za razumijevanje ostvarenja datotenih funkcija treba se podsjetiti na sve to je do sada
reeno o datotekama:
svi podaci o datotekama smjeteni su u opisniku datoteke;
opisnici su smjeteni u datotenoj tablici;
datoteke su smjetene u sektore ili nakupine sektora na disku.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 13 ~
2.4.1 Stvaranje datotekeStvaranje datoteke podrazumijeva uvoenje novog opisnika u datotenu tablicu i
oblikovanje svih potrebnih podataka za dohvat datoteke. Skica funkcije za stvaranje
datoteke prikazana je u nastavku:
funkcija Stvoriti_datoteku (Novo_ime, atribut)
{ pregledati datotenu tablicu;
ako je (Novo_ime ve u tablici) {
dojaviti pogreku; }
inae{
uvesti novi opisnik u tablicu;
dodijeliti poetni prostor datoteke ;zapisat i sve podatke u opisnik ; }}
2.4.2. Otvaranje datotekePrije uporabe datoteka se mora otvoriti. Pri otvaranju se imenu datoteke pridruuje
identifikator ID (ruica, eng. handle) s pomou kojeg e se iz adresnog prostora procesa
pristupati otvorenoj datoteci. Pri otvaranju treba:
u adresni prostor operativnog sistema prenijeti s diska aktivnu kopiju opisnika
datoteke;
u adresnom prostoru operativnog sistema rezervirati meuspremnike za smjetaj
dijelova datoteka;
uspostaviti vezu izmeu adresnog prostora procesa i otvorene datoteke s pomou
identifikatora.
Samo se otvorene datoteke mogu koristiti. Pri otvaranju se datoteni pokazivapostavlja
na poetak. U nastavku je prikazana skica funkcije za otvaranje datoteke:
funkcija Otvoriti_datoteku (Ime,Nain_pristupa, ID) {
pregledati datotenu tablicu ;
ako je (Ime naeno && Nain_pristupa = = Pravo _pristupa) {
stvoriti aktivnu kopiju opisnika u adresnom prostoru operacijskog sustava;
rezervirati meuspremnik u adresnom prostoru operacijskog sustava;
uspostaviti vezu izmeU aktivnog opisnika i identifikatora;
inae{ dojaviti poGreku ; }}
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 14 ~
2.4.3. itanje datotekeBiblioteke pojedinih jezinih procesora sadre funkcije koje obavljaju formalizirano
itanje. Te se funkcije izgrauju s pomou ovakve osnovne funkcije itanja:
funkcija itati _ datoteku (ID, Logika_adresa, Broj _bajtova) {
s pomou ID pristupiti do aktivnog opisnika;
provjeriti je li datoteka otvorena za itanje i postoji li traeni broj bajtova;
ako j e (sve u redu) {
na osnovi trenutane vrijednosti datotene kazaljke i Broj _bajtova u
meuspremnik prenijeti potrebne sektore ;
prepisati u adresni prostor procesa s poetnom adresom Logika_ adresa
traeni broj bajtova;poveati sadraj datotene kazaljke za preneseni broj bajtova;
inae{ dojaviti pogreku;}}
Na slian su nain izgraene i ostale funkcije datotenog sistema. Treba naglasiti da se pri
pisanju u datoteku piu u kopiju skupine sektora u radnom spremniku. Postoji opasnost da
se pri nekim nepredvienim prekidima rada promijenjeni sadraji iz radnog spremnika ne
prepiu na disk. Time se u transakcijskim postupcima moe pojaviti nekonzistentnost.
Izbjegavanje nekonzistentnosti relativno je sloeno izahtijeva posebno razmatranje.
Slika 4. Rad sa datotekama uz pomo zbirke API funkcija
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
1
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 15 ~
2.5. Metode posluivanja zahtjeva za pristup datotekamaSvaki pristup sadraju datoteke odvija se posredovanjem operativnog sistema, putem
zbirke API funkcija kako je prikazano u prethodnom odjeljku ili putem suelja operativnog
sistema. U viezadanom sistemu mogue je nakupljanje zahtjeva za pristup datotenomsistemu od strane vie procesa budui da se u jednom trenutku moe posluivati samo
jedan zahtjev. Svi ostali neposlueni zahtjevi moraju se stoga staviti u red ekanja.
Operativni sistem moe utjecati na prosjeno trajanje ekanja tako da nakupljene zahtjeve
slae u red po zadanim pravilima, tj. nekom metodom odredivanja redoslijeda
posluivanja. Pritom se mora voditi rauna o fizikalnim svojstvima magnetskih diskova
zbog injenice da trajanje posluivanja ovisi o smjetaju traenih podataka na disku te
trenutanoj poziciji glave za itanje.
2.5.1 Posluivanje redom prispjeaNajjednostavnija metoda rasporeivanja jest posluivanje redom prispijea (eng. First-
come, first-served, FCFS) i u njoj se zahtjevi posluuju onim redom kojim su dolazili. Iako
je na prvi pogled najpravednija, ova metoda esto uzrokuje veliko prosjeno trajanje
ekanja. Naime, glava za itanje mora prelaziti velik broj staza ako su zahtjevi povezani s
podacima na udaljenim stazama na disku.
Primjer 3. Pretpostavimo da su razliiti Zahtjevi svedeni samo na redni broj staze na kojoj
se nalaze traeni podaci te da su pristigli sljedeim redoslijedom:
3, 7, 40, 98, 7 1, 68, 70, 21, 5, 49.
Pretpostavimo takoer da se glava za itanje trenutno nalazi na stazi 29. Ako koristimo
posluivanj redom prispijea, kretanje glave za itanje prilikom posluivanja ovih zahtjeva
prikazano je slikom 5.
Slika 5. Posluivanje redom prispjea
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 16 ~
2.5.2. Posluivanje s najkraim vremenom premjetanjaKako se velika koliina vremena troi samo na pomicanje glave za itanje, logino je
posluiti one zahtjeve koji su blie trenutanoj poziciji glave prije posluivanja udaljenih
zahtjeva. Takva strategija vodi nas do metode posluivanja s najkraim vremenompremjetanja glave (eng. shortest-seek-time-first, SSTE). Svaki put kada je potrebno
posluiti neki od pristiglih zahtjeva, uvijek se odabire onaj koji je najblii trenutanoj
poziciji glave. Tijek posluivanja zahtjeva iz primjera 3,. ovom metodom prikazuje slika 6.
Slika 6.. Posluivanje s najkraim vremenom premjetanja
Primjena ove metode moe izazvati izgladnjivanje nekih zahtjeva. U stvarnom radu
sistema, naime. novi zahtjevi mogu dolaziti u red prilikom posluivanja prethodno
zaprimljenih zahtjeva. Novoprido1i zahtjev moe biti posluen i prije zahtjeva koji dulje
vrijeme eka u redu ako je broj staze vezan uz novi zahtjev blii trenutanoj poziciji glave.
Naprimjer, ako je tijekom posluivanja zahtjeva na stazi 71 u naem primjeru doao novi
zahtjev za stazom 65, zahtjev za stazom 98 privremeno e biti odgoen. U teoriji, stalan
niz zahtjeva na bliim stazama (oko 65) moe neodreeno dugo odgaati posluivanje
udaljenijeg zahtjeva (na stazi 98). Naravno, ova je pojava statistiki malo vjerojatna, ali je
mogua.
2.5.3. Posluivanje pregledavanjemUvaavanje dinamike prirode procesa posluivanja vodi nas do metode pregledavanjem
(eng. Scan). U ovoj metodi glava za itanje pomie se u jednom smjeru i pritom posluuje
sve zahtjeve na ije brojeve staza nailazi. Dolaskom do krajnje staze glava mijenja smjer i
nastavlja s posluivanjem novopridolih zahtjeva. Ova metoda moe znatno poboljati
prosjeno trajanje posluivanja, no takoer je mogua pojava neujednaenih posluivanja:
primjerice, novopridoli zahtjev ija se staza nalazi neposredno ispred glave za itanje bit
e posluen gotovo trenutano, dok e zahtjev koji pristigne neposredno iza glave za
itanje morati ekati promjenu smjera i ponovni dolazak do traene staze. Potrebno je
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 17 ~
napomenuti kako se u stvarnosti kretanje glave obino ne izvodi tako da se glava kree do
rubne staze diska, ve se smjer kretanja mijenja ako ispred trenutane pozicije glave ne
postoje novi neposlueni zahtjevi (sa stazama koje se nalaze ispred glave u trenutanom
smjeru). U tom sluaju govorimo o LOOK metodi posluivanja.
Ako se koristi metoda pregledavanja te ako se u poetnom trenutku glava za itanje kree
prema stazama s veim brojem. tijek posluivanja zahtjeva iz primjera 3., izgleda kako
slijedi (isprekidanom linijom prikazan je dodatni pomak glave za Scan metodu) :
Slika 7. Posluivanje pregledavanjem
2.5.4. Posluivanje krunim pregledavanjemInaica metode pregledavanje kojom se postie ujednaenije trajanje posluivanja naziva
se kruno pregledavanje (eng.circular Scan, C-Scan). U ovoj metodi zahtjevi se takoer
posluuju onim redom kako se glava pomie po stazama u zadanom smjeru, no prilikom
dolaska do krajnje staze, glava za itanje pomie se ponovno na poetnu stazu i
posluivanje se nastavlja istim zadanim smjerom kao u prethodnom prolazu. Treba
naglasiti da se vraanje glave na poetni poloaj obavlja mnogo veom brzinom te je
utroak vremena za povratak glave zanemariv. U praktinim se ostvarenjima takoer glava
ne kree do rubne staze diska ve samo do posljednjeg neposluenog zahtjeva u zadanom
smjeru i u tom sluaju govorimo o C-LOOK metodi. Tijek posluivanja zahtjeva iz
primjera 3. ovom metodom prikazan je na sljedeoj slici (isprekidanom linijom prikazan je
dodatni pomak za C-Scan metodu) :
Slika 8. Posluivanje krunim pregledavanjem
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 18 ~
2.5.5. Odabir metode posluivanjaVano je napomenuti da niti jedna od navedenih metoda ne jami optimalni raspored
posluivanja u vezi s najmanjim prijeenim brojem staza (to je priblino proporcionalno
ukupnom trajanju posluivanja) za svaki skup zahtjeva. Mogue je optimalni redoslijedodrediti, no dodatni vremenski troak izraunavanja redoslijeda (i ostvarenja algoritma)
najee nije sumjerljiv moguem poboljanju u odnosu na metodu s najkraim vremenom
premjetanja ili metodu pregledavanja.
Odabir metode posluivanja ovisit e u veini sluajeva o prirodi promatranog sistema i
nainu uporabe datotenog sistema. Uinak pojedine metode ovisi ponajvie o brojnosti i
vrsti zahtjeva u sustavu (primjerice, viekorisniki pristup u posluiteljskom sistemu).
U svakom sluaju, metoda posluivanja zahtjeva ostvaruje se kao posebni modul unutar
operativnog sistema koji se po potrebi moe prilagoditi ili promijeniti.
Dananji diskovni ureaji takoer mogu ukljuivati neku od metoda posluivanja na koju
operativni sistemi ne mora imati utjecaj. U praktinim ostvarenjima broj neposluenih
nzahtjeva na temelju kojih se donosi odluka o redoslijedu esto je ogranien nekom
vrijednou. Primjerice, u redu operativnog sistema za pristup disku trenutano se moe
nalaziti desetak zahtjeva, no metoda posluivanja e odluku o sljedeem zahtjevu d onositi
samo na temelju tri najstarija zahtjeva u redu.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 19 ~
3. DATOTENI SISTEMI WINDOWS OS-A
3.1. FAT File Allocation Table)FAT (File Allocation Table) je prvi datoteni sistem kojegje razvio Microsoft i nastao je1977. te proao kroz niz verzija, neprestano poboljavan. Glavna mana FAT datotenog
sistema je upravo ono toga ini jako rasprostranjenim njegova jednostavnost ili, bolje
reeno, nedovoljna kompleksnost.
Podravaju ga gotovo svi postojei operativni sistemi, a uveo je klastere (grupe od vie
sektora) kao jedinice dodijele memorijskog prostora na disku.
FAT datoteni sistem svaku logiku disk jedinicu dijeli na etiri dijela:
BOOTpodruje na jedinici koje nosi informaciju o samoj jedinici te programski
kd pomou kojeg se moe ostvariti postupak uitavanja operativnog sistema,
FATtablica alokacije datoteketu su upisani lanci alokacije za svaku datoteku
jedinice. Uvijek postoje dvije identine kopije FAT podruja,
ROOTishodini direktorij koji predstavlja bazu za grananje direktorija, a slui i
za upis podataka o datotekama koje su smjetene u tom direktoriju,
FILESpodruje za smjetaj podataka (datoteka i direktorija). Podaci se zapisuju u
alokacijske jedinice pod nazivom klasteri,
Postoje vie vrsta FAT datotenog sistema ovisno o veliini klastera. Tako razlikujemo
FAT8, FAT12, FAT16 i FAT32 datotene sisteme. Budui da su datoteni sistemi FAT8 i
FAT12 imali jako rijetku uporabu, u ovom radu zadrat emo se na FAT16 i FAT32
datotenim sistemima.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 20 ~
3.1.1 FAT16
Poetna verzija razvijena je 1984. godine od strane Microsofta. Za opis klastera adrese su
poveane na 16 bita, to je omuguilo preko 65.000 sektora po opsegu particije, 216=
65536. Samim time se i veliina datotenog sistema znatno poveala, barem u teoriji.Meutim, maksimalni broj sektora i maksimalna veliina particije od 32 MB se nije
mjenjala i stoga ovaj sistem nije bio ono to se danas esto shvaa kao FAT16.
Tek 1987. godine konano je Compaq MS-DOS 3.31 predstavio ono to je danas poznato
kao FAT16 datoteni sistem. Iako su na disku promjene bile neznatne, cijeli disk je morao
biti pretvoren u 32-bitne sektorne brojeve,a taj zadatak je komplicirala injenica da je bio
izgraen u 16-bitnom asemblerskom jeziku. Kod zavrne verzije FAT16 datotenog
sistema, maksimalna veliina particije za klaster od 32 KB iznosila je 2 GB ili 2048 MBkao to je prikazano u tabeli 1.
Tabela 1. Veliina particije u odnosuna veliinu klastera kod FAT16 sistema
FAT16
Veliina particije Veliina klastera
16 MB128 MB 2 KB
do 256 MB 4 KB
do 512 MB 8 KB
do 1024 MB 16 KB
do 2048 MB 32 KB
Prednosti FAT16 datotenog sistema su :
Moe se koristiti na razliitim operativnim sistemima, meu kojima su MS -DOS,
Windows 95, Windows 98, Windows NT, Windows 2000, te neki UNIX.
Postoje mnogi alati dostupni za rjeavanje problema i oporavak podataka.
Ako imamo problem pri samom podizanju sistema, moemo pokrenuti raunalo s
MS-DOS flopy diska.
Ovaj sistem je uinkovit, kako u brzini tako i u skladitenju podataka, ali na
jedinicama manjim od 256 MB.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 21 ~
Nedostaci FAT16 datotenog sistemasu:
Mapa root moe upravljati s maksimalno 512 zapisa. Koritenje dugih imena
datoteka moeznaajno smanjiti broj raspoloivih zapisa.
FAT16 je ograniena na 65.536 klastera, ali zato to su odreene skupine
rezervirane, ima praktinu granicu od 65.524. Svaki klaster je relativno fiksne
veliine u odnosu na logiki pogon. Ako se postigne maksimalan broj klastera i
maksimalna veliina pojedinog klaster od 32 KB tada je veliina diskovnog pogona
ograniena na 4 GB na Windows 2000 OS-u. Za odravanje kompatibilnost s MS-
DOS, Windows 95 i Windows 98, FAT16 particija ne bi trebala biti vea od 2 GB.
BOOT sektor ne sadri kopiju FAT tablice.
Nema ugraeni sigurnosni sistem datoteka.
Kako se veliine klastera poveavaju, FAT16 moe potratiti prostor za pohranu
datoteka u veim pogonima. Prostor namijenjen za pohranu datoteka se temelji na
veliini koju klaster zauzima, a ne na veliine datoteke. Npr. 10 KB datoteke
pohranjene u 32 KB klastera potratit e prostor od 22 KB.
3.1.2. FAT32
S ciljem da se prevazie ogranienje FAT16 datotenog sistemu u pogledu veliine
particije, Microsoft je dizajnirao novu verziju datotenog sistema FAT32, koja je podrala
poveani broj klastera i ponovno upotrebila veinu postojoeg koda od FAT16. Za opis
klastera se koriste 32-bitne adrese, pri emu se u stvarnosti koristi samo prvih 28 bita, a
ostala 4 bita su rezervirana za buduu upotrebu.
S pojavom FAT32 datotenog sistema broj klastera se popeo sa 65.536 na 268.435.455, a
samim time i veliina particije je teoretski porasla na 2 TB ako je u pitanju sektor veliine512 bajta, ili ak 16 TB ako je u pitanju sektor veliine 4 KB. No ovi podaci o veliini
particije ne vrijede mnogo, zato to je Microsoft svojevoljno ograniio veliinu particije na
32 GB, kako bi promovirao novi datoteni sistem nazvan NTFS (New Technology File
System), o kojemu e biti rije u narednompotpoglavlju.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 22 ~
Prednosti FAT32 sistema su :
Root mapa na FAT32 disku je sada obian lanac klastera, tako da se moe nalaziti
bilo gdje na particiji. Iz tog razloga, FAT32 ne ograniava broj zapisa uroot mapu.
FAT32 koristi prostor uinkovitije nego FAT16. FAT32 koristi manje klastere
(veliine 4 KB za diskove do 8 GB), to je rezultiralo u 10 do 15 posto uinkovitije
koritenje prostora na disku u odnosu na velike diskove koje koriste FAT16.
FAT32 takoer smanjuje resurse potrebne za rad raunala.
FAT32 je robusniji od FAT16. FAT32 ima sposobnost da se preseli u root
direktorij i koristi sigurnosnu kopiju FAT tablice. Osim toga, boot zapis na FAT32
diskovima je proiren tako da ukljuuje sigurnosnu kopiju (eng. backup) kritinih
podataka strukture. To znai da FAT32 particije su manje osjetljive na jednu taku
kvara od FAT16 particija.
Brzina, pristup FAT32 diskovima je bri zato to im je struktura mnogo
jednostavnija, ali ovo samo vai za male direktorije.
Puno je lake pristupiti diskovima s boot cd-ovima, s drugog raunala.
Dostupan je na svim Windowsima.
Nedostaci FAT32 sistema su:
Ogranienje datoteke na maksimalnu veliinu od 4 GB.
Nema ugraeni datoteni sistem sigurnosti.
FAT32 nema mehanizme koji bi spremali nove datoteke na klastere koji su jedan
iza drugog i tako ouvali koheziju sustava, nego se FAT tablica promatrala kao
polje koje se italo i tamo gdje je klaster bio prazan dodavao senovi podatak. Tako
se novi podaci mogu pronai raspreni po cijelom disku i pretraivanje i
dohvaanjetakvihpodataka degradira performanse raunala.
Sve u svemu, FAT32 sistem se preporuuje koristiti tamo gdje nije potrebna visoka
pouzdanost i sigurnost tj. gdje raunalo slui uglavnom za zabavu, igranje, ili na USB
stikovima.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 23 ~
3.2. NTFS New Technology File System)NTFS je datoteni sistem koji je predstavljen u Windowsima NT i to 1993. godine od
strane Microsofta (mada je bio poznat puno prije toga). Puno je bolji po aspektima
koritenja diskovnog prostora nego FAT32, nudi veu sigurnost prilikom zapisivanjapodataka kao i od neovlatenog itanja istih. Ugraene metode enkripcije podataka u
suradnji s korisnikom lozinkom daju dodatnu sigurnost. Veina novih raunala ima
formatiran tvrdi disk ba u NTFS formatu. I Windowsi XP koriste ovaj sistem za
zapisivanje kao predodreeni sistem. Dodatna sigurnost se oituje u tome to se zastieni
podaci ne mogu proitati na drugom raunalu s drugom instalacijom Windowsa.
Diskovni prostor dodjeljuje se po skupinama sektora tj. klasterima. Skupine uobiajeno
imaju l, 2, 4 ili 8 sektora. Veliine skupina odreuju se u skladu s veliinom diska.
Uobiajeno je za vee diskove koji su danas preteito u uporabi da veliina skupine bude
4096 B (uz veliinu sektora od 512 B skupina se sastoji od 8 sektora).
VCN
LCN
Slika 9. Smjetanje datoteke u NTFS datotenom sistemu
1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16
17 18
319
420
521 22 23 24
25 26 27 28 29 30 31 32
33 34 35 36 37
138
239 40
41 42 43 44 45 46 47 48
49 50 51
1152
1253
1354
1455
1556
57
658
759
860
961
1062 63 64
VCN LCNBroj
blokova
1 37 2
3 18 3
6 57 5
11 51 5
Dijelovi
promatrane
datoteke
Dijelovi
drugih
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 24 ~
NTFS se referira na disk uporabom logikog broja skupine (eng. Logical Cluster Number -
LCN). LCN je jednostavno reeno redni broj skupine od poetka do kraja diskovnog
prostora predvienog za smjetaj datoteka. NTFS sadri datoteku koja se naziva glavnom
tablicom datoteka (eng. Master File Table - MFT). Svaka datoteka (ukljuujui i MFT
datoteku) ima u toj datoteci jedan zapis koji je opisnik datoteke. MFT je podijeljen u male
sektore, a svaki dio odgovara nekoj datoteci. Prvih 16 zapisa je nedostupno operativnom
sistemu na raunalu i oni se zovumetapodaci (eng. Metafiles). Interesantno je napomenuti
da samo 16 ovih zapisa ima fiksno mjesto na tvrdom disku. Kopija prva tri MFT zapisa se
nalazi tono na sredini diska, to je jako bitno ako se dogode bilo kakvi problemi. Ostali
zapisi se mogu nalaziti na bilo kojoj lokaciji diska.
Metapodaci daju NTFS nainu zapisivanja podataka nevjerojatnu fleksibilnost. Ako u FATdatotenom sistemu doe do pogreke u zapisivanju FAT tablice, disk prestaje s radom. U
sluaju NTFS naina nema takvih problema. U MFT-u se nalazi sve toje potrebno da bi
se uspjeno naao podatak na tvrdom disku, dakle nalazi se njegova pozicija, veliina i
nain rasporedivanja po fragmentima (ako podatak nije stao na jedan klaster). Dakle, mogli
bismo rei da jeMFT opisno mjesto svih ostalih datoteka na raunalu.
Za vee datoteke MFT zapis sadri indekse skupina sektora i ako je potrebno, i dodatno
proirenje zapisa. Datoteka se dijeli na dijelove koji su jednako veliki kao nakupine sektorai nazivaju se virtualnim skupinama. Datoteka je dakle podijeljena na stranice (osim onih
najmanjih koje pohranjene u samom opisniku) koje su jednake veliini "okvira". Redni
broj stranice se naziva virtualni broj klastera (eng. Virtual Cluster Number-VCN) i
predstavlja adresu stranice unutar datoteke.
Za smjetaj datoteka pronalazi se to vie uzastopnih skupina sektora i dodjeljuje datoteci.
U najgorem sluaju, ako uzastopnih sektora nema, dodjeljuju se i pojedinane skupine.
Jedna od pogodnosti NTFS sustava je formatiranje particije s klasterom veliine po elji i
vei broj atributa koji se mogu pridruiti datoteci, ali je najvanija razlika u odnosu na
FAT, to je to NTFS 'journaling' tip datotenog sistema, odnosno ima mogunost
samooporavka po nasilnom iskljuivanju raunala. Zapisi o promjenama tijekom rada
indeksiraju se i popisuju u dnevniku (eng. journal) na osnovu ega se potom promjene
upisuju u datoteke te se sprjeava gubitak podataka i oteenje datotenog sistema.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
2
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 25 ~
3.3 Usporedba FAT16, FAT32 i NTFS datotenih sistema
Tabela 2. Karakteristike FAT16, FAT32 i NTFS datotenih sistema
Svojstvo NTFS FAT32 FAT16
Operativni sistem
Windows NT
Windows 2000
Windows XP
Windows Vista
Windows 7
Windows 98
Windows ME
Windows 2000
Windows XP
Windows Vista
Windows 7
DOS
Sve verzije
Windowsa
Veliina particije 2 TB 2 TB 2 GB
Broj klastera neogranieno 268'435'456 65'536
Datoteka po
particiji
neogranieno 268'435'437 65'517
BOOT sektor prvi i zadnji prvi i esti prvi
Najvea veliina
datoteke
veliina volumena 4 GB priblino 2 GB
Broj znakova u
imenu datoteke
do 255 do 255 standard - 8.3 +
dodatak - do 255
Sigurnost i dozvole da ne ne
Saimanje sadraja da ne ne
Enkripcija
sadraja
da (od v5.0) ne ne
'Taka' reparacije da (od v5.0) ne ne
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 26 ~
3.4. Primjer komparacije. FAT32 vs NTFS
U ovom primjeru emo pokazati to se deava s datotekom koja je u jednom sluaju
pohranjena na medij koji koristi FAT32 datoteni sistem, atou drugom sluajugdje taj
isti medij koristi NTFS. Kao medij koriten je USB stik veliine 2 GB, a za testiranje koritena je datoteka veliine 274 MB ili preciznije 287.688.704 bajtova. Pored ovoga
koriteni su i odgovarajui softverski paketi za testiranje.
Prostor koji je datoteka zauzela na mediju na oba datotena sistema je bio identian i
iznosio je 287.690.752 bajtova. Netomalo vie od izvorne datoteke, ali to je iz razloga
to se pri formatiranju stika u oba datotena sistema koristila veliina klastera od 4KBtako
da je ostao relativno malio dio neiskoritenog prostora.
Slika 10. Veliina datoteke na NTFS i FAT32 datotenom sistemu
Ono to se jo moe vidjet na prethodnoj slici je da NTFS u svojstvima datoteke sadri i
kraticusecurity, uz pomo koje je mogue upravljati datotekom na sigurnosnom nivou, to
ovaj sistem ini pouzdanijim i sigurnijim u odnosu na FAT32 koji ne posjeduje ovu opciju.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 27 ~
Uz pomo softverskog paketa SiSoftware Sandra Lite 2013.SP5 izmjerena je brzina
sluajnog pristupa datotenom sistemu. Kod FAT32 ona iznosi 462s, dok kod NTFS
datotenog sistema ta brzina iznosi 183s pa je vidljivo da FAT32 ima neto sporiji pristup
u odnosu na NTFS.
Pri testiranju oba datotena sistema, koriten je i programski alat Diskbench, uz pomo
kojeg je izmjereno vrijeme koje je potrebno da odgovarajui datoteni sistem proita
datoteku za testiranje, to je prikazano slijedeim grafikonom.
Propusnost podataka pri itanju kod FAT32 datotenog sistema bila je 16,236 MB/s, a za
NTFS je ona iznosila 12,258 MB/s, pa je vidljivo da je NTFS neto sporiju u odnosu na
FAT32 pri itanju datoteke.
Slijedei test je bio kopiranje datoteke s izvornog direktorija na USB stik, to je takoer
testirano uz pomo programa Diskbench.U ovom sluaju NTFS je odnio blagu pobjedu,
kopiravi datoteku veliine 274 MB za 67s gdje je brzina prijenosa podataka iznosila 4,035
MB/s, dok je na FAT32 sistemu to trajalo 73s uz prijenos podataka od 3,749 MB/s.
Rezultati testiranja prikazani su na narednom grafikonu.
FAT32 NTFS
Brzina itanja datoteke u sekundama
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 28 ~
Na osnovu provedenog testiranja moe se zakljuiti da oba datotena sistema u radu s
manjim datotekama imaju jako sline preformanse. U nekim sluajevima, kao to je
recimo itanje datoteke, bolje je koristiti FAT32, dok je za sluajeve zapisivanja datoteke
na medij bolje koristiti NTFS.
Ono to daje ozbiljnu prednostNTFS-u u odnosu na FAT32 je sigurnija pohrana podataka,
te mogunost saimanja i enkripcije sadraja kao i mogunost rada sa datotekama veim
od 4 GB.
FAT32 NTFS
Brzina kopiranja datoteke u sekundama
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 29 ~
4. DATOTENI SISTEMI LINUX OS-A
Daoteni sistemi nastali na Linuxu su zapravo virtualni. Svi direktoriji koji su stvoreni na
raunalu su barem jednu razinu ispod korijenskog direktorija, asami root zapravo uope ne
mora postojati kao fiziki zapis na disku. Takvi datoteni sistemi imaju sposobnost
koritenja mrenih resursa kaokorijenskih direktorija.
Linux modeli datotenog sistema nuno imaju hijerarhijsku strukturu direktorija koja je
definirana neslubenim standardom 'Linux File System Hierarchy Standard' (FSSTDN).
Ovakva struktura za svaki ureaj vee poseban naziv.
Slika 11. Datotena struktura Linux operativnog sistemaPojanjenje pojedinih direktorija:
/ - Oznaka korijenskog imenika, odnosno vrha-ishodita hijerarhijske strukture datotenog
sistema za koji se povezuju svi ostali imenici ili datoteke sistema bilo da pripadaju istoj
particiji na kojoj je ishodite datotenog sistema ili nekoj drugoj koja je za ishodite
zakaena.
rootDirektorij u kojem se uvaju konfiguracijske datoteke administratora sistema. Poto
ovaj imenik ne uzima mnogo podataka i mora biti stalno raspoloiv administratoru, ne
montira se na posebnoj particiji ili neko drugo mjesto ve uz sam korijen stabla datotene
strukture.
bin Ovaj imenik sadri binarne izvrive datoteke raspoloive svim korisnicima koji su
prijavljeni na sistem. To znai da na sistemu moraju imati izraen-otvoren korisniki raun
(eng. account).
boot U ovom direktoriju smjeteni su svi fajlovi neophodni za uspjeno podizanjesistema.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 30 ~
devKako je u Linuxu sve datoteka (pa i ureaji), u ovom su direktoriju smjetene sve
datoteke koje predstavljaju pojedini ureaj tj. dio hardvera.
etcPohrana svih konfiguracijskih datoteka. Preporua se redovito stvaranje sigurnosne
kopije (eng. backup) ovog direktorija.
home Direktorij koji sadri korisnike direktorije. Svaki Linux korisnik dobiva ispod
ovog direktorija svoj vlastiti direktorij u kojemu moezatititi i pohraniti svoje podatke.
libDirektorij u kojemu se nalaze kernel moduli i programske biblioteke (ekstenzija .so)
neophodne za pravilno podizanje sistema i izvravanje pojedinih naredbi/programa iz
direktorija /bin i /sbin.
mntDirektorij za privremeno montiranje drugih datotenih sistema ili ureaja.
procDirektorij s virtualnim datotenim sistemom u kojemu supohranjeni podaci o svim
procesima - naziva se jo i pseudofile system. Moemo ga koristiti kao nadzorni i
informativni punkt za kernel.
sbin Direktorij koji sadri naredbe/programe namjenjene iskljuivo administratoru
sistema.
tmp- Direktorij za pohranu privremenih datoteka.
usrDirektorij u kojemu se nalaze svi korisniki programi (aplikacije) i njima pripadajue
dodatne datoteke.
var Ovaj direktorij sadri promjenjive podatke kao to su log datoteke, mail i print
redovi ekanja, prijelazne i privremenedatoteke.
lost+found Direktorij u kojemu su smjeteni rezultati oporavka datotenog sistema
postignuti naredbom fsck.
Prilikom kreiranja direktorija dobro bi bilo da su bin, lib i sbin na istoj particiji, a
preporuka je da su na toj particiji i root i etc direktoriji.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 31 ~
Podatkovnu strukturu datotenog sistema ine:
superblokovi (eng. superblocks) - sadre podatke o datotenom sistemu u cjelini
(npr. njegovoj veliini),
indeksni vor (eng. inode) - opisnik datoteke i sadri sve podatke o datoteci osim
njenog imena, koje je pohranjeno u direktoriju zajedno s brojem tog inodea. Inode
takoer sadri i brojeve podatkovnihblokova na kojima je pohranjena ta datoteka.
podatkovni blok (eng.data block) - pohrana podataka na disku.
blok direktorija (eng.directory block) - pohrana podataka o direktoriju.
indirektni blokovi (eng. indirection block) - kako inode moe pohraniti svega par
referenci na podatkovni blok, ako je potrebno vie takvih referenci, umjestopodatkovnog bloka navodi se indirektni blok.
Ako se eli itati sa ureaja nekog odreenog naziva prvo se mora obavijestiti operativni
sistem gdje u hijerarhiji direktorija se eli staviti struktura direktorija sa ureaja. Ovaj
postupak se naziva montiranje (eng. mounting). Ako se eli itati sa CD-ROM-a, prvo se
operativnom sistemu poalje poruka gdje e se pojaviti sadraj CD-ROM-a u stablu
direktorija. Ta je poruka ime direktorija i u literaturi se naziva taka montiranja (eng.
mount point). Openito, samo administrator sistema moe odobriti montiranje nekog
datotenog sistema. Ipak, razvijene su i neke metode koje bi trebale olakatimontiranje
korisnicima. To su metode pod skupnim imenom auto-montiranje i podravaju montiranje
ureaja poput flash memorije, CD-ROM-ova, DVD-ova bez ikakve interakcije sa
raunalom u unaprijed odreene take montiranja, montiranje za vrijeme podizanja
operativnog sistema i jo naprednije metode koje omoguavaju uklanjanje ureaja prije
demontiranja koji inaeeksplicitno treba biti zadan od strane korisnika.
Datoteni sistemi koje podrava Linux su 'journaling' tipa (FAT na primjer nije) to znai
da imaju mogunost samooporavka u sluaju naglog iskljuenja raunala, jer su sve
datoteke indeksirane (popisane) u dnevnik, zapisi na posebnom dijelu diska u kojem se
biljee promjene prema potrebi, a potom se upisuje u datoteke ime se sprjeava gubitak
podataka i oteenje samog datotenog sistema. Otpornost na greke poveavaju i
superblokovi, odnosno njegove kopije koje se nalaze na vie mjesta (redundantni blokovi)
na disku.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 32 ~
4.1.Drugi proireni datoteni sistem ext2Ext2 ili drugi proireni datoteni sistem, je datoteni sistem za Linux operativne sisteme.
Poetnu verziju je dizajnirao Rmy Card 1993. godine kao zamjenu za proireni datoteni
sistem (eng. extended file system - ext). Ext2 je bio zadani datoteni sistem na vie Linuxdistribucija, meu kojima su Debian i Red Hat Linux, sve dok ga nije zamijenio novi
datoteni sistem ext3. Ext2 se jo uvijek koristi na flash medijima za pohranu podataka,
kao to su SD kartice i USB stikovi.
4.1.1. Podatkovna strukturaProstor u ovom datotenom sistemu se dijeli na blokove, koji si meusobno opet
podijeljeni u grupe. Obino, na svakom veem datotenom sistemu postoji na tisueblokova. Svaka grupa blokova se sadriod:
blokova
redundantne kopije superblokova
bitmap vorova
Svaka datototeka ili direktorijj su predstavljeni preko indeksnog vora (eng. inode), koji
sadri podatke o veliini, dozvoli, vlasnitvu te mjestu datoteke ili direktorija na disku.
Slika 12. Primjer inode strukture
.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 33 ~
Indeksni vor sadri indeksno dohvatljive pokazivae na nakupine sektora odnosno
klastere. Uz pretpostavku da je sektor velik 1024 B te da pokazivaiimaju 32 bita, u jedan
sektor moe se smjestiti 256 pokazivaa. U indeksnom voru se nalazi 13 pokazivaa, i to:
10 neposrednihpokazivaa,
l jednostruko indirektnipokaziva,
l dvostruko indirektnipokazivai
1 trostruko indirektnipokaziva.
Pristup do datoteke obavlja se na sljedei nain:
prvih deset sektora dohvaa se neposrednimpokazivaima, ime se moe dohvatiti
sve sektore datoteka koje su manje od 10 KB;
jedanaesti pokazivalpokazuje na sektor u kojem se nalazi sljedeih256 pokazivaa
(dovoljno za datoteku veliine do 266 KB);
dvanaesti pokazivapokazuje na sektor u kojem su pokazivaina 256 sektora svaki
s 256 pokazivaa - dovoljno za datoteke manje od (266 + 256 256) KB, to je
priblino 64 MB;
trinaesti pokazivapokazuje na trorazinsko stablo pokazivaa i omoguuje pristup
do ukupno: 10 + 256 + 256 256 +256 256 256, to je dovoljno za datoteke
veliine 16 GB.
4.1.2. Ogranienja i prednosti ext2 datotenog sistemaRazlog za ogranienja u ext2 datotenom sistemu su format podataka kao i jezgra
operativnog sistema. Maksimalni broj poddirektorija je iznosio 31.998. Takoer, mana
ovog sistema je bila to nije podravao indeksiranje imenika, tako da su preformanse zadirektorije sa velikim brojem datoteka dovedene u pitanje.
Ostala ogranienja se ogledajuu veliini blokova te meusobnom omjeru broja blokova i
broja indeksnih vorova, s time da sama veliina blokova ovisi o arhitekturi operativnog
sistema. U narednoj tabeli 3. su prikazana ogranienja koja se odnosu na veliinu datoteke
i veliinu particije, ali u zavisnosti od veliine bloka.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 34 ~
Tabela 3. Teoretska ogranienja na Linuxu
Veliina bloka 1 KB 2 KB 4 KB 8 KB
Maksimalnaveliinadatoteke
16 GB 256 GB 2 TB 2 TB
Veliinaparticije
4 TB 8 TB 16 TB 32 TB
Prednosti ext2 datotenog sistema su:
Ovakva struktura ima za posljedicu smanjivanje vanjske fragamentacije (slobodanprostor) te ubrzava rad sa uzastopnim podacima.
Proireni atribut blokova.
Smanjena blok grupa sigurnosnih kopija.
Smanjen superblok sigurnosne kopije.
Mogua rezervacija blokova za superkorisnika.
4.2. Trei proireni datoteni sistem- ext3Ext3, ili trei proireni datoteni sistem kojeg je implementirao Stephen Tweedie, a na
trite je puten 2001. godine. Ovaj datoteni sistem spada u tzv. journaling datotene
sisteme. Journaling se odnosi na uvanje podataka, odnosno, datoteni sistem zapisuje sve
radnje u dnevnik (eng. journal) koje se vre nad datotenim sistemom te tako prilikom
nepredvienog dogaaja (npr. nestanak struje) podaci nisu izgubljeni.
Ext3 je imao znaajnu prednost to je podravo nadogradnju na sisteme koji su ve koristiliext2 i da pri tome nije bilo potrebno raditi sigurnosnu kopiju i vraanje podataka. Mjerila
pokazuju da ext3 takoer koristi manje procesorske snage nego primjerice datoteni
sistemi kao to su RaiserFS ili XFS. Takoer se smatra sigurnijim od drugih Linux
datotenih sistema, zbog svoje jednostavnosti i ireg ispitivanja baze.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
3
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 35 ~
4.2.1. nevnienje eng. journaling)Postoje tri naina dnevnienja pri Linux implementaciji ext3 datotenog sistema, a to su:
1. Journal. Kod ovog tipa dnevnienja rizik je najmanji. Oba metapodatka i i sadrajdatoteke su zapisani u dnevnik prije nego su koriteni u glavnom datotenom
sistemu. Budui da je dnevnik relativno kontinuirano rasporeen po disku, to
znatno poboljava preformanse, ali samo ukoliko dnevnik ima dovoljno prostora na
disku. U drugom sluaju, podaci se moraju zapisivati dva puta, jednom u dnevnik, a
jednom u glavni dio datotenog sistema pa se samim time i preformanse
pogoravaju.
2. Ordered. Dnevnienje srednjeg rizika Kod ovog naina dnevnienja samo semetapodaci zapisuju u dnevnik, dok se sadraj datoteke zapisuje na disk prije nego
to se zahtjevani metapodatak smjesti u dnevnik. Ako doe do nestanka struje za
vrijeme pisanja ili dodavanja nove datoteke, dnevnik e ukazati da se nova datoteka
ili podatak nisu dogodili, tako da e biti oieni od strane procesa (takvo
dodavanje nove datoteke ima istu razinu zatite ispravnosti podataka kao i na
jorunal tipu dnevnienja). Meutim, datoteka koja je prebrisana moe biti
oteenja zato to se izvorna verzija datoteke ne pohranjuje. Na taj nain je mogue
zavriti sa datotekom izmeu novog i starog stanja, bez dovoljno informacija za
vraanje ili jednog ili drugog (novi podatak nikad nije bio zapisan na disku u
potpunosti, a stari se ne pohranjuje nigdje).
3. Writeback. Dnevnienje visokog rizika. Takoer i ovdje se samo metapodaci
zapisuju u dnevnik, dok sadraj datoteke moe biti zapisan prije ili poslije nego li
se dnevnik aurira. Kao rezultat toga, datoteka se izmjenjuje prije nego li doe do
nepredvienog dogaaja koji moe uzrokovati oteenje. Naprimjer, datoteka koja
se prilae moe biti oznaena u dnevniku kao vea nego to zaista jeste,
uzrokovajui na kraju zatrpavanje beskorisnim prostorom.
U sva tri sluaja, unutarnja struktura je graena da ostane doslijedna prilikom
nepredvienih dogaaja. Vano je naglasiti, da samo podaci i sadraji datoteka kao i
direktoriji, koji su bili izmjenjeni nakon to se sistemruio, e biti pogoeni, aostatak e
biti netaknut nakon oporavka.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 36 ~
4.2.2. Ogranienja i prednosti ext3 datotenog sistemaMaksimalni broj blokova je 232to je poboljanje u odnosu na drugi proireni datoteni
sistem. Sama veliina bloka moe varirati, imaju pri tome utjecaj na maksimalni broj
datoteka i maksimalnu veliinu datotenog sistema. Na Linuxu veliina bloka od 8 KB je
samo dostupna na arhitekturama koje dozvoljavaju veliinu stranice od 8 KB, kao to je
Alpha (64 - bitna RISC arhitektura).
Tabela 4. Ogranienja u odnosu na veliinu bloka
Veliina bloka Maksimalna veliinadatoteke
Maksimalna veliinaparticije
1 KB 16 GB 2 TB
2 KB 256 GB 8 TB
4 KB 2 TB 16 TB
8 KB 2 TB 32 TB
Nedostaci ext3 datotenog sistema su :
Ne postoji alat za online defragmentaciju.
Ext3 ne podrava oporavak izbisanih datoteka.
Nema sposobnost brzog hvatanja snimki (eng.snapshots) datotenog sistema u bilo
kojem trenutku.
Ne postoji zatitna provjera (eng.checksumming) kod dnevnienja.
Prednosti ext3 datotenog sistema:
Proireni atribut bloka i veliki inodes
Online rezervacija veliine datotenog sistema
Hash-indeksirani direktoriji
Dnevnik za oporavak
Smanjena blok grupa sigurnosnih kopija
Smanjenje superblok sigurnosne kopije
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 37 ~
4.3. etvrti proireni datoteni sistem ext4Ext4 je Linux datoteni sistem, nastao kao nasljednik za ext3. Prvo stabilno izdanje nastalo
je 2008., a razvojna inaica predstavljena je 2006. godine. Zapravo, ext4 je uzeo veinu
stvari od postojeeg ext3, pretrpjevi odreene izmjene. I ovaj sistem ima mogunostdnevnienja, a sam kod ima sposobnost montiranja i koritenja datotenog sistema bez
dnevnika.
4.3.1. Znaajke Velik datoteni sistem, tj. ext4 omuguava veliinu particije i do 1 EB, te datoteke
s veliinom do 16 TB.
Opsezi (eng. extents), koji slue kao zamjena prema tradicionalnoj shemi
modificiranja blokova koje koriste ext2/3 sistemi. Extents je niz fiziki bliskih
blokova koji nisu potpuno popunjeni, u kojima su prazni dijelovi iskoriteni za
pohranu podataka. Rije je o namjernoj fragmentaciji podataka na fiziki bliske
blokove u kojima se nisu iskoristili svi sektori. Normalno bi se u blokovima
pojavila prazna i neiskoritena mjesta koja sama za sebe nisu vea od par bajta, ali
koji na velikim diskovima generiraju 100 megabajta ili gigabajte gubitaka. Extents
dakle poveava efikasnost pohrane podataka.
Ext4 je unatrag kompatibilan sa ext2 i ext3 datotenim sistemima , te se isti mogu
montirati kao ext4. Montiranje ext4 kao ext3 particije je mogue ako nije
omoguen extents.
Pred-alokacija. Ext4 moe alocirati prostor za neku datoteku unaprijed koristei
kernel poziv fallocate(). Prostor dobiven unaprijed ovom metodom je garantiran i
najvjerojatnije e biti u jednom komadu (nee biti fragmentacije na vie dijelova).
Odgoena alokacija. Rije je o alokaciji blokova za pohranu podataka tek u
trenutku kada se blokovi trebaju zapisati, umjesto o alociranju unaprijed. Ovo
smanjuje fragmentaciju jer poboljava alokaciju prostora bazirano na tonoj
veliini podataka.
Poveanje poddirektorija na brojku od 64.000. Kod ext3 datotenog sistema ova
brojka je bila ograniena na 32.000.
Ext4 koristi zatitnu provjeru (eng. checksumming) kod dnevnienja.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 38 ~
Multiblok alokacija. Kada ext3 dodaje datoteku, on poziva alokatora blokova, i to
jednom za svaki blok. Prema tome, ako imamo vie zapisivanja istovremeno,
datoteka se moe fragmentirati na disku. Meutim ext4 koristi odgoenu alokaciju,
koja omoguava meuspremniku podataka da alocira grupe blokova. Prema tome,
muliblok alokacija moe napravit bolji izbor o rasporeivanju datoteke
Poboljani vremenski zapisi (eng. timestamps). Ovo se odnosi na vrijeme u kojem
je neki dogaaj snimljen na raunalu. Ext4 daje vremenske oznake izmjerene ak u
nanosekundi.
Ubrzana fsck provjera. Nealocirane grupe blokova su i oznaene kao takve, te ih
fsck ne kontrolira tijekom provjere to znatno ubrzava vrijeme provjeravanja ext4
datotenih sistema.
4.4. XFSXFS je dnevniki datoteni sistem visokih performansi kojeg je stvorio Silicon Graphics za
svoj IRIX operativni sistem, a koji je kasnije portan za Linux. XFS je izrazito dobar u
baratanju sa velikim datotekama i osiguranju laminarnog transfera podataka.
4.4.1. Specifikacije Kapacitet. XFS je 64-bitni datoteni sistem. Podrava datotene sisteme do 8
exabajta minus 1 bajt, no ovo je subjekt limita operativnog sistema na kojem se
nalazi. Na 32 bitnim Linuxima, ovaj limit je 16 terabajta.
Dnevnienje. Dnevnik je mehanizam koji garantira konzistentnost sustava unato
moguim prekidima u napajanju ili padu sistema. XFS osigurava dnevnik za
sistemske meta-podatke, gdje su sistemske nadogradnje prvo zapisane u serijski
dnevnik prije nego to se stvarni blokovi osvjee. Dnevnik je "kruni"meuspremnik disk blokova kojeg se normalno nikada ne ita u normalnim
datotenim operacijama. XFS dnevnik je ogranien maksimalnom veliinom
blokova od 64KB do 128 MB, gdje najmanja veliina ovisi o kalkulaciji veliine
bloka i direktorija. Dnevnik se moe staviti i na odvojeni ureaj ili ga se moe
drati unutar datotenog sistema. Dnevnik na XFS-u sadri "logike" unose koji
opisuju na razini vie apstrakcije koje se operacije trebaju izvriti, za razliku od
uobiajenog naina gdje se dre kopije blokova modificirane u svakoj transakciji.Dnevnik se nadopunjuje asinkrono kako bi se izbjeglo smanjenje performansi. U
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 39 ~
sluaju pada sistema, operacije odmah prije pada se mogu izvriti tijekom oporavka
prilikom ponovnog pokretanja koristei dnevnik (to osigurava konzistentnost XFS
datotenog sistema). Oporavci i duljina popravaka nemaju korelacijju sa veliinom
diska. XFS zapisuje nule na sve blokove koji nisu zapisani tijekom ponovnog
pokretanja kako bi se izbjegle sigurnosne rupe na rezidualnim podacima.
Alokacijske grupe. XFS datoteni sistem je interno particioniran u alokacijske
grupe, koje su jednako velike linearne regije unutar datotenog sistema. Datoteke i
direktoriji mogu biti preko vie alokacijskih grupa. Svaka alokacijska grupa
obrauje svoje inode i slobodni prostor, to omoguuje skalabilnost i paralelizam
viestruki threadovi i procesi mogu vriti paralelne operacije I/O u isto vrijeme.
Ova arhitektura pomae optimizaciji paralelnih I/O na vieprocesorskim sistemima(meta-podatci su isto subjekt paralelizacije).
Extent bazirana alokacija. Blokovi koji se zapisuju na XFS se obrauju extentima
prilagodljive duljine, gdje su ekstenti opisani blokovima u fizikom nizu. Ovo bitno
skrauje liste koje opisuju blokove, ako se usporedi sa datotenim sistemima koji
zapisuju svaki individualni blok koji opisuje datoteku. XFS obrauje prostornu
alokaciju pomou extent baziranih struktura koje koriste par B+ stabla (eng. B+
tree) za svaku datotenu alokacijsku grupu. Jedan od B+ stabala se indeksira
duljinom slobodnih extenta, dok se drugi indeksira poetnim blokom slobodnih
extenta. Ova dualna shema indeksiranja stvara visokoefikasnu alokaciju slobodnih
extenta.
Direktni I/O. Aplikacijama kojima treba velika propusnost XFS osigurava direktni
I/O podataka koji nisu u meuspremniku prema korisnikom prostoru. Podatci se
prenose izmeu aplikacijskog meuspremnika i diska koristei direktni pristup
memoriji (eng. Direct Memory Access-DMA) koji omoguuje pristup punoj I/O
vezi izmeu ureaja.
Garantirana razina I/O. XFS-ov garantirani I/O sistem ima suelje za programiranje
aplikacija koje dozvoljava aplikacijama da rezerviraju odreenu propusnost
podataka. XFS dinamiki izrauna performanse na konkretnom ureaju i rezervira
traeni protok podataka za specifizirano vrijeme. Garancije mogu biti "tvrde" ili
"meke" prezentirajui razliku izmeu pouzdanosti i performansi, iako e XFSdozvoliti jedino "tvrde" garancije ako ga konkretni ureaj na kojem se nalazi
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 40 ~
podrava. Ova se funkcija koristi za aplikacije koje trebaju protonost u stvarnom
vremenu poput video streaminga.
Online defragmentacija. Iako zbog koritenja extenta i odgoene alokacije XFS ima
veoma visoku otpornost prema fragmentaciji, postoji alat XFS_FSR (eng. xfs
filesystem reorganizer) koji moe defragmentirati montirani datoteni sistem.
Ugraeni backup/restore.Postoje alati XFSDUMP i XFSRESTORE koji slue za
stvaranje i vraanje backupa podataka na XFS datotenom sistemu. XFSDUMP
radi rezervnu kopiju u inodnom poretku i za razliku od klasinog UNIX naina gdje
se za dump mora demontirati particija, XFSDUMP moe napraviti kopiju na
montiranom disku. Ovo je razliito od snapshota jer se ne treba smrznuti sav I/O.
XFSDUMP je takoer prilagoen vieprocesorskim/jezgrenim raunalima kao i
mogunost slanja dumpa na vie lokacija odjednom to radikalno poveava brzinu i
protok. Slanje na vie lokacija nije za sada podrano na Linux
Disk kvote. Kvote su na XFS datotenim sistemima ukljuene kada se disk montira
to popravlja situaciju kod veine ostalih sistema gdjese prvo montira particija, a
onda se poziva quotation() to stvara jednu sigurnosnu rupu.
4.5. JFSJFS (eng. Journaled File System) se prvi put pojavio u AIX (eng. Advanced Interactive
eXecutive) verziji 3.1 u februaru 1990. godine. Taj datoteni sistem, koji se sada zove JFS1
na AIX-u, je bio najbolji izbor datotenog sistema za AIX kroz itavo desetljee i
instaliran je na mnoga raunala koje je pogonio AIX. Povijesno, JFS1 je veoma povezan sa
memorijskim kontrolerom AIX-a. Ovaj dizajn je tipian za datoteni sistem na
operativnom sistemu zatvorenog koda, ili za datoteni sistem koji je podran od samo
jednog operativnog sistema. JFS je 64-bitni dnevniki datoteni sistem dostupan pod GNUlicencom. Postoje verzije za AIX, eComStation, OS/2 i Linux operativni sistem. AIX
operativni sistem ima dvije verzije JFS-a, JFS1 i JFS2, no na ostalim operativnim
sistemima, ukljuujui Linux, postoji samo verzija JFS2 koja se jednostavno zove samo
JFS. Ovo se ne bi trebalo pobrkati sa JFS na AIX-u koji se eksplicitno zove JFS1.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 41 ~
4.5.1. ZnaajkeJFS sadrava slijedee znaajke:
Dnevnik. JFS je dnevniki datoteni sistem. Umjesto da je dnevnika funkcija
dodana kao dodatak poput onog u ext3, u JFS-u je implementirana od poetka.
Dnevnik moe biti veliine do 128 megabajta. JFS dri dnevnik samo o meta -
podacima, to znai da e meta-podaci biti konzistentni ali e samo podaci biti
oteeni nakon problema. JFS ima slian dnevnik XFS-ovom gdje se dri dnevnik
samo jednog dijela indeksnog vora.
B + stablo. JFS koristi B+ stablo (eng. B+ tree) za akceleraciju traenja datoteka i
direktorija. JFS moe pohraniti 8 podataka o direktoriju u direktorijski inode prije
prebacivanja u B+ stablo. JFS takoer indeksira extente u B+ stablu.
Dinamika alokacija inodea. JFS dinamiki alocira prostor za inode po potrebi.
Svaki inode je veliine512 bajta. U 16 KB opsega alocirana su 32 inodea.
Opsezi. JFS alocira datoteke kao opsege (eng. extents). Extent moe biti lociran u
nekoliko alokacijskih grupa. Extenti su indeksirani u B+ stablu za bolje
performanse kada se lociraju extentove pozicije.
Kompresija. Kompresija je podrana jedino na AIX-u na JFS1 verziji koristei tzv.
Lempel-Ziv algoritam. Zbog visokog CPU-a zahtjeva, kompresija se ne preporua
na viekorisniki raunalima ili samo za svrhe izvanmrene sigurnosne kopije..
Istodobni I/O. JFS normalno primjenjuje dijeljeno itanje, ekskluzivno pisanje nad
datotekama, to sprijeava nekonzistentnost podataka, ali to zahtijeva serijalizaciju
zapisa na razini datoteke. I/O opcija ovo onemoguuje, to je jako zgodno u
relacijskim bazama koje same vre kontrolu i ovo bi samo usporavalo.
Alokacijske grupe (AG). JFS koristi alokacijske grupe. Alokacijske grupe dijele
sveukupni prosotr u komadie. Ovo omoguuje JFS-u koritenje mehanizme
alokacije resursa za postizanje visokih I/O performansi. Prvi mehanizam jepokuaj
skupljanja blokova i inoda u istu alokacijsku grupu. Drugi mehanizam je stavljanje
nepovezanih podataka u istu alokacijsku grupu. Kada se datoteka otvori JFS
zakljua alokacijsku grupu u kojem je datoteka i dozvoli rast samo toj datoteci. Ovo
smanjuje fragmentaciju jer samo otvorene datoteke mogu pisati u AG.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 42 ~
4.6. JFFSJFFS (eng. Journaled Flash File System) je dnevniki datoteni sistem zaflash memorijske
ureaje koji koriste Linux kao operativni sistem. Predstavlja datoteni sistem kod kojega se
meta-podaci zapisuju u kruni meuspremnik.
4.6.1. itanje i pisanje podataka na flash memorijiFlash memorija mora biti izbrisana prije samog pisanja. Proces brisanja ima nekoliko
ogranienja:
1. Brisanje je vrlo sporo (obino oko 1-100 ms po brisanju bloka, to je ak 103-105
puta sporije od samog itanja podataka).
2. Mogue je izbrisati flash memoriju samo u velikim segmentima (obino 64 KB i
vie),dok se iz nje moe itati i zapisivati u mnogo manjim blokovima koji su esto
veliine 512 bajtova.
3. Brisanje flash memorije je ogranieno (obino na 103-106 puta).
Ovakav dizajn flash memorije predstavlja veliku asimetriju izmeu itanja i pisanja
podataka na disk, to nije sluaj sa magnetskim diskovima kod kojih je brzina itanja i
zapisivanja gotovo uvijek identina, i kod kojih ne postoji ogranienje koliko e putapodaci biti zapisani ili obrisani na disku.
Tradicionalni datoteni sistemi,kao to su ext2 ili FAT koji su dizajnirani za upotrebu na
magnetskim diskovima obino auriraju svoju podatkvnu strukturu trenutano, i to sa
strukturom kao to je inode, gdje su direktoriji aurirani na disku nakon svake izmjene.
Meutim, svaka izmjena na flash memoriji izaziva odreeno troenje memorije tako da
tradicionalni datoteni sistemi nisu pogodni za itanje izapisivanje na flash ureajima.
JFFS potiskuje troenje memorije tako to flash ureaj tretira kao kruni zapisnik. Sve
promjene na datotekama i direktorijima su zapisane na zaelju zapisnika u indeksnom
voru. U svakom voru, zaglavlja koja sadre meta-podatke su zapisana prva, potom
slijede datoteke, ako ih ima. vorovi su povezani zajedno sa pokazivaima u zaglavlju.
Slobodan prostor u datotenom sisitemuje meuprostor izmeu zaelja indeksnog vora i
njegova zaglavlja. Kada ponestane slobodnog prostora onda na snagu stupa automatsko
upravljanje memorije tzv. skuplja smea (eng. garbage collector) koji kopira valjane
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 43 ~
vorove od zaglavlja do zaelja i preskae one vorove koji se vie ne koriste od strane
datotenog sistema te tako se vri povrat slobodnog prostora.
Nedostaci JFFS-a su :
Za vrijeme montiranja, upravljaki program datotenog sistema mora proitati itav
inode, a zatim ga zadrati u memoriji, to moe biti vrlo sporo.
Potronja memorije je proporcionalna broju datoteka u datotenom sistemu.
Dizajn krunog zapisnika znai da su svi podaci u datotenom sistemu prepisani,
bez obzira na to da li je sistem statian ili ne. To stvara mnoge nepotrebne cikluse
brisanja i smanjuje ivotni vijek flash medija.
4.7. Reiser3Raiser3 ili jo esto nazivan ReiserFS je datoteni sistem opte namjene, dizajniran i
implementiran od strane programerske tvrtke Nemesys koja je predvoena Hansom Reiser.
Puten je na trite 2001. godine. Trenutno je podran na Linux operativnom sistemu.
Predstavljen je u 2.4.1 verziji jezgre Linux OS-a i bio je to prvi dnevniki datoteni sistem
koji je ukljuen u standardnu jezgru.
Nemesys smatra Reiser3 stabilnim i upotpunjenim sistemom sa svim odgovarajuim
znaajkama, s izuzetkom sigurnosnih auriranja i kritinih bagova. Na uklanjanju ovih
nedostataka te samom razvoju se odustalo iz razloga to su se programeri odluili prijei na
njegovog nasljednika Reiser4.
4.7.1. Znaajke i nedostaciReiser3 podrava dnevnienje meta-podataka. Ako doe do nepredvienog dogaaja
dnevnik se moe koristiti za ponovno stvaranje transkacija. Kada je datoteni sistem
montiran i prethodna greka detektirana, obnova podataka u dnevniku je automatska.
Kada je prostor na disku prenizak, mogue je obaviti online promjenu veliine s ciljem
poveanja slobodnog prostorana disku. Dodatni prostor se kreira tako to se koriste
neiskoritene particije na drugim diskovima. Da bismo smanjili veliinu, to se postie
uklanjanjem tvrdog diska iz skupa, a samo smanjenje treba biti uinjeno dok je disk u
izvanmrenom pogonu.
Stranje pakiranje (eng. tail packing) je jedna od prednosti kako bi se rijeio problemizgubljenog prostora. Budui da se podaci pohranju u blokovima i to najee uveliinama
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 44 ~
od 4 KB, tada jedna datoteka od 1 KB e zauzeti itav blok, pri emu imamo 3 KB
izgubljenog prostora. Stranje pakiranje je sposobnost da se krajevi datoteka, koje su
premale, mogu kombinirati sa drugim krajevima te tako omoguiti bolje ispunjavanje
blokova. Blokovi sa krajevima datoteka se ne mogu u potpunosti ispuniti, ali se ipak moe
dosta utedjeti na prostoru.
Za poboljane preformanse, liste direktorija, metapodaci, liste indeksnih vorova kao i
lokacije za stranje pakiranje su pohranjenje u jednom B+ stablu, koje omoguava ubrzano
traenje podataka i direktorija.
Nedostaci Reiser3 datotenog sistema su:
S vremenom dolazi do jake fragmentacije.
Loa manipulacija s prekinutim datotekama (eng. sparse files).
Loi popratni alati.
Ukoliko dooe do naruavanja unutarnjeg B+ stabla, jako je nepouzdan proces
obnavljanja istog, jer moe izazvati oteenja postojeih datoteka ili uvesti nove
unose sa neoekivanim sadrajem.
Koritenje ovog datotenog sistema se ne preporua u produkciji.
-
5/24/2018 Datote ni Sistemi Windows i Linux Os-A.final Ver
4
Diplomski rad: Datoteni sistemi Windows i Linux operativnih sistema
~ 45 ~
5. Zakljuak
Optenito govorei, jasno je da se bez posredstva datotenog sistema ne moe neto
spremiti na disk, a samim time i pristupiti podacima. Stoga je datoteni sistem jedan od
kljunih elemenata kojega je potrebno implementirati pri arhitekturi operativnog sistema.
Gledajui razvoj Windows datotenih sistema oito je da su imali svoju historiju i
prvobitnu namjenu koja je diktirala njihov ustroj. Iz ovog rada moe se zakljuiti da je
Windows OS imao mali broj podranih datotenih sistema.Ono to je bilo zajedniko svim
datotenim sistemima je da su bili jako rasprostranjeni i vrlo jednostavne strukture.
Posljedni od njih je bio NTFS, koji je i dan danas jako koriten i posjeduje velik broj
mogunosti.Nakon njega bilo je raznih pokuajaza razvijanje novih datotenih sistema, ali
su oni uglavnom propadali, zbog nerealnih zahtjeva i oekivanja timova koji su na njemu
radili. Meutim,