profil

Systemy operacyjne i sieci komputerowe

poleca 85% 471 głosów

Treść
Grafika
Filmy
Komentarze

1. SYSTEM FAT

- sektor, klaster, MBR, tablica alokacji plików (FAT), katalog główny
- 16-bitowy system plików FAT 16 ? charakterystyka
- 32-bitowy system plików FAT 32 ? charakterystyka
- różnice między FAT 16 i FAT 32 (FAT 12)

2. SYSTEM NTFS

- główna tablica plików (MFT), rekordery w MFT, pliki, atrybuty
- metadane
- dane

3. PORÓWNANIE FAT I NTFS

1. SYSTEM FAT
Sektor ? w informatyce jest to najmniejsza jednostka zapisu danych na dyskach twardych, dyskietkach i innych nośnikach ,które naśladują dyski. Sektory są zapisywane i czytane w całości. Wielkość sektora wynosi 512 bajtów. Na nośnikach magnetycznych podczas formatowania nośnika na dysku zapisywane są znaczniki początków sektorów za którymi są zapisywane dane. Sygnał synchroniczny poprzedza znaczniki i dane sektora. Kończą je dane umożliwiające rozpoznanie poprawności odczytu (CRC). Sektor to także część ścieżki dysku.
Klaster ? w systemach plików takich jak FAT i NTFS, określona dla danego nośnika podstawowa jednostka przechowywania danych, które skalają się z jednego lub kilku sektorów. Obszar jednego klastra można wypełnić tylko jednym plikiem, nawet jeśli wypełnia go tylko w niewielkiej części. Klastrom nadaje się numery, a ich maksymalną liczbę określa stosowany system plików, co z kolei określa maksymalną wielkość partycji przy żądanej wielkości klastra. Klastry wprowadzono by zwiększyć wielkość nośnika dla systemu plików.
Podczas formatowania dysku jest dobierana wielkość klastra przez system plików stosownie do siebie i wielkości partycji tak aby nie przekroczyć maksymalnej liczby klstrów dostępnej dla danego systemu plików. W nowoczesnych systemach można zdefiniować rozmiar klastrów, zróżnicować ich wielkość dla małych i dużych plików tak aby maksymalnie wykorzystać powierzchnie nośnika. Klaster w całości jest przydzielony jednemu plikowi. Plik w katalogu zawiera numer pierwszego klastra pliku, gdzie znajdują się dalsze części pliku opisuje wpis w FAT. W tablicy FAT pod numerem odpowiadającym numerowi pierwszej części pliku jest umieszczony numer kolejnego klastra przydzielonego plikowi lub liczba z zakresu FFF8h-FFFFh, jeśli to jest ostatni klaster pliku. Jeżeli dany klaster jest wolny, to w FAT odpowiada mu wpis 0000h, a FFF7h oznacza uszkodzony klaster.
MBR (Master Boot Record) ? główny rekord startowy, umowna struktura zapisana w pierwszym sektorze dysku twardego i dyskietki. Zawiera on program rozruchowy oraz główną tablicę partycji. Struktura MBR:
MBR zajmuje 512 bajtów, 446 bajtów zajmuje bootstarp ? sektor ładujący
Tablica partycji zawiera 4 struktury opisujące partycje podstawowe, każda zajmuje 16 bajtów
MBR kończą 2 bajty sygnatury ? szesnastkowo 0x55 0xAA, co daje 446 (4 ? 16) 2 = 512
MBR znajduje się na pierwszej ścieżce, w pierwszym cylindrze, w pierwszym sektorze dysku
(CHS ? 0, 0, 1).
Tablica alokacji plików (FAT) - Obszar partycji sformatowanej w systemie plików FAT, przechowujący informacje na temat przynależności poszczególnych jednostek alokacji systemu plików (klastrów). Na partycji przechowywane są dwie kopie FAT (główna i zapasowa), jednak przypadki uszkodzenia tablic FAT (co uniemożliwia dostęp do niektórych lub wszystkich danych) nie są rzadkością.
Katalog główny - katalog w systemie plików nadrzędny dla wszystkich innych katalogów (i również plików). W systemach uniksowych oznaczamy przez ukośnik (/), a w systemach dosowych przez odwrotny ukośnik ().
FAT 16 ? odmiana systemu plików FAT, z którego mogą korzystać rożne systemy.
Pierwsze komputery PC pracujące pod kontrolą systemu DOS miały architekturę 16 ? bitową. System mógł opisać tylko , czyli 65536 klastrów. Klastry rozmiarowo były równe sektorom dysku twardego (512 bajtów), ograniczało to pojemność do 32 MB. Gdy dyski osiągnęły rozmiar 1 gigabajta jednostki alokacji osiągnęły rozmiar 32 kilobajtów. Tak duża wielkość spowodowała duże marnotrawstwo przestrzeni dyskowej (plik zawierający 10 bajtów informacji zajmował na dysku 32 kilobajty miejsca). Rozmiar dysku też był ograniczony do 2.1 GB. W FAT 16 jest niezróżnicowanie wielkości liter w nazwach plików, oraz ograniczenie ich długości do 12 znaków. FAT 16 jest stosowany w systemach operacyjnych Microsoftu od MS-DOS do Windows 95. System FAT16 jest nadal często stosowany na niewielkich mediach, np. kartach pamięci flash.
FAT 32 - Odmiana systemu plików FAT, po raz pierwszy zastosowany w systemie operacyjnym Windows 95 OSR2, następca FAT16. FAT 32 pomimo nazwy która sugeruje użycie 32 bitów używa tylko 28 bitów. Pozwalało to teoretycznie na opisanie 268.435.438 klastrów, co umożliwiałoby użycie go nawet na wielo terabajtowych dyskach twardych. Z powodu nałożonego ograniczenia na program ? fdisk? firmy Microsoft, który obsługuje maksymalnie 4.177.920 klastrów (~222), wielkość partycji obsługiwanej w tym systemie plików nie może przekroczyć 124,55 gigabajtów, co nie pozwala na jego użycie z nowymi generacjami twardych dysków. Maksymalny rozmiar pliku to 4 GB - 1 B (232 B - 1 B). W Windows XP można korzystać z FAT, można także zainstalować go na takiej partycji, jednak systemowe narzędzia nie potrafią utworzyć partycji FAT o rozmiarze większym niż 32 GB. Aby utworzyć partycję FAT o rozmiarze większym niż 32 GB, należy posłużyć się alternatywnym narzędziem do partycjonowania: PQMagic, systemem Windows 95OSR2/98 lub systemem Linux (patrz polecenie mkdosfs).
Różnice między FAT 16 i FAT 32
Aby porównać te dwa systemy należy też wspomnieć o pierwszym systemie FAT jakim był FAT 12. Posiada 12 bitowe numerowanie jednostki alokacji. FAT12 pozwala na obsłużenie 4096 (212) jednostek alokacji co ogranicza do tej liczby też maksymalną liczbę plików na dysku. Wielkość jednostki alokacji waha się od 512B do 32KB i jest określana przez program formatujący w zależności od wielkości partycji. Pozwala na utworzenie partycji o rozmiarze do 16 MB. Zazwyczaj jeden klaster ma 8 sektorów co daje około 0.5 Kb.

