Systemy plików na przykładzie FAT32 i NTFS

background image

Systemy plików na przykªadzie FAT32 i NTFS

I - Poj¦cie pliku

Zanim przejd¦ do omawiania systemów plików, przedstawi¦ pokrócce

samo poj¦cie pliku. W dzisiejszych czasach informacje mog¡ by¢ przechowywane

na wielu ró»nych no±nikach, w zale»no±ci od systemu komputerowego. W

zwi¡zku z tym system operacyjny zapewnia jednolity logiczny obraz infor-

macji bez wzgledu na sprzet. Ten obraz to wlasnie plik. Jest on zapisy-

wany za pomoca jakiegos odwzorowania zaleznego od rodzaju systemu i

rodzaju sprzetu. W systemach operacyjnych nie ma innej mozliwosci za-

pisania informacji (trwale) niz w pliku, jest on wi¦c najmniejsz¡ dost¦pn¡

jednostk¡ zapisywania informacji. Ogólnie plik jest ci¡giem bitów/bajtów o

ró»nym zale»nym od zastosowania znaczeniu. Dost¦p do pliku zale»y od jego

rodzaju. Omówi¦ pokrótce podstawowe cechy plików, które maj¡ znaczenie

przy omawianiu systemów plików:

a)atrybuty plików

Sªu»¡ one gªównie wygodzie u»ytkowników oraz ochronie zasobów. Panuje

tutaj bardzo du»e zró»nicowanie i jest bardzo du»e pole dla inwencji projek-

tuj¡cego system, najpopularniejsze pomysªy to(podaje nazwy angielskie):

Name : jest przechowywana w postaci czytelnej dla czªowieka i sªu»y

oczywi±cie indenty kacji pliku przez u»ytkowników

Protection : czyli kto ma jaki dost¦p do pliku

Size : wielko±¢ pliku

Password : czyli hasªa potrzebne by uzyska¢ dost¦p do pliku, sªu»y to

ochronie, system oparty na hasªach ma jednak t¦ wad¦, »e u»ytkownicy

musz¡ je pami¦ta¢

Type : niektóre systemy rozró»niaj¡ typ pliku i na przyklad (windows)

kojarz¡ z ka»dym typem inne akcje systemowe

ID : informacje uzupeªniaj¡ce o pliku, najcz¦stsze to: czas utworzenia,

czas ostatniej modykacji czas ostatniego otwarcia (bez modykacji)

Creator : ID u»ytkownika, który utworzyª plik

Read only : wª¡czony oznacza, »e pliku nie mo»na zmieni¢

Hidden : plik ukryty

System : plik systemowy

Archive : plik do archiwizacji

background image

Temporary : plik tymczasowy

Lock : blokada dost¦pu

Maximal size : najwi¦kszy rozmiar, jaki mo»e przyj¡¢ plik

Oczywi±cie w ró»nych systemach plików wyst¦puje du»o wi¦cej ró»nych

atrybutów.

II - Podstawowe operacje na plikach

Przed przyst¡pieniem do omówienia konkretnych systemów plików, warto

zapozna¢ si¦ z podstawowymi operacjami jakich dostarcza nam system plików.

Niektóre systemy dostarczaj¡ bardzo bogaty wachlarz operacji, tutaj wymieni¦

tylko podstawowe wraz z krótkim opisem zada« systemu przy ich realizowa-

niu:

Tworzenie pliku : system musi znale¹¢ miejsce na ten plik oraz

wpisa¢ plik do katalogu, nowo utworzony plik jest pusty, przy tworzeniu

u»ytkownik podaje atrybuty pliku lub system ustawia je na domy±lne

Usuwanie pliku : system usuwa wpis pliku do katalogu oraz zaznacza

obszar na dysku zajmowany dotychczas przez ten plik jako wolny, ist-

nieje te» wersja tej funkcji, która ¢zy±ci"miejsce po pliku a nie tylko za-

znacza obszar jako wolny, jest jednak du»o mniej praktyczna do codzi-

ennych zastosowa« (czas dziaªania)

Otwieranie pliku : w celu wykonania niektórych operacji na pliku

system wymaga jego otwarcia, niektóre systemy robi¡ to domy±lnie

