Bezpieczeństwo systemów komputerowych - wykład II

Podobne dokumenty
Bezpieczeństwo systemów komputerowych - wykład III i IV

Bezpieczeństwo systemów komputerowych - wykład V i VI

Narzędzie konfiguracji rozruchu

Sektor. Systemy Operacyjne

Tworzenie partycji i dysków logicznych

dr inż. Jarosław Forenc

Struktura dysku. Dyski podstawowe i dynamiczne

Systemy plików FAT, FAT32, NTFS

Partition Wizard Home Edition Aplikacja przeznaczona do partycjonowania dysków twardych, obsługująca również macierze RAID oraz dyski o pojemności

Zarządzanie partycjami

Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Etapy uruchamiania systemu

1) Czym jest architektura systemu Windows 7 i jak się ją tworzy? 2) Jakie są poszczególne etapy uruchomienia systemu Windows 7?

HARD DISK MANAGER PORÓWNANIE EDYCJI

Dział Dopuszczający Dostateczny Dobry Bardzo dobry Celujący

Tomasz Greszata - Koszalin

SYSTEMY OPERACYJNE. na przykładzie. MS Windows XP

Zaawansowane funkcje systemów plików. Ewa Przybyłowicz

16MB - 2GB 2MB - 128MB

PARAGON GPT LOADER. Przewodnik

SYSTEMY OPERACYJNE WYKLAD 5 - zarządzanie pamięcią pomocniczą

MANAGER 2010 PROFESSIONALP VS. VIRTUALIZATION WIRTUALIZACJA OBSŁUGIWANE ANAGER 2010 C MANAGER 2010 CORPORATE: Funkcja. Korzyści.

PAMIĘĆ OPERACYJNA...107

Bootowalny pendrive USB z Windows

1. Podstawy...P Polecenia podstawowe...p... 18

Konwersja maszyny fizycznej na wirtualną

HARD DISK MANAGER 11 / PEŁNA LISTA FUNKCJI. HDM 11 Professional. HDM 2011 Suite. Funkcje. Partycjonowanie dysku

Przedmiot: Technologia informacyjna

Podstawy Techniki Komputerowej. Temat: BIOS

DOS COMMAND.COM. Rys. 2. Główne moduły programowe systemu operacyjnego DOS. Interpreter poleceń. Rys. 3. Warstwowa struktura systemu DOS

Podstawy informatyki. System operacyjny. dr inż. Adam Klimowicz

dr inż. Jarosław Forenc

Easy CD/DVD Recorder Instrukcja

Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows

SYSTEMY OPERACYJNE WYKŁAD 5 OBSŁUGA PAMIĘCI MASOWYCH

Jarosław Kuchta. Administrowanie Systemami Komputerowymi. System plików

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku

BIOS i BIOS SETUP. Wykład multimedialny Urządzenia techniki komputerowej

SYSTEM OPERACYJNY. Monika Słomian

Wybrane programy do tworzenia bootowalnego dysku USB

Zadanie1. Wykorzystując serwis internetowy Wikipedii wyjaśnij następujące pojęcia: wirtualizacja, VirtualBox, Vmware, KVM, Virtual PC, Hyper-V.

Architektura Komputerów

SPIS TREŚCI: KARTY GRAFICZNE... 15

Oprogramowanie Alternatywne

BIOS, tryb awaryjny, uśpienie, hibernacja

Paweł Skrobanek. C-3, pok pawel.skrobanek.staff.iiar.pwr.wroc.pl

PROJEKTOWANIE SYSTEMÓW KOMPUTEROWYCH

1. Pliki i ich organizacja

Komputery klasy PC. Dariusz Chaberski

Podstawy obsługi komputerów. Budowa komputera. Podstawowe pojęcia

Backup & Recovery 10 Home

Systemy operacyjne i sieci komputerowe Szymon Wilk System operacyjny 1

Działanie systemu operacyjnego

AE/ZP-27-16/14. Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi

Systemy Operacyjne. Część II Zarządzanie/Administracja Systemem. Wykład 4: Przestrzeń dyskowa. autor: mgr inż. Andrzej Woźniak

MSConfig, System ConfigurationUtility

BACKUP & RECOVERY 10 HOME PL

Computer Setup Instrukcja obsługi

HARD DISK MANAGER 12 / LISTA FUNKCJI. HDM 12 Professional. HDM 12 Suite. Funkcje. Partycjonowanie dysku

Technologia informacyjna. Urządzenia techniki komputerowej

Działanie systemu operacyjnego

Systemy operacyjne i sieci komputerowe Szymon Wilk Partycjonowanie 1

Narzędzie Setup Instrukcja obsługi

Zespól Szkół Ponadgimnazjalnych Nr 17 im. Jana Nowaka - Jeziorańskiego Al. Politechniki 37 Windows Serwer 2003 Instalacja

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Działanie systemu operacyjnego

Backup & Recovery 12 Home

Rejestr HKEY_LOCAL_MACHINE

Proces instalacji systemu operacyjnego Linux Red Hat 7.3 (1)

Tomasz Greszata - Koszalin

O historycznym systemie DOS. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

ZADANIE nr 4 Sprawdzian z informatyki

MIGRATE TO 3TB. Przewodnik

System komputerowy. System komputerowy

Rejestr Windows XP. Leksykon kieszonkowy

Wpisany przez Łukasz Nawrotek Poniedziałek, 20 Październik :57 - Zmieniony Poniedziałek, 20 Październik :02

1. Wprowadzenie. 2. Charakterystyka produktu:

Działanie systemu operacyjnego

1 Podstawowe informacje o BIOSie. 2 Zadania BIOSu