FAT 16 FAT 32
Architektura 16 - bitowa 32 - bitowa
Ilość klastrów 65536 4.177.920
Rozmiar dysku 2.1 GB Teoretycznie brak ograniczeń, Są tylko ograniczenie co do partycji: 32 GB, w Windows XP użycie PQMagic a systemy Windows 95OSR2/98 lub Linux patrz polecenie mkdosfs umożliwiają stworzenie partycji o wielkości 124,55 GB
Nazwy plików Brak zróżnicowania wielkości liter Istnieje zróżnicowanie
Ilość znaków w nazwie pliku 12 znaków Brak ograniczenie
Systemy operacyjne Pracujące pod kontrolą DOS Niektóre starsze systemy jak Windows 98 i wszystkie nowsze

2. SYSTEM NTFS
NTFS - Pierwszy raz został zaimplementowany w systemie Windows NT. Odpowiednikiem tablicy alokacji plików jest główna tablica plików (MFT ? Master File Table), przechowująca dane opisujące położenie plików oraz katalogów nadysku. NTFS posiada ulepszenia w postaci wsparcia metadanych i użycia zaawansowanych struktur budowy plików by zwiększyć wydajność, niezawodność oraz efektywniejsze wykorzystanie przestrzeni dyskowej. Dodatkowym rozszerzeniem jest wprowadzenie kompresji, szyfrowania danych i tworzenia praw dostępów dla użytkowników. Nowością jest system księgowania (journaling), odpowiadający za wcześniejszą rejestrację zmian do dziennika, przed faktycznym zapisaniem do głównego systemu plików. Mechanizm ten zmniejsza prawdopodobieństwo utraty danych.
Maksymalny rozmiar partycji to:
Teoretycznie: 16 EiB.
W implementacji: 256 TiB.
Maksymalny rozmiar pliku to:
Teoretycznie: 16 EiB.
W implementacji: 16TiB
Przykładowe możliwości NTFS:
Journaling - dziennik zmian (od NTFS 3.0 w Windows 2000); wewnętrzny dziennik NTFS ma kluczową rolę przy kontroli woluminu NTFS pod kątem błędów struktury przez narzędzie CHKDSK.
Szyfrowanie plików i katalogów - (od NTFS 3.0 w Windows 2000) przy pomocy nakładek tworzących EFS - Encrypting File System - nie jest jednak możliwe zaszyfrowanie plików systemowych. Od Windows XP, podsystem EFS dostępny jest tylko w wersjach Professional lub wyższych (i ich odpowiednikach, np. Vista Business). Nie jest dostępny w wersjach Home i ich derywatach. EFS nie jest przeznaczony do szyfrowania prywatnych danych na komputerach domowych, a raczej do ochrony danych w systemach o wielu użytkownikach w środowiskach korporacyjnych, szczególnie w domenach Windows 2000 i Windows Server 2003. Wersja EFS używana przez Windows 2000 różni się od wersji używanej w późniejszych wersjach Windows i jest z nimi niezgodna.