przy pierwszym odwoªaniu do pliku, inne wymagaj¡ od programisty

jawnego zarz¡dania otwarcia pliku (wywoªania funkcji open); po ot-

warciu informacja o pliku jest przekazywana do tablicy aktualnie ot-

wartych plików, procesy z niego korzystaj¡ce dostaj¡ gotowy wska¹nik

z tej tablicy, co zapobiega ci¡gªemu przeszukiwaniu katalogów

Zamykanie pliku : funkcja, która usuwa informacje o pliku z tablicy

otwartych plików

Pisanie do pliku : zapisywanie nowych informacji do pliku, odbywa

si¦ ono w miejscu na które pokazuje wska¹nik pisania do pliku nieza-

le»nie od tego czy nie spowoduje to utraty wcze±niej zapisanych danych

Czytanie pliku : równie» rozpoczyna si¦ od miejsca, na które pokazuje

wska¹nik w pliku, przesyªanie informacji z pliku do pami¦ci

background image

dopisywanie do pliku (append) : czyli pisanie na ko«cu pliku, ta

funkcja przydaje si¦ na przykªad gdy chcemy, »eby u»ytkownicy mogli

dopisywa¢ informacje do pliku ale »eby nie mogli ich kasowa¢ (przykªad

: lista obecno±ci)

Skracanie pliku (truncate) : usuni¦cie cz¦±ci lub wszystkich infor-

macji z pliku bez usuwania jego atrybutów

Przeszukiwanie (seek) : przesuni¦cie wska¹nika w pliku na jak¡±

pozycj¦ (miejsca od którego system pisze i czyta plik)

Ustawienie atrybutów pliku : czyli ustalenie mo»liwych atrybutów

w pliku

Zmiana nazwy : Zmienia nazw¦ istniej¡cego pliku

Nie wszystkie te operacje wyst¦puj¡ we wszystkich systemach plików.

Wymienione powy»ej s¡ jednak standardowe. Ciekawy problem zwi¡zany

z otwieraniem plików ma miejsce w systemach, gdzie z jednego pliku mo»e

naraz korzysta¢ kilka procesów (lub u»ytkowników), jest wtedy potrzebna

wi¦ksza ilo±¢ tablic, w których przechowywane s¡ informacje o kolejnych

zaplanowanych miejscach pisania/czytania pliku (tablice dwupoziomowe)

III - System plikow

System plików, to system który po zainstalowaniu na dan¡ partycj¦, b¦dzie

potraª zapewni¢ realizowanie podstawowych operacji na plikach jak i ich

sprawne przechowywanie i zarz¡dzanie nimi

V Fat16/32

Jest to najbardziej popularny dzisiaj system plików. FAT = File Alloca-

tion Table FAT32 jest now¡ wersj¡ systemy FAT16 i nie ró»ni si¦ od niego

w znaczny sposób, podstawowe cechy FAT32 to:

Adresowanie za pomoc¡ 32 bitów (st¡d nazwa)

Obsªuga partycji do 2TB

traktowanie katalogu gªównego w podobny sposób do innych kata-

logów, jest mo»liwo±¢ zmiany jego poªo»enia (w FAT16 miaª on staªem

miejsce)

zwi¦kszenie mozliwych wielko±ci partycji dla danej wielko±ci klastrów

(dalej jest zestawienie)

3-sektorowy boot-rekord (w FAT16 byª to jeden sektor)

background image

mo»liwo±¢ przesyªania danych do pliku swap podczas bezczynno±ci sys-

temu.

Partycja FAT32 skªada si¦ z 4 regionów:

region zarezerwowany (z boot-sektorem)

tablica alokacji plików

katalog gªówny

region danych

a)boot sektor:

W boot sektorze znajduj¡ si¦ podstawe informacje, przy pomocy których

mo»na m.in. policzy¢ wielko±¢ pozostaªych regionów. Zestawienie danych w

boot sektorze dla systemu FAT 32 wygl¡da tak:

Nazwa pola

Oset

Rozmiar

Opis

Kod

0000h

3

JMP 0x80h

OS Name

0003h

8

Oem ID

Bios PmB

000Bh

2

Wielko±¢ sektorów w bajtach

000Dh

1