Formatowanie. Formatowanie to proces tworzący na dysku struktury niezbędne do zapisu i odczytu danych.

System plików przykłady. implementacji

Diagnostyka pamięci RAM

IdyllaOS. Prosty, alternatywny system operacyjny. Autor: Grzegorz Gliński. Kontakt:

Program Computer Setup

Arkusz1 Rok wprowadzenia. System plików Twórca Oryginalny system operacyjny

DESKTOP Internal Drive. Przewodnik po instalacji

Oprogramowanie Alternatywne

1. Co to jest system operacyjny

Budowa systemów komputerowych

System plików przykłady implementacji

Administracja systemem Linux

Spis Treści: Przygotowanie do instalacji lub trybu Live Testowanie systemu bez instalacji (Live) Instalacja Luwe OS Web

Instalacja Ubuntu 12.12

MultiBoot Instrukcja obsługi

Błąd pamięci karty graficznej lub Uszkodzona lub źle podpięta karta graficzna

Tworzenie pliku Zapisywanie pliku Czytanie pliku Zmiana pozycji w pliku Usuwanie pliku Skracanie pliku

Stosowanie dysków twardych nowej generacji o dużej pojemności

Sygnały DRQ i DACK jednego kanału zostały użyte do połączenia kaskadowego obydwu sterowników.

Computer Setup Instrukcja obsługi

Systemy operacyjne i sieci komputerowe Szymon Wilk Etapy uruchamiania systemu 1

T: Instalacja systemu Windows 2008 Serwer w maszynie wirtualnej VirtualBox.

Transkrypt:

Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux Bezpieczeństwo systemów komputerowych - wykład II Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2018/2019 1/28

Plan wykładu Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux 1 Uruchamianie systemu operacyjnego. 2 Struktura logiczna nośników danych. 3 Tworzenie tablicy partycji. 4 System plików FAT 12/16/32. 2/28

Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu operacyjnego Uruchamianie systemu Windows Uruchamianie systemu Linux 3/28

Plan zagadnienia Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux 1 Bootowanie 2 BIOS 3 UEFI 4 Proces uruchamiania komputera 5 Uruchamianie systemu Windows 6 Uruchamianie systemu Linux 7 4/28

Bootowanie Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux Bootowanie Proces uruchamiania się komputera i ładowania systemu operacyjnego do pamięci operacyjnej a. a http://www.i-slownik.pl Metody bootowania systemu operacyjnego: lokalny twardy dysk (MBR, GPT), dysk optyczny, napęd USB, wirtualizacja - maszyny wirtualne, po sieci (PXE). 5/28

PXE (ang. Preboot Execution Environment) Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux 6/28

BIOS (ang. Basic Input/Output System) I Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux podstawowy system wejścia / wyjścia, oprogramowanie fabrycznie zainstalowane na płycie głównej (pamięć ROM, flash), Gary Kildall, CP/M, 1975, zawiera niskopoziomowe oprogramowanie nadzorujące pracę urządzeń komputera, stanowi interfejs pomiędzy systemem operacyjnym a sprzętem, główne zadania BIOSu: przeprowadzenie testów podstawowych układów i urządzeń systemu, test POST (ang. Power On Self Test), inicjalizacja pracy systemu, zapewnienie procedur obsługi urządzeń systemu, inicjalizacja programu rozruchowego. 7/28

BIOS II Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux 8/28

BIOS III Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux Konfiguracja BIOSu: ustawienia czasu i rozpoznanie napędów, wybór priorytetu bootowania, testy twardego dysku, informacja o komponentach płyty głównej, sposoby na oszczędzanie energii, prędkość wentylatorów, temperatura i wartości graniczne, wyświetlanie BIOSu. 9/28

UEFI (ang. Unified Extensible Firmware Interface) I Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux następca BIOSu, opracowany przez firmę Intel na potrzeby procesora serwerowego Itanium (EFI), wyeliminowanie technicznych niedociągnięć poprzednika, możliwość obsługi diagnostyki i naprawy komputerów, nawet bez zainstalowanego systemu operacyjnego, możliwość pisania sterowników dla niego, własna powłoka systemowa. 10/28

UEFI II Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux 11/28

UEFI III Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux Zalety: większe dyski twarde, zintegrowany BIOS, łatwiejsza obsługa, szybszy start, więcej funkcji i więcej menu z ustawieniami, architektura i sterowniki niezależne od procesora. 12/28

BIOS vs. UEFI Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux BIOS UEFI tryb pracy 16-bit 32/64-bit pamięć operacyjna 1MB maks. dostępna interfejs tekstowy graficzny obsługa myszką nie tak obsługa dysków MBR GPT wielkość partycji do 2,2 TB ok. 10 miliardów TB liczba partycji do 4 nieograniczona (do 128 w Windows) dostęp do sieci nie tak DRM nie tak tryb pracy rzeczywisty chroniony modułowa budowa nie tak 13/28

Etapy uruchamiania komputera Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux 1 Włączenie komputera, 2 Test POST, 3 Sprawdzenie konfiguracji sprzętowej i wprowadzenie ustawień, 4 Odnalezienie elementu rozruchowego: BIOS, UEFI, 5 uruchomienie systemu operacyjnego. 14/28

POST (ang. Power On Self Test) Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux sprawdzanie obecności i prawidłowości działania układów niezbędnych do uruchomienia komputera (procesor, pamięć RAM, karta graficzna, dyski twarde), kolejność wykonywanych testów zależy od wersji BIOSu: test rejestrów procesora, sprawdzenie kontrolera klawiatury, testowanie zegara systemowego, test karty graficznej w kilku trybach graficznych, test trybu chronionego, błędy komunikowane są przez głośnik (czas trwania i liczba dźwięków oznaczają kod błędu). 15/28