Kompresja danych "w locie"- pliki kompresowane przy pomocy wbudowanych funkcji NTFS nie mogą być szyfrowane przy pomocy EFS i odwrotnie;

Prawa dostępu dla grup i użytkowników - dostęp do tej funkcji jest ograniczony w Windows XP Home Edition i późniejszych; pełne wykorzystanie praw dostępu, wraz z możliwością wykonania inspekcji praw dostępu z zapisem do dziennika, możliwe jest w Windows 2000 (wszystkie wersje dla komputerów PC), Windows XP Professional, Windows Server 2003 i nie-domowych wersjach Windows Vista.
Podstawowe cechy:
Wolumin NTFS jest logicznie podzielony na klastry składające się z pewnej stałej liczby fizycznych sektorów dysku.
Pozwalają na uniezależnienie struktury systemu plików od fizycznych właściwości dysku.
Wszystkie metadane są chronione przed rozspójnieniem (przez redundancję i journalling).
Zwykłe dane nie są chronione.
Wszystkie dane na dysku, łącznie z tablicą plików, journalem, boot sektorem i innymi metadanymi, są trzymane w zwykłych plikach.
Wszystkie informacje o pliku, włącznie z jego zawartością, są zapisane w jednolity sposób (w atrybutach).
Ograniczenia i rozmiary klastrów
Ograniczenia systemu NTFS i jego implementacji w systemie Windows są różne:

NTFS Windows
Numery klastrów 64-bitowe 32-bitowe
Maks. rozmiar klastra 64 KB 64 KB
Maks. wielkość woluminu 16 EB 256 TB
Maks. wielkość pliku 16 EB 16 TB
Maks. liczba plików 232-1 232-1
Domyślne wielkości klastrów dla woluminów NTFS:

Rozmiar woluminu Wielkość klastra
? 512MB 512 B
? 1GB 1 KB
? 2GB 2 KB
> 2GB 4 KB
Zastosowanie małych klastrów w systemie NTFS pozwala oszczędzić miejsce na dysku.

Przegląd atrybutów:

$STANDARD_INFORMATION flagi takie jak as read-only, archive itp.; czasy utworzenia, dostępu, modyfikacji; liczba dowiązań z katalogów (hard link count); właściciel
$FILE_NAME nazwa pliku (w Unicode); plik może mieć wiele nazw (np. długą nazwę i wersję 8.3)
$DATA poszczególne strumienie danych (jeden nienazwany i dowolna liczba nazwanych)
$OBJECT_ID unikalny, 64-bajtowy identyfikator pliku (dolne 16 bajtów identyfikuje wolumin); NTFS pozwala na wyszukiwanie plików po tym atrybucie (używane przez link-tracking)
$ATTRIBUTE_LIST lista atrybutów z ich położeniem - używana, gdy atrybuty nie mieszczą się w jednym rekordzie tablicy MFT (o niej za chwilę)
$EFS zawiera dane o szyfrowaniu pliku, m.in. klucze potrzebne do ich odszyfrowania
$REPARSE_POINT zawiera reparse-tag i dodatkowe dane; służy m.in. do implementacji linków symbolicznych i punktów montowania