Rozmiar jednostki alokacji

000Eh

2

Liczba sektorów zarezerwowanych

0010h

1

Liczba kopii tablicy FAT

0011h

4

Nie u»ywana w FAT32

0015h

1

Identykator nosnika

0016h

2

Nie u»ywana w FAT32

0018h

2

Liczba sektorów na ±cie»ce

001Ah

2

Liczba gªowic na dysku

001Ch

4

Odlegªo±¢ do pierwszej FAT

0020h

4

Caªkowita liczba sektorów na dysku

0024h

4

Ilo±c sektorów przypadaj¡ce na FAT

0028h

2

FAT handlings ags

002Ah

2

Wersja Fat32

002Ch

4

Numer pierwszego klastra kat. gª.

0030h

2

Odlegªo±c do sektora inf.

0032h

2

Odlegªo±c do kopii boot sektora

0034h

12

Zarezerwowane

Ext. B PmB

0040h

1

Numer no±nika

0041h

1

Obecna gªowica

0042h

1

Sygnatura

0043h

4

Losowa liczba (!?)

background image

0047h

11

Etykieta partycji

0052h

8

System ID

Kod

005Ah

420

Wolne

Sig

01FEh

2

Boot sektor sig.

Kilka uwag o powy»szej tabelce:

Odlegªo±¢ to ilo±¢ sektorów od pocz¡tku partycji do danego obiektu

Fat Handligs Flags to warto±ci odpowiedzialne za zmienianie kopii FAT'u

Kod liczba w zale»no±ci od u»ywanego systemu operacyjnego

2)tablica alokacji plików (FAT)

Kolejny obszar partycji zaj¦ty jest przez tablice alokacji plików (FAT),

która przechowywana jest w dwóch egzemplarzach (niestety obok siebie).

Tablica ta skªada si¦ z indeksów, których numer odpowiada kolejnym "klas-

trom¢zyli najmniejszym adresowalnym w FAT jednostkom na dysku. Jeden

klaster skªada si¦ z kilku sektorów i jego wielko±c zale»y od wielko±ci partycji

(od 2048b do 32768b) W FAT przechowywane s¡ nast¦puj¡ce informacje o

klastrach:

Warto±¢

Opis

0000h

wolny klaster

00000001h - FFFFFFF5h

Numer kolejngego klastra

FFFFFFF6h - FFFFFFF7h

Klaster uszkodzony

FFFFFFFFh

znacznik ko«ca pliku

maksymalna wielko±c FAT wynosi 128kb (ª¡cznie 256kb na dwie kopie)

3)Katalog gªówny

a)wst¦p Przechodz¦ do omówienia gªównej cz¦±ci systemu plików FAT,

jest ni¡ katalog gªówny. Katalog gªówny jest korzeniem drzewa katalogów

(struktura pokrótce omówiona na pocz¡tku tej pracy). W FAT ka»dy plik

identykowany jest za pomoc¡ nazwy i ±cie»ki dost¦pu (kolejnych katalogów,

w których si¦ znajduje).

b)wpis do katalogu Ka»dy wpis ma dªugo±¢ 32bajtów. Katalog gªówny

jest jedynym katalogiem o staªej pozycji (atrybut "VOLUME LABEL").

Kolejne s¡ tworzone przez alokowanie wolnych klastrów. Peªny format wpisu

do katalogu przedstawia tabelka:

Oset

Rozmiar w bajtach

Opis

00h

8

Nazwa zbioru

08h

3

Rozszerzenie

0Bh

1

Atrybut

0Ch

1

Zarezerwowane dla WinNT

background image

0Dh

1

Utworzenie (ms)

0Eh

2

Czas utworzenia

10h

2

Data utworzenia

12h

2

Ostatni dost¦p

14h

2

syst

16h

2

Czas ost. dost¦pu

18h

2

Data ostatniego zapisu

1Ah

2

Dªugo±¢ zbioru

1Ch

4

Dªugo±¢ zbioru

nazwa i rozszerzenie: Pierwszy bajt nazwy ma znaczenie specialne:

Warto±¢ 00h oznacza, »e nie ma dalszych wpisów do katalogu Warto±¢ E5h

oznacza, »e plik zostaª skasowany