BIOS: etapy 3 i 4 Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux sprawdzanie układu graficznego, sprawdzanie kontrolera DMA (ang. Direct Memory Access), sprawdzanie klawiatury (aktywacja klawisza [NumLock]), kontrola sterownika dysku, dysk twardy oraz jego połączenia, odnalezienie aktywnej partycji (przerwanie 13h), przerwanie 19h: odczyt i załadowanie do pamięci MBR (ang. Master Boot Record), odczytanie informacji o tablicy partycji, załadowanie do pamięci programu rozruchowego, przekazanie kontroli boot loaderowi, uruchomienie systemu operacyjnego. 16/28

UEFI: etap 3 i 4 Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux osobny interfejs dla usług rozruchowych i usług uruchomieniowych, korzystanie z firmware i tradycyjnego BIOSu, menadżer rozruchu (ang. boot manager) - ładowanie do pamięci i uruchomienie plików systemowych, menadżer rozruchu - interfejs tekstowy (wybór systemu operacyjnego lub narzędzia systemowego z listy dostępnych opcji rozruchowych), wykorzystanie GPT (ang. GUID Partition Table), rzadziej MBR. 17/28

Interakcje pomiędzy bootmanagerem EFI a sterownikami EFI Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux 18/28

Uruchamianie systemu Windows NT (XP) Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux MBR ładuje do pamięci NT Loadera (NTLDR), odczyt boot.ini, uruchomienie programu ntdetect.com, uruchomienie programu ntoskrnl.exe: załadowanie do pamięci zawartości pliku HAL.DLL, ładowanie sterowników sprzętowych, uruchamianie usług zdefiniowanych jako uruchamiane automatycznie, logowanie. 19/28

Uruchamianie systemu Windows Vista, 2008 Server Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux MBR ładuje do pamięci Windows Boot Manager (BOOTMGR), dostęp do Boot Configuration Data wywołanie boot loadera: winload.exe - uruchomienie komputera, winresume.exe - komputer w stanie hibernacji, załadowanie jądra systemu ntoskrnl.exe, ładowanie sterowników sprzętowych, uruchamianie usług zdefiniowanych jako uruchamiane automatycznie, logowanie. 20/28

Uruchamianie systemu Windows >= 8 Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux... wywołanie boot loadera:... winload.efi - uruchomienie komputera, winresume.efi - komputer w stanie hibernacji, Hibernowanie jądra podczas zamykania systemu przyspieszenie bootowania. 21/28

Uruchamianie systemu Linux I Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux dla MBR - program ładujący, dla UEFI - jądro uruchamiane bezpośrednio, program ładujący - menu możliwych opcji rozruchu, rozpakowanie jądra, ustawienie funkcji systemowych, wywołanie funkcji start_kernel(), uruchomienie procesu bezczynności, program planujący i proces init, uruchomienie środowiska graficznego, uruchomienie sesji (po zalogowaniu). 22/28

Uruchamianie systemu Linux II Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux Programy rozruchowe: GNU GRUB Stage 1: program ładujący (boot.img) - wykrywanie i uzyskiwanie dostępu do różnych systemów plików, z których później można odczytać konfigurację, Stage 1.5: pośredni program ładujący - gdy program ładujący drugiego stopnia nie jest ciągły lub jeśli system plików lub sprzęt wymaga specjalnej obsługi w celu uzyskania dostępu do drugiego etapu, Stage 2: załadowany jako ostatni, wyświetla menu startowe GRUB, po wybraniu pozycji menu i podaniu parametrów opcjonalnych GRUB ładuje jądro do pamięci i przekazuje do niego kontrolę. 23/28

Uruchamianie systemu Linux IV Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux LILO (LInux LOader) odczytuje swoje ustawienia z pliku /etc/lilo.conf, komunikaty podczas ładowania: (nic) - żadna część LILO nie została załadowana, L - program ładujący st. 1 został załadowany i uruchomiony, ale nie może załadować programu ładującego st. 2, LI -program ładujący st. 1 był w stanie załadować program ładujący st. 2, ale nie udało mu się go uruchomić, LIL - uruchomiono program ładujący st. 2, ale nie można załadować tabeli deskryptorów, LIL? - program ładujący st. 2 został załadowany pod nieprawidłowym adresem, LILO - wszystkie części LILO zostały pomyślnie załadowane. 24/28

Uruchamianie systemu Linux VI Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux Jądro systemu: zadania jądra systemu: obsługa wszystkich procesów systemu operacyjnego (zarządzanie pamięcią, planowanie zadań, operacje we/wy, komunikacja międzyprocesowa i ogólna kontrola systemu), uruchamianie jądra: ładowanie jądra - skompresowany plik obrazu jądra jest ładowane do pamięci i dekompresowane, konfiguracja podstawowych funkcji, uruchamianie jądra - funkcja startowa jądra ustanawia zarządzanie pamięcią, wykrywa typ procesora i wszelkie dodatkowe funkcje, wywołuje funkcję start_kernel(), funkcja start_kernel(). 25/28

Uruchamianie systemu Linux V Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux Proces init: pierwszy proces uruchamiany przez jądro, jest bezpośrednim lub pośrednim przodkiem wszystkich innych procesów, czuwa, aby wszystko działało tak, jak powinno: obsługa przestrzeni użytkownika, sprawdzanie i montowanie systemów plików, uruchamianie niezbędnych usług użytkownika, przełączanie się do środowiska użytkownika po zakończeniu uruchamiania systemu. 26/28