Master File Table

Klastry na dysku mają przyporządkowane kolejne numery począwszy od 0 (Logical Cluster Numbers - LCN).

Klastry każdego strumienia danych są podobnie ponumerowane (Virtual Cluster Numbers - VCN).

Master File Table jest plikiem zawierającym informacje o atrybutach plików i ich położeniu (mapowaniu VCN na LCN).

MFT składa się z rekordów po 1 KB - jeden lub więcej na plik.



Każdy rekord zawiera następujące po sobie atrybuty.

Atrybut zaczyna się nagłówkiem. Jeśli dane atrybutu są niewielkie, umieszczane są po nagłówku (atrybut jest resident). Gdy danych jest więcej, alokowane są dla nich klastry poza MFT (atrybut nonresident). Atrybuty nonresident mają w nagłówku wypisane
klastry, w których zostały umieszczone ich dane:

Mapowanie VCN na LCN jest zapisane w seriach. Każda seria to numer klastra na dysku (LCN), odpowiadającego mu numeru klastra danych (VCN), oraz liczba kolejnych klastrów należących do serii
Gdy w rekordzie pliku w MFT zabraknie miejsca na nagłówki atrybutów, dla pliku zostają przydzielone dodatkowe rekordy w MFT, a w rekordzie bazowym zostaje założony nowy atrybut: $ATTRIBUTE_LIST.
Zawiera on listę pozostaych atrybutów pliku oraz informację o ich położeniu w innych rekordach MFT.
Ponieważ $Mft jest takim samym plikem jak inne, to może zostać pofragmentowany. Aby temu zapobiec NTFS definiuje MFT-Zone - obszar dysku wokoło pliku $Mft, przeznaczony na jego powiększenie.
Klastry z MFT-Zone mogą zostać zaalokowane na inne pliki tylko wtedy, gdy na dysku zaczyna brakować miejsca. MFT zajmuje 12,5% pojemności dysku.

Metadane - czyli ?dane o danych? (także klasyczne katalogi biblioteczne są metadanymi), przy ich pomocy opisuje się dokumenty elektroniczne, szczególnie dostępne poprzez sieci rozległe np. strony World Wide Web, a także te, które tworzą nowoczesne biblioteki cyfrowe. Jednym ze standardów dla metadanych jest Dublin Core Metadata Element Set (DCMES).
To również informacje na temat danych zapisanych w systemie plików na dysku (plików, katalogów itp.).

Struktura i właściwości woluminu NTFS są definiowane przez następujące pliki z metadanymi:

$Mft Master File Table - plik definiujący rozmieszczenie wszyskich plików na dysku (także samego $Mft!). Jest umieszczany przy początku dysku.
$MftMirr Kopia pierwszych 16 rekordów z MFT (zawierających informacje o plikach z metadanymi). Jest umieszczany przy środku dysku.
$LogFile Plik journala.
$Volume Zawiera informacje o nazwie i typie woluminu.
$AttrDef Zawiera definicje atrybutów (m.in. ich nazwy i numery).
Katalog główny woluminu.
$Bitmap Mapa zajętości klastrów na dysku (jeden bit na klaster).
$Boot Boot sektor (pierwsze 16 sektorów) - zawiera położenie MFT i boot record.
$BadClus Plik składający się z zepsutych klastrów. Ponieważ każdy taki klaster jest do niego doalokowywany, to nie może zostać użyty przez inny plik.
$Secure Trzyma informacje o prawach dostępu do plików.
$UpCase Tablica mapująca małe litery na wielkie.
$Extend Katalog z pozostałymi plikami specjalnymi (jak $Quota, $ObjID, $UsnJrnl, $Reparse).

Pliki skompresowane
Plik podlegający automatycznej kompresji dzielony jest na 16-klastrowe kawałki.
Każdy kawałek kompresowany jest oddzielnie.
Jeśli skompresuje się on do mniej niż 16 klastrów jest zapisywany skompresowany, wpw. jest zapisany rozkompresowany.
Przykład pliku skompresowanego:


Pliki rzadkie i małe

Pliki w systemie NTFS mogą mieć zaalokowanych mniej klastrów, niż wynikałoby to z ich rozmiaru.
Niezaalokowane klastry mają swoje numery wirtualne (VCN), ale nie mają numerów logicznych (LCN).
Przy odczycie są traktowane jak zawierające same zera.
Przy zapisie, w niewidoczny dla użytkownika sposób, alokowane są dla nich klastry logiczne.
Jeśli plik jest dostatecznie mały, żeby jego atrybut $DATA zmieścił się w rekordzie w MFT, to nie są dla niego alokowane żadne dodatkowe klastry.
Oszczędza się w ten sposób miejsce i zwiększa szybkość dostępu do pliku.

Katalogi
Katalogi trzymają informacje o plikach w nich zawartych w atrybucie $INDEX_ROOT.
Oprócz refernecji do rekordów plików w MFT są tam też często używane atrybuty plików, zduplikowane z MFT:
nazwy plików,
czasy utworzenia, ostaniego dostępu i modyfikacji,
wielkość pliku.
Referencje do plików w MFT są 64-bitowymi liczbami:
48 bitów to numer rekordu pliku w MFT,
16 bitów to licznik wykorzystywany do sprawdzania spójności danych, zwiększany za każdym rzazem, gdy rekord zostaje użyty na nowy plik.


Małe katalogi
Małe katalogi, podobnie jak małe pliki, mogą być zawarte całkowicie w swoim rekordzie w MFT.

Duże katalogi

Pliki w dużych katalogach są indeksowane i sortowane po nazwie.
Indeksy są zaimplementowane jako B - drzewa, z korzeniem umieszczonym w atrybucie $INDEX_ROOT.
Kolejne węzły drzewa (index-buffers) są alokowane w razie konieczności, a ich położenie jest zapisywane w atrybucie $INDEX_ALLOCATION.
Dodatkowy atrybut $BITMAP określa które klastry w węzłach drzewa są jeszcze wolne.

3. PORÓWNANIE NTFS I FAT

NTFS FAT
Maksymalny rozmiar pliku 16 EB ograniczenie Windows do 16 TB 4 GB - 1 B
Maksymalny rozmiar partycji Teoretycznie: 16 EiB.
W implementacji: 256 TiB. 32 GB, w Windows XP użycie PQMagic a systemy Windows 95OSR2/98 lub Linux patrz polecenie mkdosfs umożliwiają stworzenie partycji o wielkości 124,55 GB
Maksymalny rozmiar klastra 64 KB 512 B
Widzialność z DOS-a Nie widziany Widziany
Kompresja danych Możliwe Brak
Uprawnienie dla plików i folderów Posiada Brak
Atrybuty Wszystkie Nieliczne
Spójność woluminu Jest Brak
Maksymalna ilość plików 4 mlrd -1 4 mln
Numery Klastrów 64 bitowe 32 bitowe używane tylko 28 bitów
Nadawanie i odbieranie uprawnień użytkownikom Jest z dużym wyborem Brak
Tablica plików MFT (zabiera 12,5% pojemności dysku twardego, praktycznie brak możliwości uszkodzenie, o wiele skuteczniejsza niż FAT) FAT (często może ulec uszkodzeniu ale nie zabiera tyle miejsca co MFT ale o wiele mniej skuteczna)
Zmiana wielkości klastra Możliwe Brak - zawsze jest domyślny
Użycie z nowej generacji dyskami Stosowane Możliwe ale nieopłacalne z powodu dużych ograniczeń
Tryb awaryjny W windowsach od 2000 ale nie w NT We wszystkich obsługujących ten system plików

Z powyższej tabeli można wywnioskować iż system plików NTFS korzystniej używać przy nowej generacji dysków twardych co ogranicza utratę pojemności dysku. Używać należy go w komputerach posiadających więcej niż jednego użytkownika lub połączonych w sieci lokalnej. Praktycznie jeszcze niema dla niego ograniczenie co do wielkości dysku, partycji i plików gdyż nie tworzy się jeszcze takich dysków o takiej pojemności. Jedynym mankamentem jest to iż nie jest on widziany z DOS-u i nie posiada trybu awaryjnego w windowsach NT.

Czy tekst był przydatny? Tak Nie

Czas czytania: 15 minut