Komentarza wymaga pole atrybut, w systemie FAT mamy do dyspozycji

nast¦puj¡ce atrybuty:

Read-Only

Hidden

System

Volume Label

Directory - (odró»nia katalog od zwykªego pliku)

Archive

4) kasowanie i odzyskiwanie. Kasowanie w systemie FAT dokonuje si¦

przez zamienienie pierwszego znaku nazwy pliku na E5h, dzieki czemu plik

jest identykowany jako skasowany i klaster, który go zawieraª jest wolny.

Umo»liwia to bardzo proste odzyskiwanie pliku, po prostu przez ponown¡

zamian¦ pierwszego znaku nazwy.

5)Fragmentacja i Defragmentacja. Konsekwencj¡ opisanego systemu

adresowania klastrów mo»e skutkowa¢ w tzw. fragmentacji dysku. Po wielu

operacjach kasowania i tworzenia nowych plików, mog¡ one mie¢ poprzy-

dzielane klastry z ró»nych miejsc dysku, co bardzo spowalnia dziaªanie sys-

temu plików, jak i ogranicza dost¦pne miejsce na dysku. W systemach opera-

cyjnych korzystaj¡cych z FAT mamy mo»liwo±¢ przeprowadzenia defragmen-

tacji, która przywraca porz¡dek (to jest ustawia pliki tak, »eby miaªy one

poprzydzielane kolejne klastry), to w znaczny sposób przy±piesza dziaªanie

systemu.

6) bª¦dy w systemie FAT. Lata u»ywania systemu FAT pokazaªy,

»e cz¦sto musimy boryka¢ si¦ z bª¦dami, z których najcz¦stsze to: -utrata

background image

klastrów - do tego dochodzi, gdy jaki± program (najcz¦±ciej któremu nie

dane byªo doko«czy¢ dziaªania) zaznaczy jakie± klastry jako zaj¦te przez

maj¡cy powsta¢ plik, a plik ten z ró»nych przyczyn nie powstaª. Klastry takie

s¡ zaznaczone jako zaj¦te, a w rzeczywisto±ci nie s¡ u»ywane -podwajanie :

zdarza si¦ czasami, »e dwa pliki maj¡ przydzielony ten sam klaster -bª¦dy

wpisów w FAT

7) Efektywno±¢ systemu FAT Z uwagi na to, »e wieko±ci poszczegól-

nych plików nie s¡ wielokrotno±ciami wielko±ci klastra mamy do czynienia

z marnotrawieniem miejsca na dysku, które jest tym wi¦ksze im wi¦ksze s¡

klastry (czyli im wi¦kszy jest dysk), oto oszacowanie efektywno±ci wykorzys-

tania przestrzeni dyskowej dla FAT32:

ROZMIAR KLASTRA

EFEKTYWNO‘‚

ROZMIAR DYSKU

4K

96.5%

>260MB

8K

93.0%

260MB - 8GB

16K

86%

8GB - 60GB

32K

74%

<2TB

VI Ntfs

NTFS = New Technology File System.

Ten system jest u»ywany w windows NT i pó¹niejszych. Z uwagi na to,

»e zostaª zaprojektowany do pracy w systemie dla wielu u»ytkowników pod

wieloma wzgl¦dami ró»ni si¦ od FAT

1) najwa»niejsze cechy systemu NTFS -Dostosowanie do systemu z

wieloma u»ytkownikami, rozbudowany system praw dost¦pu do plików

-Rozbudowany system odzyskiwania miejsca i organizacji dysku

-Obsªuga dªugich nazw

-Przechowywanie informacj o ostatnim czasie dost¦pu

-Mo»liwa wielko±¢ partycji do 2

64

bajtów (!)

2)Struktura partycji NTFS Partycja w NTFS skªada si¦ podobnie

jak w FAT z 4 regionów, mamy tutaj:

boot sektor partycji

Master File Table

Pliki systemowe NTFS

Przestrze« plikowa

background image

a)boot sektor Zawiera informacje na temat wielko±ci sektora, rozmiaru

klastra oraz lokalizacj¦ MFT (master le table), czyli najwa»niejszej cz¦±ci

NTFS

a1)MFT