Porównanie bootloaderów Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux http://en.wikipedia.org/wiki/comparison_of_boot_loaders metoda uruchamiania, źródło uruchamiania, system operacyjny, informacje techniczne. 27/28

Bootowanie BIOS UEFI Proces uruchamiania komputera Uruchamianie systemu Windows Uruchamianie systemu Linux Arpaci-Dusseau, Remzi H.; Arpaci-Dusseau, Andrea C. (2014). Operating Systems: Three Easy Pieces, Chapter: Hard Disk Drives" Mueller S.: Rozbudowa i naprawa komputerów, Helion Metzger P.: Anatomia PC, Helion Mark Minasi, John Enck.: Troubleshooting NT Boot Failures" www.uefi.org/specifications tldp.org/ldp/intro-linux/html/index.html upstart.ubuntu.com/cookbook thestarman.pcministry.com/asm/mbr/grub.htm thestarman.pcministry.com/asm/mbr/lilombr.htm 28/28

MBR PT VBR GPT Struktura logiczna nośników danych 1/27

Plan wykładu 1 Master Boot Record MBR PT VBR GPT 2 Tablica partycji 3 Volume Boot Record 4 GUID Partition Table 5 2/27

Master Boot Record MBR PT VBR GPT główny rekord rozruchowy, początek partycjonowanych urządzeń pamięci masowej komputera, zawiera: informacje o organizacji partycji na nośniku, kod boot loadera, zastępowany przez (GPT) na nowych komputerach, może współistnieć z GPT. 3/27

Budowa MBR MBR PT VBR GPT 512 bajtów 446 bajtów 64 bajty (4 x 16) 2 bajty program partycja partycja partycja partycja rozruchowy 1 2 3 4 55AA 4/27

MBR - Windows 98 MBR PT VBR GPT Źródło: http://thestarman.pcministry.com/ 5/27

MBR - Linux GRUB MBR PT VBR GPT Źródło: http://thestarman.pcministry.com/ 6/27

MBR - Linux LILO MBR PT VBR GPT Źródło: http://thestarman.pcministry.com/ 7/27

Wersje MBR MBR PT VBR GPT Pierwsze dwa bajty MBR wskazują na jego wersję: FA 33 - DOS 3.3 - Windows 95A 33 C0 - Windows 95B, 98, 98SE, ME, 2000, XP, Vista EB 48 - Linux GRUB FA EB - Linux LILO EB 3C - Windows Floppy Disk boot record 8/27

Modyfikacje MBR MBR PT VBR GPT Ze względu na system operacyjny: zmniejszenie rozmiaru i podział na części programu rozruchowego, dodanie znacznika czasowego dysku, dodanie sygnatury dysku, rozszerzenie liczby partycji. 9/27

Tablica partycji (ang. Partition Table) MBR PT VBR GPT tnie dysk na partycje: obsługa systemów plików, oddzielenie systemu od danych, MBR zawiera deskryptory dla 4 partycji, ten sam format wpisów dla partycji podstawowej i rozszerzonej, partycja rozszerzona - sektor początkowy zostanie wykorzystany do zlokalizowania pierwszego sektora partycji rozszerzonej (EBR). 10/27

Wpis w tablicy partycji MBR PT VBR GPT Offset Rozmiar Opis +0h 1 bajt Status: 80h - partycja bootowalna, 00h - partycja niebootowalna +1h 3 bajty Adres CHS pierwszego sektora partycji: 1 bajt - numer głowicy 1 bajt - numer sektor 1 bajt - numer cylindra +4h 1 bajt Typ partycji +5h 3 bajty Adres CHS ostatniego sektora partycji +8h 4 bajty Adres LBA pierwszego sektora partycji +Ch 4 bajty Liczba sektorów w partycji 11/27

Typy partycji MBR PT VBR GPT 00 Empty 05 Extended DOS 3.3+ extended partition 06 DOS 3.31+ Large File System (16-bit FAT, over 32M) 07 WindowsNT NTFS 08 Commodore Commodore DOS 0B Windows95 with 32-bit FAT 81 Linux Linux 82 Linux/Swap Linux Swap partition 82 Solaris Solaris (Unix) 85 Linux Linux EXT FB VMWARE vmware partition FM VMware VMware raw partition Źródło: https: //www.win.tue.nl/~aeb/partitions/partition_types-1.html 12/27

Tablica partycji przykład MBR PT VBR GPT 13/27

Partycja rozszerzona MBR PT VBR GPT EBR (ang. Extended Boot Record) deskryptor dysku logicznego 446 B Kod wykonywalny, nieużywane, wypełnione zerami. 16 B Pierwszy wpis w PT, wskaźnik do dysku logicznego. Sektor początkowy - przesunięcie między tym sektorem EBR a pierwszym sektorem partycji logicznej. Zwykle 63 sektory. Liczba sektorów - całkowita liczba sektorów danych dla tej partycji logicznej. 16 B Drugi wpis w PT, wskazuje na kolejny EBR w łańcuchu, ostatni EBR - 0 B. Sektor początkowy - adres względny następnego EBR w rozszerzonej partycji. Liczba sektorów - całkowita liczba sektorów dla następnej partycji logicznej, rozpoczynająca liczenie w EBR. 16 B Trzeci wpis w PT, nieużywane, wypełnione zerami. 16 B Czwarty wpis w PT, nieużywane, wypełnione zerami. 2 B Magic number 55AA 14/27

