Informatyka 2 - Wydział Elektryczny

Transkrypt

Informatyka 2 - Wydział Elektryczny
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
2/39
Plan wykładu nr 6
Definicje systemu operacyjnego
Informatyka 2
Zarządzanie procesami
definicja procesu, blok kontrolny procesu
dwu- i pięciostanowy model procesu
Zarządzanie dyskowymi operacjami we-wy
Politechnika Białostocka - Wydział Elektryczny
Elektrotechnika, semestr III, studia stacjonarne I stopnia
metody przydziału pamięci dyskowej
(alokacja ciągła, alokacja listowa, alokacja indeksowa)
Rok akademicki 2015/2016
systemy plików (FAT12, FAT16, FAT32, exFAT, NTFS)
Wykład nr 6 (30.11.2015)
dr inż. Jarosław Forenc
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
3/39
System operacyjny - definicja
System operacyjny - jest to program sterujący wykonywaniem aplikacji
i działający jako interfejs pomiędzy aplikacjami (użytkownikiem)
a sprzętem komputerowym
użytkownik końcowy
nie jest zainteresowany
sprzętem, interesują go
tylko aplikacje
(programy użytkowe)
aplikacje są tworzone
przez programistów
za pomocą języków
programowania
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
4/39
System operacyjny - definicja
System operacyjny - administrator zasobów - zarządza i przydziela
zasoby systemu komputerowego oraz steruje wykonaniem programu
zasób systemu - każdy element systemu, który może być przydzielony
innej części systemu lub oprogramowaniu aplikacyjnemu
do zasobów systemu zalicza się:
czas procesora
pamięć operacyjną
urządzenia zewnętrzne
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
5/39
Zarządzanie procesami
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
6/39
Blok kontrolny procesu
struktura danych tworzona i zarządzana przez
system operacyjny, a opisująca właściwości procesu
Definicja procesu:
proces - program w trakcie wykonania
proces - ciąg wykonań instrukcji wyznaczanych kolejnymi wartościami
licznika rozkazów wynikających z wykonywanej procedury (programu)
proces - jednostka, którą można przypisać procesorowi i wykonać
identyfikator - unikatowy numer skojarzony z procesem,
dzięki któremu można odróżnić go od innych procesów
stan procesu: nowy, gotowy, uruchomiony, zablokowany,
anulowany
priorytet - niski, normalny, wysoki, czasu rzeczywistego
Proces składa się z kilku elementów:
kod programu
dane potrzebne programowi (zmienne, przestrzeń robocza, bufory)
kontekst wykonywanego programu (stan procesu) - dane wewnętrzne,
dzięki którym system operacyjny może nadzorować proces i nim
sterować
licznik programu - adres kolejnego rozkazu w programie,
który ma zostać wykonany
wskaźniki pamięci - wskaźniki do kodu programu, danych
skojarzonych z procesem, dodatkowych bloków pamięci
dane kontekstowe - dane znajdujące się w rejestrach
procesora, gdy proces jest wykonywany
informacje na temat stanu żądań we-wy - informacje
na temat urządzeń we-wy przypisanych do tego procesu
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
7/39
Dwustanowy model procesu
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
8/39
Dwustanowy model procesu
najprostszy model polega na tym, że w dowolnej chwili proces jest
wykonywany przez procesor (uruchomiony) lub nie (nie uruchomiony)
procesy, które nie są uruchomione czekają w kolejce na wykonanie
Program przydzielający
Wejście
Proces nie
uruchomiony
Uruchomiony
proces
Wyjście
Przerwa
system operacyjny tworząc nowy proces, tworzy blok kontrolny procesu
po czym wprowadza proces do systemu jako nie uruchomiony
w pewnym momencie aktualnie wykonywany proces zostaje przerwany
i program przydzielający wybiera inny proces do wykonania
stan poprzednio uruchomionego procesu jest zmieniany z uruchomionego
na nie uruchomiony
jeśli wykonywanie procesu zostało anulowane lub zakończone, to opuszcza
on system, a program przydzielający wybiera kolejny proces z kolejki,
który zostanie wykonany
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
9/39
Pięciostanowy model procesu
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
10/39
Pięciostanowy model procesu
w dwustanowym modelu procesu kolejka działa na zasadzie FIFO,
a procesor wykonuje procesy cyklicznie z kolejki
uruchomiony - proces aktualnie wykonywany
problem pojawia się w przypadku, gdy kolejny proces pobierany
do wykonania z kolejki jest zablokowany, gdyż oczekuje
na zakończenie operacji we-wy
zablokowany - proces oczekujący na zakończenie operacji we-wy
gotowy - proces gotowy do wykonania przy najbliższej możliwej okazji
nowy - proces, który właśnie został utworzony (ma utworzony blok kontrolny
procesu, nie został jeszcze załadowany do pamięci), ale nie został jeszcze
przyjęty do grupy procesów oczekujących na wykonanie
rozwiązaniem powyższego problemu jest podział procesów
nieuruchomionych na gotowe do wykonania i zablokowane
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
anulowany - proces, który został wstrzymany lub anulowany z jakiegoś powodu
dr inż. Jarosław Forenc
11/39
Pięciostanowy model procesu
podział procesów nieuruchomionych na gotowe do wykonania i zablokowane
wymaga zastosowania minimum dwóch kolejek
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
Przydział pamięci dyskowej - alokacja ciągła
każdy plik zajmuje ciąg
kolejnych bloków na dysku
plik zdefiniowany jest przez
adres pierwszego bloku
i ilość kolejnych zajmowanych
bloków
zalety: małe opóźnienia
w transmisji danych, łatwy
dostęp do dysku
wady: trudność w znalezieniu
miejsca na nowy plik
gdy pojawia się zdarzenie system operacyjny musi przejrzeć kolejkę szukając
procesów, który związane są z danym zdarzeniem
w celu zapewnienia większej wydajności lepiej jest gdy dla każdego
zdarzenia istnieje oddzielna kolejka
dr inż. Jarosław Forenc
12/39
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
13/39
Przydział pamięci dyskowej - alokacja listowa
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
14/39
Przydział pamięci dyskowej - alokacja indeksowa
każdy plik jest listą
powiązanych ze sobą bloków
dyskowych, które mogą
znajdować się w dowolnym
miejscu na dysku
każdy plik ma własny blok
indeksowy, będący tablicą
adresów bloków dyskowych
w katalogu zapisany jest
dla każdego pliku adres
bloku indeksowego
w katalogu dla każdego pliku
zapisany jest wskaźnik
do pierwszego i ostatniego
bloku pliku
każdy blok zawiera wskaźnik
do następnego bloku
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
15/39
System plików FAT (File Allocation Table)
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
16/39
FAT12
opracowany na przełomie lat 70. i 80. dla systemu MS-DOS
system plików FAT12 przeznaczony jest dla nośników o małej pojemności
występuje w czterech wersjach: FAT12, FAT16, FAT32 i exFAT (FAT64)
obsługuje 212 = 4096 jednostek alokacji, max. rozmiar partycji to 16 MB
numer występujący po słowie FAT oznacza liczbę bitów przeznaczonych
do kodowania (numeracji) jednostek alokacji pliku (JAP), tzw. klastrów
(ang. cluster) w tablicy alokacji plików
rekord ładujący zajmuje pierwszy sektor dyskietki lub dysku logicznego
12 bitów w systemie FAT12
16 bitów w systemie FAT16
32 bity w systemie FAT32
rekord ładujący zawiera następujące dane:
64 bity w systemie exFAT (FAT64)
instrukcja skoku do początku programu ładującego (3 bajty)
ogólna struktura dysku logicznego / dyskietki w systemie FAT:
Rekord ładujący
+
sektory
zarezerwowane
Tablica
rozmieszczenia
plików - FAT
Kopia FAT
Katalog główny
(FAT12 i FAT16)
Miejsce
na pliki
i podkatalogi
nazwa wersji systemu operacyjnego (8 bajtów)
struktura BPB (ang. BIOS Parametr Block) - blok parametrów BIOS
(25 bajtów)
rozszerzony BPB (ang. Extended BPB, 26 bajtów)
wykonywalny kod startowy uruchamiający system operacyjny (448 bajtów)
znacznik końca sektora - 55AAH (2 bajty)
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
17/39
FAT12
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
18/39
FAT12
tablica rozmieszczenia plików FAT tworzy swego rodzaju „mapę” plików
zapisanych na dysku
katalog główny zawiera 32-bajtowe pola mogące opisywać pliki,
podkatalogi lub etykietę dysku
za tablicą FAT znajduje się jej kopia, która nie jest wykorzystywana
Zawartość pola:
za kopią tablicy FAT znajduje się katalog główny zajmujący określoną
dla danego typu dysku liczbę sektorów
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
19/39
FAT12
Bajty
Rozmiar
00H-07H
8
08H-0AH
0BH
Zawartość
Atrybuty pliku:
Bit
Znaczenie
Nazwa pliku w kodach ASCII
0
Plik tylko do odczytu (read only)
3
Rozszerzenie nazwy pliku
1
Plik ukryty (hidden)
1
Atrybuty pliku
2
Plik systemowy (system)
0CH-15H
10
Zarezerwowane
3
Etykieta dysku (volume label)
16H-17H
2
Czas utworzenia lub aktualizacji pliku
4
Podkatalog
18H-19H
2
Data utworzenia lub aktualizacji pliku
5
1AH-1BH
2
Numer pierwszej JAP
1CH-1DH
2
Mniej znaczące słowo rozmiaru pliku
1EH-1FH
2
Bardziej znaczące słowo rozmiaru pliku
6,7
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
FAT12 - położenie pliku na dysku
przykładowa zawartość katalogu głównego:
0000
0010
0020
0030
0040
0050
0060
0070
dr inż. Jarosław Forenc
49
00
4D
00
43
00
41
00
4F
00
53
00
4F
00
54
00
20
00
44
00
4D
00
54
00
20
00
4F
00
4D
00
52
00
20
00
53
00
41
00
49
00
20
00
20
00
4E
00
42
00
20
C0
20
C0
44
C0
20
C0
20-53
32-BF
20-53
32-BF
20-43
32-BF
20-45
32-BF
59
1C
59
1C
4F
1C
58
1C
53
02
53
52
4D
9D
45
08
21
00
21
00
20
00
20
01
00
46
00
FA
00
75
00
C8
00
9F
00
94
00
D5
00
2B
00
00
00
00
00
00
00
00
00
00
00
00
00
00
00
00
IO
SYS!....
.......2....F...
MSDOS
SYS!....
.......2..R.....
COMMAND COM ....
.......2....u...
ATTRIB EXE ....
.......2.....+..
pozostałą część dysku zajmuje miejsce na pliki i podkatalogi
w katalogu, w 32-bajtowym polu każdego pliku
wpisany jest początkowy numer JAP
numer ten określa logiczny numer sektora,
w którym znajduje się początek pliku
ten sam numer JAP jest jednocześnie
indeksem do miejsca w tablicy FAT,
w którym wpisany jest numer kolejnej JAP
numer wpisany we wskazanym miejscu
tablicy rozmieszczenia plików wskazuje
pierwszy sektor następnej części pliku
i równocześnie położenie w tablicy FAT
numeru następnej JAP
w ten sposób tworzy się łańcuch,
określający położenie całego pliku
podkatalogi nie są ograniczone co do wielkości, zapisywane są
na dysku w sposób identyczny jak pliki użytkowe i także
zawierają 32-bajtowe pola
jeśli numer JAP składa się z samych FFF,
to oznacza to koniec pliku
Plik archiwalny (archive)
Nie wykorzystywane
dr inż. Jarosław Forenc
20/39
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
21/39
FAT12 - struktura dyskietki (1,44 MB)
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
22/39
FAT16
całkowita liczba sektorów na dyskietce: 2880
po raz pierwszy pojawił się w systemie MS-DOS 3.3
max. liczba plików w katalogu głównym: 224
ogólna struktura dyskietki / dysku logicznego w systemie FAT16
jest taka sama jak w przypadku FAT12
liczba sektorów systemowych: 33
maksymalna liczba jednostek alokacji ograniczona jest do 216 czyli 65536
liczba sektorów na pliki i podkatalogi: 2880 - 33 = 2847
dostępne miejsce na pliki i podkatalogi: 2847 x 512 = 1 457 664 bajty
Rekord ładujący
+
sektory
zarezerwowane
Tablica
rozmieszczenia
plików - FAT
Kopia FAT
Katalog główny
(FAT12 i FAT16)
Miejsce
na pliki
i podkatalogi
1 sektor
9 sektorów
9 sektorów
14 sektorów
2847 sektorów
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
23/39
FAT32
po raz pierwszy wprowadzony w systemie Windows 95 OSR2
ogólna struktura systemu FAT32 jest taka sama jak w FAT12/FAT16
- nie ma tylko miejsca przeznaczonego na katalog główny
do adresowania JAP stosuje się, obcięty o 4 najstarsze bity, adres
32-bitowy i dlatego dysk z FAT32 może zawierać maksymalnie 228 JAP
jeśli rozmiar JAP wynosi od 4 kB do 32 kB, to teoretycznie dysk może
mieć rozmiar 8 TB, ale praktycznie ograniczenie to liczba 232 sektorów,
czyli 2 TB
system Windows 2000 obniża tę wartość do 32 GB, gdyż umożliwia to
zapis całej tablicy FAT w pamięci podręcznej, co poprawia wydajność
systemu
w systemie FAT32 można formatować tylko dyski, nie można natomiast
zainstalować go na dyskietkach
w systemach DOS i Windows 95 maksymalny rozmiar JAP to 215 bajtów
czyli 32 kB, stąd maksymalny rozmiar dysku logicznego w tych
systemach to 65536 × 32 kB czyli ok. 2 GB
w systemie Windows 2000 górna granica rozmiaru JAP wynosi 216
bajtów (64 kB), czyli rozmiar dysku logicznego zwiększa się do 4 GB.
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
24/39
FAT32
w systemie FAT32 katalog główny może znajdować się w dowolnym
miejscu na dysku i może zawierać maksymalnie 65 532 pliki i katalogi
Bajty
Rozmiar
00H-07H
8
Zawartość
08H-0AH
3
Rozszerzenie nazwy pliku
0BH
1
Atrybuty pliku
Nazwa pliku w kodach ASCII
0CH
1
Wielkość liter nazwy i rozszerzenia pliku
0DH
1
Czas utworzenia w milisekundach
0EH-0FH
2
Czas utworzenia
10H-11H
2
Data utworzenia
12H-13H
2
Czas ostatniego dostępu
14H-15H
2
Numer pierwszej JAP (16 starszych bitów)
16H-17H
2
Czas utworzenia lub aktualizacji pliku
18H-19H
2
Data utworzenia lub aktualizacji pliku
1AH-1BH
2
Numer pierwszej JAP (16 młodszych bitów)
1CH-1DH
2
Mniej znaczące słowo rozmiaru pliku
1EH-1FH
2
Bardziej znaczące słowo rozmiaru pliku
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
25/39
FAT32 - długie nazwy plików
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
26/39
FAT32 - długie nazwy plików
wprowadzone w systemie Windows 95
skrócona nazwa pliku przechowywana jest w identycznej, 32-bajtowej,
strukturze jak w przypadku plików w starym formacie 8+3
informacje o nazwie pliku zapamiętywane są jako:
długie nazwy plików zapisywane są także w 32-bajtowych strukturach,
przy czym jedna nazwa zajmuje kilka struktur (w jednej strukturze
umieszczonych jest 13 kolejnych znaków w formacie Unicode)
długa nazwa
skrócona nazwa (tzw. alias długiej nazwy)
metoda tworzenia skróconej nazwy pliku:
rozszerzenie długiej nazwy staje się rozszerzeniem skróconej nazwy
pierwsze sześć znaków długiej nazwy staje się pierwszymi sześcioma
znakami skróconej nazwy (niedozwolone znaki zamieniane są na znak
podkreślenia, małe litery zamieniane są na wielkie litery)
pozostałe dwa znaki nazwy skróconej to ~1 lub jeśli plik o takiej
nazwie istnieje ~2, itd.
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
27/39
FAT32 - długie nazwy plików
Rozmiar
Zawartość
00H
1
Pierwsze 6 bitów określa numer fragmentu nazwy, bit
7 - czy jest to ostatni fragment nazwy, a bit 8 - czy
plik został usunięty lub jego nazwa skrócona
01H-0AH
10
Pierwsze 5 znaków nazwy
0BH
1
Atrybut (zawsze F)
0CH
1
Zarezerwowany (zawsze 0)
0DH
1
Suma kontrolna wersji krótkiej 8+3
0EH-19H
12
Kolejne 6 znaków nazwy
1AH-1BH
2
Numer początkowego klastra (zawsze 0)
1CH-1FH
4
Dwie ostatnie litery nazwy
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
28/39
FAT - wady systemu plików FAT
Nazwa pliku: Systemy Operacyjne - praca domowa.txt
długa nazwa pliku
0000
0010
43 20 00 64 00 6F 00 6D-00 6F 00 0F 00 CF 77 00
61 00 2E 00 74 00 78 00-74 00 00 00 00 00 FF FF
C .d.o.m.o....w.
a...t.x.t.......
0020
0030
02 63 00 79 00 6A 00 6E-00 65 00 0F 00 CF 20 00
2D 00 20 00 70 00 72 00-61 00 00 00 63 00 61 00
.c.y.j.n.e.... .
-. .p.r.a...c.a.
0040
0050
01 53 00 79 00 73 00 74-00 65 00 0F 00 CF 6D 00
79 00 20 00 4F 00 70 00-65 00 00 00 72 00 61 00
.S.y.s.t.e....m.
y. .O.p.e...r.a.
0060
0070
53 59 53 54 45 4D 7E 31-54 58 54 20 00 4B 03 80
67 32 67 32 00 00 08 80-67 32 02 00 06 00 00 00
SYSTEM~1TXT .K..
g2g2....g2......
skrócona nazwa pliku
Bajty
fragmentacja wewnętrzna - nawet najmniejszy plik zajmuje całą JAP gdy rozmiar klastra jest duży, a na dysku znajduje się dużo małych
plików - pewna część miejsca jest tracona
fragmentacja zewnętrzna - silna fragmentacja plików pomiędzy wiele
klastrów o bardzo różnym fizycznym położeniu na dysku (konieczność
okresowej defragmentacji przy użyciu specjalnych narzędzi
programowych)
duże prawdopodobieństwo powstawania błędów zapisu, polegających na
przypisaniu jednego klastra dwóm plikom (tzw. crosslinks), co kończy się
utratą danych z jednego lub obu „skrzyżowanych” plików
typowym błędem, pojawiającym się w systemie FAT, jest również
pozostawianie tzw. zagubionych klastrów (lost chains), tj. jednostek
alokacji nie zawierających informacji, ale opisanych jako zajęte
brak mechanizmów ochrony - praw dostępu
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
29/39
exFAT (FAT64)
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
30/39
NTFS (New Technology File System)
stworzony przez Microsoft na potrzeby pamięci Flash
wersja 1.0 (połowa 1993 r.) - Windows NT 3.1
po raz pierwszy pojawił się w listopadzie 2006 roku w Windows
Embedded CE 6.0 i Windows Vista SP1
wersja 1.1 (jesień 1994 r.) - Windows NT 3.5
wersja 1.2 (NTFS 4) - Windows NT 3.51 (1995 r.), Windows NT 4.0 (1996 r.)
obsługiwany także przez Windows 7, Windows 8, Windows Server 2008,
Windows Server 2003, Windows XP SP2/SP3, Linux
wersja 3.0 (NTFS 5) - Windows 2000, dużo zmian w stosunku do
poprzedniej wersji
może być używany wszędzie tam, gdzie NTFS nie jest najlepszym
rozwiązaniem ze względu na dużą nadmiarowość struktury danych
wersja 3.1 (NTFS 5.1) - Windows XP, Server 2003, Vista, Windows 7/8
podstawowe cechy:
teoretyczny rozmiar partycji NTFS wynosi 264-1 klastrów, ale Windows
potrafi obsłużyć tylko 232-1 klastrów (dla klastra 64 kB - ok. 256 TB)
maksymalna wielkość pliku to 264 = 16 EB
tabela partycji w MBR dysku twardego ogranicza rozmiar partycji do 2 TB
maksymalna wielkość klastra - do 32 MB
teoretyczna wielkość pliku wynosi 264 bajtów minus 1 kB, ale Windows
ogranicza ten rozmiar do 244 bajtów minus 64 kB (ok. 16 TB)
nieograniczona liczba plików w pojedynczym katalogu
prawa dostępu do plików i katalogów
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
31/39
NTFS
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
32/39
NTFS
struktura wolumenu (dysku) NTFS:
struktura wolumenu (dysku) NTFS:
Boot Sector rozpoczyna się od zerowego sektora partycji i może
zajmować 16 kolejnych sektorów
MFT (Master File Table) - specjalny plik, niewidoczny dla użytkownika,
pełniący rolę tablicy alokacji plików w systemie FAT - są w nim zapisane
wszystkie dane niezbędne do odczytania pliku z dysku
znajdują się w nim następujące dane:
instrukcja skoku do początku programu ładującego (3 bajty)
nazwa wersji systemu operacyjnego - OEM ID (8 bajtów)
struktura BPB - blok parametrów BIOS (25 bajtów)
rozszerzony BPB (48 bajtów)
wykonywalny kod startowy uruchamiający system operacyjny (426 bajtów)
znacznik końca Boot Sectora - 55AAH (2 bajty)
MFT - hierarchiczna, obiektowa baza danych, składająca się z rekordów
o stałej długości 1 kB - 4 kB
w każdym rekordzie zapisane są atrybuty, które jednoznacznie określają
położenie i zawartość odpowiadających im plików lub katalogów
pierwsze 16 (NTFS 4) lub 26 (NTFS 5) rekordów jest zarezerwowane dla
tzw. metaplików
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
33/39
NTFS - Metapliki w MFT
34/39
struktura wolumenu (dysku) NTFS:
Nazwa
pliku
Rekord
MFT
Funkcja pliku
Główna tablica
plików
$Mft
0
Zawiera jeden bazowy rekord dla każdego pliku w woluminie NTFS. Jeżeli
informacje dotyczące pliku lub katalogu są zbyt duże, aby zmieściły się
w pojedynczym rekordzie, to alokowane są rekordy dodatkowe - w MFT
lub poza nim.
Główna tablica
plików 2
$MftMirr
1
Kopia pierwszych czterech rekordów w MFT. Plik ten gwarantuje dostęp
do MFT w przypadku awarii pojedynczego sektora. W starszych
systemach umieszczany był w połowie woluminu, zaś w nowszych
- na jego końcu.
$LogFile
2
Zawiera listę kroków transakcji, używaną przez funkcje związane
z odzyskiwaniem NTFS, a mówiąc prościej są to informacje o wszystkich
operacjach wykonywanych na plikach i katalogach, np. kopiowanie
i kasowanie plików, przenoszenie katalogów, itp. Rozmiar pliku dziennika
zależy od rozmiaru woluminu i może osiągać do 4 MB. Plik ten jest
używany przez Windows 2000 do przywracania spójności systemu plików
po awarii systemu.
Wolumin
$Volume
3
Zawiera informacje o woluminie, takie jak jego etykieta, rozmiar i wersja
NTFS użyta do formatowania dysku.
Definicje
atrybutów
$AttrDef
4
Tabela nazw atrybutów, ich numerów i opisów.
Indeks katalogu
głównego
$
5
Katalog główny.
(log operacji
dyskowych)
dr inż. Jarosław Forenc
NTFS
Plik
systemowy
Plik dziennika
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
35/39
NTFS
struktura wolumenu (dysku) NTFS:
pozostała część pliku MFT przeznaczona jest na rekordy wszystkich
plików i katalogów umieszczonych na dysku (ok. 12,5% miejsca
na dysku)
jeśli pierwszy rekord MFT jest uszkodzony to system automatycznie
odczytuje drugi rekord, w którym zapisana jest kopia pierwszego
położenie obu metaplików $Mft i $MftMirr zapisane jest w sektorze
startowym partycji
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
36/39
NTFS - Pliki
pliki w systemie NTFS są reprezentowane w MFT przez rekord
zawierający atrybuty:
$Standard_Information
$File_Name
$Security_Descriptor
system NTFS traktuje każdy plik jako zbiór atrybutów
elementy takie jak nazwa, prawa dostępu, a nawet dane są atrybutami
wszystkie atrybuty mają dwie części składowe: nagłówek i blok danych
nagłówek zawiera informacje opisujące atrybut, np. całkowitą liczbę
bajtów zajmowanych przez atrybut, rozmiar bloku danych atrybutu,
położenie bloku danych, znacznik czasu, wskaźniki stanu
w bloku danych atrybutu znajdują się informacje zgodne
z przeznaczeniem atrybutu
$Data
w przypadku małych plików wszystkie jego atrybuty zapisywane są
bezpośrednio w MFT
$Standard_Information
(Informacje standardowe)
$File_Name
(Nazwa pliku)
$Security_Descriptor
(Opis praw dostępu)
$Data
(Dane)
jeśli wszystkie atrybuty mieszczą się wewnątrz pojedynczego rekordu
MFT, wówczas nazywane są rezydentnymi
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
37/39
NTFS - Pliki
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
38/39
NTFS - Katalogi
jeśli atrybuty pliku są duże (najczęściej dotyczy to atrybutu $Data),
to w rekordzie w MFT umieszczany jest tylko nagłówek atrybutu oraz
wskaźnik do jego bloku danych, a sam blok danych przenoszony jest
na dysk poza MFT
atrybuty niemieszczące się całkowicie w MFT nazywane są nierezydentnymi
blok danych takiego atrybutu zapisywany jest w przyległych klastrach
jeśli nie jest to możliwe, to dane zapisywane są w kilku ciągach jednostek
alokacji i wtedy każdemu ciągowi odpowiada wskaźnik w rekordzie MFT
katalogi reprezentowane są przez rekordy zawierające trzy takie same
atrybuty jak pliki:
$Standard_Information
$File_Name
$Security_Descriptor
zamiast atrybutu $Data umieszczone są trzy atrybuty przeznaczone do
tworzenia list, sortowania oraz lokalizowania plików i podkatalogów
$Index_Root
$Index_Allocation
$Bitmap
Informatyka 2, studia stacjonarne I stopnia
Rok akademicki 2015/2016, Wykład nr 6
dr inż. Jarosław Forenc
dr inż. Jarosław Forenc
Koniec wykładu nr 6
Dziękuję za uwagę!
39/39