Jest to najwa»niejsza cz¦±c systemu NTFS, bez niego caªy system jest

bezu»yteczny. Wielko±¢ wpisu w MFT wynosi 1kb, wi¦c pliki mniejsze s¡

trzymane w MFT w caªo±ci, natomiast o pozostaªych plikach trzymane s¡

tzw. resitend atributies (atrybuty do indentykacji pliku, nazwa, poªo»enie

etc). Pierwsze 16 wpisów do MFT jest zarezerwowane na pliki systemowe,

na razie tych plików jest 11.

b)Klastry w NTFS

Podobnie jak w FAT partycja NTFS podzielona jest na klastry. Wielko±c

klastra w NTFS zale»y od wielko±ci partycji i odpowiednio wynosi:

Wielko±¢ partycji

wielko±¢ klastra

< 512MB

512B

513MB-1024MB

1KB

1025MB-2048MB

2KB

2049MB-4906MB

4KB

4907MB-8192MB

8KB

8193MB-16384MB

16KB

16385MB -32728MB

32KB

> 32728MB

64KB

b1) Logiczny i wirtualny numer klastra Logiczny numer klastra

(LCN)wskazuje na poªo»enie na dysku, wirtualny numer klastra (VCN) wskazuje

na dane w pliku. NTFS adresuje zyczn¡ lokalizacje na podstawie LCN.

LCN s¡ to numery wszystkich klastrów numerowane od pocz¡tku partycji

do ko«ca. VCN jest przyporz¡dkowywany do ka»dego pliku, zaczyna 0 dla

pierwszego klastra z danymi i ko«czy si¦ wraz z ko«cem pliku.

c)Pliki systemowwe w NTFS W NTFS nazwy plików systemowych

zaczynaj¡ si¦ od $. Oto zestawienie wszystkich tych plików:

-opis plików systemowych w NTFS

Nazwa pliku

Opis

$Mft

Opisuje zawarto±¢ partycji NTFS

$MftMir

Zawiera duplikat pierwszych rekordów z MFT

$LogFile

Plik .log sªu»acy do naprawy partycji

$Volume

informacje o wolumenie

$AttrDef

tablica denicji atrybutów

$.

katalog gªówny

$Bitmap

mapa bitowa klastrów

$Boot

program bootstrapu

background image

$BadClus

Lista uszkodzonych klastrów

$Quota

Informacji o Qucie

$Upcase

tabela konwersji malych liter na UNICODE

$AttrDef - plik, który zawiera informacje o wszystkich atrybutach na

danej partycji

$Bitmap - plik, który wskazuje które z LCN s¡ u»ywane, u»ycie tego

pliku skraca czas przeszukiwania dysku.

$Boot - ten plik jest u»ywany do iniciowania systemu (bootstrap)

e)atrybuty w systemie NTFS Je±li chodzi o atrybuty, NTFS oferuje

bardzo bogate mo»liwo±ci. Atrybuty ka»dego pliku skªadaj¡ si¦ z dwóch

cz¦±ci: -the content part -the header part Pliki w NTFS skªadaj¡ si¦ z

f)Quota

System NTFS daje mo»liwo±¢ ustanowienia tzw. Quoty na dysku z tym

system. Umo»liwia to okre±lenie miejsca na dysku dla ka»dego u»ytkown-

ika. Quot¦ mo»na dowolnie kongurowa¢, w zale»no±ci od praw u»ytkownika

przyznawa¢ mu rózne wielko±ci. W Qucie ka»dy u»ytkownik ma przydzielone

konto, którego wielko±ci nie mo»na mu przekroczy¢. Na jego konto liczone

s¡ pliki, które sam utworzyª lub których jest wªa±cicielem

g)EFS (Encrypted File System)

Pomysª ten powstaª w zwi¡zku z problemem zabezpieczania plików w NTFS.

O ile system uprawnie« dobrze sprawdza si¦ je±li korzystamy z systemu z

NTFS to jest bezwarto±ciowy je±li zaczniemy przegl¡da¢ dysk pod innym

systemem operacyjnym. EFS zabezpiecza przed tym problemem. NTFS

u»ywa dwóch metod kodowania: symetrycznej i asymetrycznej ale nie b¦de