Volume Boot Record MBR PT VBR GPT rekord rozruchowy woluminu (partycji), pierwszy sektor pojedynczej partycji na urządzeniu, wywoływany bezpośrednio przez oprogramowanie sprzętowe komputera lub pośrednio przez kod w MBR, 512 B, zawartość zależna od systemu plików, FAT12 (z wyjątkiem DOS 1.x), FAT16, FAT32, HPFS, NTFS VBR zawiera również blok parametrów BIOSu (ang. BIOS Paremeter Block). 15/27

VBR dla partycji NTFS MBR PT VBR GPT Źródło: http://thestarman.narod.ru/asm/mbr/w7vbr.htm 16/27

Podział dysku I MBR PT VBR GPT 17/27

Podział dysku II MBR PT VBR GPT 1. MBR 2. Zerowa ścieżka (62 sektory) 3., 4., 6. Pierwsza, druga i czwarta partycja podstawowa 7. Wolna przestrzeń 5. Trzecia partycja - rozszerzona 8. Pierwszy sektor EBR w rozszerzonej partycji 9: Przestrzeń międzywymiarowa (ścieżka zerowa) 10., 13., 16. Wolna przestrzeń 11. EBR dla partycji logicznej znajdującej się pod 12, także wskaźnik dla sektora EBR wskazującego na 14 12. Prawidłowa partycja logiczna 14. Ostatni EBR w rozszerzonej partycji 15. Prawidłowa partycja logiczna 18/27

GUID Partition Table I MBR PT VBR GPT układ tabeli partycji, stanowiący część standardu Unified Extensible Firmware Interface (UEFI), 64-bitowe wartości do adresowania (LBA) - obsługa wielu partycji (do 128 w Windows), pierwsza partycja na dysku twardym zaczyna się od LBA 34. 19/27

GUID Partition Table II MBR PT VBR GPT Źródło: https://www.disk-partition.com/gpt-mbr/gpt-guid-partition-table-disk-1203.html 20/27

GUID Partition Table III MBR PT VBR GPT Protective MBR - zapewnienie kompatybilności wstecznej dla narzędzi, które nie rozumieją systemu GPT (LBA 0), Primary GTP: Primary GTP Header (LBA 1): określa dostępne miejsce na dysku, układ tabeli, liczbę elementów, rejestruje identyfikator partycji dysku GPT oraz rozmiar i położenie nagłówka tabeli partycji, położenie nagłówka kopii zapasowej tabel, przechowuje sumę kontrolną tabeli partycji, Partition Entry Array - tablica wpisów partycji, Secondary GTP - kopia zapasowa Primary GTP. 21/27

GUID Partition Table IV MBR PT VBR GPT Źródło: Nikkel J.: Forensic analysis of GPT disks and GUID partition tables 22/27

GUID Partition Table V MBR PT VBR GPT Źródło: Nikkel J.: Forensic analysis of GPT disks and GUID partition tables 23/27

GUID Partition Table VI MBR PT VBR GPT Zawartość wpisu w tablicy partycji: Długość Opis 16 B Typ partycji 16 B Unikalny identyfikator partycji 8 B Początek parytcji LBA (little endian) 8 B Koniec partycji LBA 8 B Flagi atrybutów 72 B Nazwa partycji 24/27

GPT Protective MBR MBR PT VBR GPT Źródło: http://thestarman.pcministry.com/asm/mbr/gpt.htm 25/27

Nagłówek GPT MBR PT VBR GPT Źródło: http://thestarman.pcministry.com/asm/mbr/gpt.htm 26/27

MBR PT VBR GPT Wykorzystano następujące materiały: https://www.win.tue.nl/~aeb/partitions/ partition_types-1.html http://thestarman.narod.ru/ http://www.uefi.org/specifications Metzger P.: Anatomia PC, Helion Mueller S.: Rozbudowa i naprawa komputerów, Helion Nikkel J.: Forensic analysis of GPT disks and GUID partition tables 27/27

Tworzenie tablicy partycji 1/10

System szesnastkowy 0hex 0dec 0000 1hex 1dec 0001 2hex 2dec 0010 3hex 3dec 0011 4hex 4dec 0100 5hex 5dec 0101 6hex 6dec 0110 7hex 7dec 0111 8hex 8dec 1000 9hex 9dec 1001 Ahex 10dec 1010 Bhex 11dec 1011 Chex 12dec 1100 Dhex 13dec 1101 Ehex 14dec 1110 Fhex 15dec 1111 2/10

Potęgi dwójki 2 0 1 2 16 65536 2 1 2 2 17 131072 2 2 4 2 18 262144 2 3 8 2 19 524288 2 4 16 2 20 1048576 2 5 32 2 21 2097152 2 6 64 2 22 4194304 2 7 128 2 23 8388608 2 8 256 2 24 16777216 2 9 512 2 25 33554432 2 10 1024 2 26 67108864 2 11 2048 2 27 134217728 2 12 4096 2 28 268435456 2 13 8192 2 29 536870912 2 14 16384 2 30 1073741824 2 15 32768 2 31 2147483648 3/10

Przykładowa tablica partycji w MBR I Dysk 20 GB Boot? Początkowy Końcowy Typ H S C H S C LBA Liczba sektorów 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 00 00 C1 6E 0C FE FF FF EE 39 D7 00 BD 86 BB 00 00 FE FF FF 83 FF FF FF AB C0 92 01 CD 2F 03 00 00 FE FF FF 0F FF FF FF 78 F0 95 01 83 AF CC 00 4/10

Przykładowa tablica partycji w MBR II Boot? Początkowy Końcowy Typ H S C H S C LBA Liczba sektorów 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 00 00 C1 6E 0C FE FF FF EE 39 D7 00 BD 86 BB 00 00 FE FF FF 83 FF FF FF AB C0 92 01 CD 2F 03 00 00 FE FF FF 0F FF FF FF 78 F0 95 01 83 AF CC 00 Boot? Początkowy Końcowy Typ H S C H S C LBA Liczba sektorów x a b x + 1 y a + b c y + 1 a + b + c 5/10

Przykładowa tablica partycji w MBR II Boot? Początkowy Końcowy Typ H S C H S C LBA Liczba sektorów 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 00 00 C1 6E 0C FE FF FF EE 39 D7 00 BD 86 BB 00 00 FE FF FF 83 FF FF FF AB C0 92 01 CD 2F 03 00 00 FE FF FF 0F FF FF FF 78 F0 95 01 83 AF CC 00 Boot? Początkowy Końcowy Typ H S C H S C LBA Liczba sektorów x a b x + 1 y a + b c y + 1 a + b + c 5/10

Pierwsza partycja I Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 1. Czy bootowalna? 80 - Tak, 00 - nie. 2. Adres pierwszego sektora partycji CHS: H - 01hex - 1 S - 01hex - 1 C - 00hex - 0 CHS (0, 1, 1) 6/10

Pierwsza partycja II Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 3. Typ partycji: 07hex - NTFS 4. Adres ostatniego sektora partycji CHS: H - FEhex - (pole 8 bitowe) 1111 1110-254dec S - FFhex - (pole 6 bitowe) 1111 1111-63dec C - 6Dhex - (pole 10 bitowe) 11 0110 1101-887 dec 7/10

Pierwsza partycja II Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 3. Typ partycji: 07hex - NTFS 4. Adres ostatniego sektora partycji CHS: H - FEhex - (pole 8 bitowe) 1111 1110-254dec S - FFhex - (pole 6 bitowe) 1111 1111-63dec C - 6Dhex - (pole 10 bitowe) 11 0110 1101-887 dec 7/10

Pierwsza partycja II Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 3. Typ partycji: 07hex - NTFS 4. Adres ostatniego sektora partycji CHS: H - FEhex - (pole 8 bitowe) 1111 1110-254dec S - FFhex - (pole 6 bitowe) 1111 1111-63dec C - 6Dhex - (pole 10 bitowe) 11 0110 1101-887 dec 7/10

Pierwsza partycja II Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 3. Typ partycji: 07hex - NTFS 4. Adres ostatniego sektora partycji CHS: H - FEhex - (pole 8 bitowe) 1111 1110-254dec S - FFhex - (pole 6 bitowe) 1111 1111-63dec C - 6Dhex - (pole 10 bitowe) 11 0110 1101-887 dec 7/10

Pierwsza partycja II Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 3. Typ partycji: 07hex - NTFS 4. Adres ostatniego sektora partycji CHS: H - FEhex - (pole 8 bitowe) 1111 1110-254dec S - FFhex - (pole 6 bitowe) 1111 1111-63dec C - 6Dhex - (pole 10 bitowe) 11 0110 1101-887 dec 7/10

Pierwsza partycja II Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 3. Typ partycji: 07hex - NTFS 4. Adres ostatniego sektora partycji CHS: H - FEhex - (pole 8 bitowe) 1111 1110-254dec S - FFhex - (pole 6 bitowe) 1111 1111-63dec C - 6Dhex - (pole 10 bitowe) 11 0110 1101-887 dec 7/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja III Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C 80 01 01 00 07 FE FF 6D 3F 00 00 00 AF 39 D7 00 5. Adres LBA pierwszego sektora (little endian!): 3F 00 00 00 -> 00 00 00 3F -> 63dec 6. Liczba sektorów w partycji (little endian!): AF 39 D7 00 -> 00 D7 39 AF -> 1101 0111 0011 1001 1010 1111 -> 14 105 007 dec Sprawdzenie: C x H x S = 878 1 x 255 x 63 = 14 105 070 sektorów 14 105 070-63 2 = 14 105 007 sektorów 1 C, H są indeksowane od 0 2 Początek partycji 8/10

Pierwsza partycja IV 7. Pojemność partycji: 14 105 007 sektorów x 512 B = 7 221 763 584 B = 6,73 GiB 8. Wartości decymalne: Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C T 1 1 0 NTFS 254 63 877 63 14 105 007 9/10

Pierwsza partycja IV 7. Pojemność partycji: 14 105 007 sektorów x 512 B = 7 221 763 584 B = 6,73 GiB 8. Wartości decymalne: Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C T 1 1 0 NTFS 254 63 877 63 14 105 007 9/10

Pierwsza partycja IV 7. Pojemność partycji: 14 105 007 sektorów x 512 B = 7 221 763 584 B = 6,73 GiB 8. Wartości decymalne: Początkowy Końcowy Boot? Typ LBA Liczba sektorów H S C H S C T 1 1 0 NTFS 254 63 877 63 14 105 007 9/10

Pozostałe partycje Boot? Początkowy Końcowy Typ H S C H S C LBA L. sektorów T 1 1 0 NTFS 254 63 877 63 14 105 007 N 1 0 878 FAT32 PZ PZ PZ 14 105 070 12 289 725 N PZ PZ PZ Linux ext2 PZ PZ PZ 26 394 795 208 845 N PZ PZ PZ Extended PZ FF PZ 260 603 640 13 414 275 PZ - poza zakres adresacji CHS Pojemności partycji: 1. 14105007 x 512 B = 72 21 763 584 B = 6,73 GiB 2. 12289725 x 512 B = 62 92 339 200 B = 5,86 GiB 3. 208845 x 512 B = 106 928 640 B = 0,1 GiB 4. 13414275 x 512 B = 6 868 108 800 B = 6,4 GiB 10/10