si¦ tutaj w nie zagª¦biaª (mo»na je znale¹¢ w bibliograi). Dla u»ytkownika

sprawa jest prosta, wystarczy zmieni¢ atrybut ¦ncrypted"i nasz plik zostanie

zaszyfrowany. Prawo do szyfrowania jest jednym z tych które mo»emy dzieli¢

z innymi u»ytkownikami, nale»y wi¦c do by¢ bardzo ostro»nym.

h)Uprawnienia w systemie NTFS

W systemie NTFS rozró»niamy nast¦puj¡ce rodzaje uprawnie« dost¦powych:

this folder only

this folder, subfolders, and les

this folder and subfolders

background image

this folder and les

subfolders and les onlu

subfolders only

les only

Te uprawnienia dost¦pne s¡ tylko w najnowszej wersji NTFS (6.0).

Sparse les

W systemie NTFS mo»na zaznaczy¢ okre±lony plik jako sparse, system

alokuje wtedy tylko tyle miejsca ile jest potrzebne na istotne informacje.

Przetrzymuje on tylko informacje o tym gdzie system przechowuje dane.

Pliki te pomagaj¡ w efektywnym wykorzystaniu dysku.

Podsumowanie

Na koniec krótkie zestawienie systemów FAT32 i NTFS wraz z ich na-

jwa»niejszymi cechami:

Kryterium

NTFS5.0

FAT32

system

operacyjny

windows2000, XP

Windows 98,ME,2000,XP

maksymalna wielko±c partycji

2TB

2TB

maksymalna liczba plików

praktycznie nieograniczona

praktycznie nieograniczona

maksymalna wielko±c pliku

nieograniczona

4GB

maksymalna ilo±c klastrów

praktycznie nieograniczona

268435456

maksymalna dªugo±¢ nazwy

255B

255B

nazwy

w

UNICODZIE

zbiór znaków UNICODU

Systemowy zbiór znaków

kopie

zapasowe

MFT Mirror File

druga kopia FAT

poªo»enie

boot-sektora

pierwszy i ostatni sektor

pierwszy sektor

atrybuty

standardowe lub stworzone

standardowe

kompresje

tak

nie

kodowanie

tak

nie

uprawnienia

tak

nie

QUOTA

tak

nie

Sparse

les

tak

nie

Zdolno±c do rekonstrukcji

tak

nie

efektywno±¢ na maªych dyskach

maªa

du»a

efektywno±¢ na du»ych dyskach

du»a

maªa

background image

BIBLIOGRAFIA

Abraham Silberschatz Peter B. Galdvin Podstawy systemów opera-

cyjnych

http://www.ntfs.com

MSDN library

Jerzy Martyna Wstep do projektowania systemów operacyjnych

www.winntmag.com


Wyszukiwarka

Podobne podstrony:
Systemy plików na przykładzie FAT32 i NTFS
systemy plików FAT12, FAT16, FAT32, NTFS
model systemu produkcyjnego na przykladzie konkretnej firmy
Model systemu produkcyjnego na przykładzie konkretnej firmy (14)
Model systemu produkcyjnego na przykładzie konkretnej firmy
Systemy Plików Na Dyskach Twardych i Nośnikach Wymiennych, Systemy plików
R5-4 [Oobowiązywanie aktu na przykładzie ustawy (casus bez vl)], Obowiązywanie aktu normatywnego w s
1 System logistyczny na przykładzie dystrybucji opakowań metalowych przeznaczonych
Motywacyjna rola systemu wynagrodzen na przykladzie przedsiebiorstwa Pol Hun [ www potrzebujegotowki
System prezydencki na przykładzie USA
3 Aspekty ekonomiczne i ekologiczne systemu grzewczego na przykładzie kolektorów słonecznych w Bydgo
Prezentacjia i analiza wdrożenia systemu SAP na przykładzie PRZEDSIĘBIORSTWA ORKLA PRESS POLSKAx
Model systemu produkcyjnego na przykładzie konkretnej firmy (13)
model systemu produkcyjnego na przykladzie konkretnej firmy
2 Instalacja systemu Linux na przykładzie dystrybucji Fedora
Zabezpieczenia folderów i plików na przykładzie zakładki zabezpieczenia

więcej podobnych podstron