System plików FAT FAT 12 FAT 16 System plików FAT 12/16/32 FAT 32 1/30

Plan wykładu System plików FAT FAT 12 FAT 16 FAT 32 1 System plików 2 System plików FAT 3 System plików FAT 12 4 System plików FAT 16 5 System plików FAT 32 6 2/30

System plików I System plików FAT FAT 12 FAT 16 FAT 32 3/30

System plików I System plików FAT FAT 12 FAT 16 FAT 32 4/30

System plików I System plików FAT FAT 12 FAT 16 FAT 32 5/30

System plików I System plików FAT FAT 12 FAT 16 FAT 32 6/30

System plików II System plików FAT FAT 12 System plików Metoda przechowywania plików, zarządzania plikami i informacjami o nich, w taki sposób, aby dostęp do plików i danych w nich zgromadzonych był łatwy dla użytkownika systemu. FAT 16 FAT 32 Przykłady systemów plików: Linux: ext, ext2, ext3, ext4, ReiserFS, JFS, XFS, DOS: FAT12, FAT16, Windows: FAT32, exfat, NTFS. 7/30

Rodzaje systemów plików System plików FAT FAT 12 FAT 16 FAT 32 8/30

System plików FAT System plików FAT FAT 12 FAT 16 FAT 32 ang. File Allocation Table, ze względu na kompatybilność, obsługiwany przez prawie wszystkie obecnie opracowane systemy operacyjne (komputery osobiste, urządzenia mobilne, systemy wbudowane), 1977, dyskietki -> dyski twarde (DOS, Windows 9x), kolejne wersje: FAT12, FAT16, FAT32, wykorzystuje tabelę indeksów (tablica alokacji plików), wykorzystanie FAT przez UEFI. 9/30

Tablica alokacji plików I System plików FAT FAT 12 FAT 16 FAT 32 informacje przechowywane w porcjach zwanych sektorami, partycja podzielona na klastry (jednostki alokacji pliku), numer klastra umożliwia obliczenie: numeru logicznego sektora, numeru ścieżki, głowicy i sektora na ścieżce klaster w całości jest przydzielany jednemu plikowi: plik w katalogu - numer pierwszego klastra pliku, dalsze części pliku - wpis w FAT, w tablicy alokacji: numer klastra pierwszej części pliku wskazuje na numer kolejnego klastra pliku. 10/30

Tablica alokacji plików II System plików FAT FAT 12 FAT 16 FAT 32 0000h - wolny klaster, FFF7h - uszkodzony klaster, FFF8h-FFFFh - ostatni klaster pliku, FFF0h-FFF6h - zarezerwowany klaster. Źródło rysunku: http://www.byu.edu/ 11/30

Tablica alokacji plików III System plików FAT FAT 12 FAT 16 FAT 32 Zalety i wady: szybkie odszukanie miejsca dla nowego pliku, łatwe odszukiwanie kolejnych części plików, duża partycja - duży klaster - niewykorzystane miejsce, fragmentacja, problemy z modyfikacją tablicy alokacji. 12/30

Fragmentacja i defragmentacja System plików FAT FAT 12 FAT 16 FAT 32 Fragmentacja Zjawisko polegające na występowaniu nieciągłości obszarów zapisanych i niezapisanych na dysku twardym komputera, skutkujące spadkiem wydajności operacji na plikach. Przyczyny: - wadliwa budowa systemu plików (problemy z algorytmami alokacji danych), - usuwanie, dodawanie i modyfikowanie nowych plików. Defragmentacja Proces scalania pofragmentowanych danych na dysku w celu uzyskania większej wydajności operacji na plikach. 13/30

Zalety defragmentacji System plików FAT FAT 12 FAT 16 FAT 32 Źródło: www.demotywatory.pl 14/30

Budowa partycji FAT System plików FAT FAT 12 FAT 16 FAT 32 Partycja FAT dzieli się na 4 obszary: 1. Zarezerwowany - Volume Boot Record, BIOS Parameter Block, Boot Loader, 2. Tablica alokacji znajduje się za boot sektorem, 3. Katalog główny (w FAT32 nie istnieje w tej formie), 4. Dane - wszystkie dane, obszar podzielony na logiczne struktury. 15/30

Struktura katalogu I System plików FAT FAT 12 FAT 16 FAT 32 Każdy plik na dysku znajduje się w jakimś katalogu. Czym zatem jest katalog? Katalog jest: plikiem (specjalna struktura), tablicą (informacje o plikach i podkatalogach, wskaźniki) Informacje w pliku katalogu: 8 bajtów - nazwa pliku, 3 bajty - rozszerzenie, 1 bajt - atrybuty pliku, 1 bajt - wielkość liter, 1 bajt - czas utworzenia w milisekundach, 16/30

Struktura katalogu I System plików FAT FAT 12 FAT 16 FAT 32 Każdy plik na dysku znajduje się w jakimś katalogu. Czym zatem jest katalog? Katalog jest: plikiem (specjalna struktura), tablicą (informacje o plikach i podkatalogach, wskaźniki) Informacje w pliku katalogu: 8 bajtów - nazwa pliku, 3 bajty - rozszerzenie, 1 bajt - atrybuty pliku, 1 bajt - wielkość liter, 1 bajt - czas utworzenia w milisekundach, 16/30

Struktura katalogu II System plików FAT FAT 12 FAT 16 FAT 32 Informacje w pliku katalogu: 2 bajty - czas utworzenia, 2 bajty - data utworzenia, 2 bajty - czas ostatniego dostępu, 2 bajty - zarezerwowane, 2 bajty - czas utworzenia lub ostatniej modyfikacji pliku, 2 bajty - data utworzenia lub ostatniej modyfikacji pliku, 2 bajty - numer klastera (początek pliku), 4 bajty - rozmiar pliku.. (kropka) - bieżący katalog,.. (dwie kropki) - katalog nadrzędny, E5h - plik został skasowany. 17/30

Plik System plików FAT FAT 12 FAT 16 FAT 32 nazwa + rozszerzenie, nazwa - od 1 do 8 dowolnych znaków, rozszerzenie - od 0 do 3 znaków, problem długich nazw, aliasowanie nazw. 18/30

Błędy występujące w systemie FAT System plików FAT FAT 12 FAT 16 FAT 32 Utrata klastrów, metody naprawy: kopiowanie tablicy alokacji plików do pamięci, przechodzenie począwszy od katalogu głównego poprzez wszystkie pliki i katalogi i zaznaczanie ich jako używanych, porównanie wygenerowanej tablicy używanych klastrów, z tablica przechowywaną w pamięci, zapisanie utraconych klastrów jako pliki. skrzyżowanie klastrów, uszkodzone pliki i katalogi, błędy w tablicy alokacji plików. 19/30

Wpis w tablicy alokacji System plików FAT FAT 12 FAT 16 FAT 32 20/30

System plików FAT 12 System plików FAT FAT 12 FAT 16 FAT 32 Microsoft, MS/PC-DOS, 1981 r., wprowadzony dla stacji dyskietek (FDD), 12 bitowe wpisy adresów klastrów, 4078 klastrów do zaadresowania rozmiar klastra od 512 B do 4 kb, maksymalny rozmiar partycji - 16 MB. 21/30

System plików FAT 16 System plików FAT FAT 12 FAT 16 FAT 32 Microsoft, MS-DOS 3, 1987 r., 16-bitowe adresowanie przy dostępie do plików, 65536 klastrów, ograniczenie wielkości pliku do 2 GB, nierozróżnianie wielkości liter w nazwach plików, ograniczenie długości nazw plików do 12 znaków (8 + 3). 22/30

System plików FAT 32 I System plików FAT FAT 12 FAT 16 FAT 32 Microsoft, Windows 95 OSR2, 1996 r., adresowanie 32-bitowe, 28 b numer klastra, obsługiwany przez systemy uniksowe, bardziej wytrzymałe od poprzedników, obsługuje dyski o rozmiarze do 2 TB, maksymalny rozmiar partycji FAT32-2 TB (sektor 512 bajtów), 16 TB (sektor 4096 bajtów), maksymalny rozmiar pliku - 4 GB (4 294 967 295 B), maksymalna długość nazwy pliku 255 znaków, znaczniki czasowe tworzenia, ostatniego dostępu i ostatniej zmiany. 23/30

VBR partycji FAT 32 I System plików FAT FAT 12 FAT 16 FAT 32 Budowa Volume Boot Record dla partycji FAT 32: 3 B Instrukcja skoku 8 B Identyfikator systemu 53 B BIOS Parameter Block 26 B Extended BPB 420 B Kod rozruchowy 2 B Magic number 24/30

VBR partycji FAT 32 II System plików FAT FAT 12 FAT 16 FAT 32 25/30

BPB i Extended BPB I System plików FAT FAT 12 FAT 16 FAT 32 Offset Rozmiar Wartość Nazwa pola +0B WORD 0002 Liczba bajtów w sektorze +0D 1 B 40 Liczba sektorów w klastrze +0E WORD 0100 Liczba zarezerwowanych sektorów +10 1 B 02 Liczba kopii FAT +11 WORD 0002 Liczba wpisów w katalogu głównym +13 WORD 0000 Małe sektory +15 1 B F8 Typ nośnika +16 WORD FC00 Liczba sektorów przeznaczonych na FAT +1A WORD 3F00 Liczba sektorów na ścieżkę +1C WORD 4000 Liczba głowic +1C DWORD 3F000000 Liczba ukrytych sektorów +20 DWORD 01F03E00 Duże sektory 26/30

BPB i Extended BPB II System plików FAT FAT 12 FAT 16 FAT 32 Offset Rozmiar Wartość Nazwa pola +24 1 B 80 Fizyczny numer dysku +25 1 B 00 Nie używane +26 1 B 29 Sygnatura +27 4 B A88B3652 Numer seryjny woluminu +2B 11 B 4E4F204E41 Etykieta woluminu 4D4520202020 +36 8 B 464154313620 2020 Suma kontrolna 27/30

FAT vs. Linux System plików FAT FAT 12 FAT 16 FAT 32 Linux posiada sterowniki systemu plików FAT. mount Polecenie służące do montowania systemu plików. mount -a -t nazwa_systemu_plikow System plików: adfs, affs, autofs, cifs, coda, coherent, cramfs, debugfs, devpts, efs, ext, ext2, ext3, ext4, hfs, hfsplus, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, nfs4, ntfs, proc, qnx4, ramfs, reiserfs, romfs, squashfs, smbfs, sysv, tmpfs, ubifs, udf, ufs, umsdos, usbfs, vfat, xenix, xfs, xiafs. Więcej: http://linux.die.net/man/8/mount 28/30

System plików FAT FAT 12 FAT 16 FAT 32 Wykorzystano następujące materiały: http://microsoft.com http://linux.die.net/man/8/mount 29/30

System plików FAT FAT 12 FAT 16 Dziękuję za uwagę! FAT 32 30/30