System plików przykłady implementacji

Podobne dokumenty
System plików przykłady. implementacji

System plików przykłady implementacji. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

System plików. - warstwa logiczna. - warstwa fizyczna. - przykłady implementacji. Systemy operacyjne Wykład 6 1

System plików. Systemy operacyjne System plików 1. Pojęcie pliku (ang. file)

System plików. Atrybuty pliku. Typy plików. Pojęcie pliku (ang. file) Zadania systemu operacyjnego. Struktura pliku. Dariusz Wawrzyniak 1

dr inż. Jarosław Forenc

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

System plików warstwa fizyczna

System plików warstwa fizyczna

System plików warstwa fizyczna

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

System plików warstwa logiczna

dr inż. Jarosław Forenc

Systemy operacyjne System plików

Zarządzanie dyskowymi operacjami we-wy. Zarządzanie pamięcią operacyjną. dr inż. Jarosław Forenc. systemy plików (NTFS, ext2)

System plików. Warstwowy model systemu plików

System plików. System plików. Operacje plikowe. Inne operacje. Typy plików. Typy dostępu do plików

System plików. Definicje:

Sektor. Systemy Operacyjne

dr inż. Jarosław Forenc

Wbudowane systemy operacyjne

Zarządzanie dyskowymi operacjami we-wy. Zarządzanie pamięcią operacyjną. dr inż. Jarosław Forenc

Zarządzanie dyskowymi operacjami we/wy. Zarządzanie pamięcią operacyjną. dr inż. Jarosław Forenc. Algorytm FIFO (First-In-First-Out)

dr inż. Jarosław Forenc

System plików. dr inż. Krzysztof Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski

Zarządzanie wolną przestrzenią

dr inż. Jarosław Forenc

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

System plików Linuksa

16MB - 2GB 2MB - 128MB

System operacyjny. dr inż. Jarosław Forenc. definicja systemu operacyjnego zarządzanie procesami zarządzanie dyskowymi operacjami we-wy

Zarządzanie wolną przestrzenią

Systemy plików i zarządzanie pamięcią pomocniczą. Struktura pliku. Koncepcja pliku. Atrybuty pliku

1. Pliki i ich organizacja

System plików warstwa fizyczna. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania

PODSTAWY BAZ DANYCH Wykład 6 4. Metody Implementacji Baz Danych

System plików warstwa logiczna. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Tadeusz Pankowski

Zarządzanie pamięcią operacyjną

System plików i zarządzanie pamięcią pomocniczą. Koncepcja pliku. Atrybuty pliku. Struktura pliku. Typ pliku nazwa, rozszerzenie (extension)

Informatyka 2. Wykład nr 7 ( ) Politechnika Białostocka. - Wydział Elektryczny. dr inŝ. Jarosław Forenc

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

Celem wykładu jest prezentacja różnych podejść do implementacji systemu plików. Podejścia opierają się na założeniu, że urządzeniem składowania

Bazy danych - BD. Indeksy. Wykład przygotował: Robert Wrembel. BD wykład 7 (1)

UNIX SYSTEM PLIKÓW. UNIX System plików

NTFS omówienie systemu plików. autor: Julian Krzemiński Źródła:

< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >

PLAN WYKŁADU BAZY DANYCH HIERARCHIA MECHANIZMÓW SKŁADOWANIA PRZECHOWYWANIA BAZ DANYCH

Systemy plików FAT, FAT32, NTFS

Bazy danych. Andrzej Łachwa, UJ, /15

dr inŝ. Jarosław Forenc

Podstawowe wiadomości o systemach plików.

Przykładowe B+ drzewo

Fizyczna organizacja danych w bazie danych

Podstawy Informatyki. Metody dostępu do danych

sprowadza się od razu kilka stron!

WINDOWS NT. Diagram warstw systemu Windows NT

Zarządzanie pamięcią operacyjną

Architektura komputerów

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

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

KOMPONENTY SYSTEMÓW OPERACYJNYCH

Wstęp do Informatyki. Reprezentacja liczb w komputerze Arytmetyka stało- i zmiennoprzecinkowa Przechowywanie danych pliki i foldery

Porównanie systemów plików ze względu na możliwość odzyskania utraconych danych.

Lokalne systemy plików

Tabela wewnętrzna - definicja

Zakład Usług Informatycznych OTAGO

Algorytmy i. Wykład 5: Drzewa. Dr inż. Paweł Kasprowski

Haszowanie (adresowanie rozpraszające, mieszające)

I. Interfejs systemu plików. Implementacja systemu plików.

Steganograficzny system plików

PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew

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

obszar bezpośrednio dostępny dla procesora rozkazy: load, store (PAO rejestr procesora)

Programowanie na poziomie sprzętu. Tryb chroniony cz. 1

Zintegrowany System Zarządzania Biblioteką SOWA2/MARC21 OBSŁUGA CZASOPISM

Podstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

System plików NTFS. Charakterystyka systemu plików NTFS

Plan wykładu. Klucz wyszukiwania. Pojęcie indeksu BAZY DANYCH. Pojęcie indeksu - rodzaje indeksów Metody implementacji indeksów.

Pamięć. Jan Tuziemski Źródło części materiałów: os-book.com

WPROWADZENIE DO BAZ DANYCH

Zarządzanie pamięcią w systemie operacyjnym

System operacyjny UNIX system plików. mgr Michał Popławski, WFAiIS

wykład Organizacja plików Opracował: dr inż. Janusz DUDCZYK

Materiały pomocnicze 1

Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii. Materiały pomocnicze do zajęć z przedmiotu SYSTEMY OPERACYJNE

Podstawy Informatyki. Wykład 6. Struktury danych

Architektura komputerów

Zarządzanie pamięcią operacyjną zagadnienia podstawowe

Operacje na plikach. Organizacja systemu plików. Typy plików. Struktury plików. Pliki indeksowane. Struktura wewn etrzna

Architektura Komputerów

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

Wstęp BTRFS Podsumowanie. System plików BTRFS. Maciej Łaszcz

System plików JFS. 1 Najważniejsze informacje. Mateusz Zakrzewski. 18 stycznia JFS to skrót od Journalled File System.

Schematy zarzadzania pamięcia

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86

Organizacja systemu plików

Zarządzanie pamięcią. Od programu źródłowego do procesu. Dołączanie dynamiczne. Powiązanie programu z adresami w pamięci

Od programu źródłowego do procesu

Transkrypt:

System plików przykłady implementacji Dariusz Wawrzyniak CP/M MS DOS ISO 9660 UNIX NTFS Plan wykładu System plików (2) Przykłady implementacji systemu plików (1) Przykłady implementacji systemu plików (2) CP/M katalog zawiera blok kontrolny (FCB), identyfikujący 16 jednostek alokacji (zawierający indeksy tych jednostek alokacji). DOS wpis katalogowy zawiera indeks pierwszej jednostki alokacji, a pozostałe jednostki wynikają z tablicy FAT. ISO 9660 (CD ROM) bloki zorganizowane są wg. zasady przydziału ciągłego, wpis katalogowy zawiera indeks pierwszej jednostki alokacji oraz, wpisy katalogowe są posortowane alfabetycznie. UNIX plik opisany jest przez i-węzeł, wpis katalogowy zawiera indeks i-węzła, który z kolei zawiera indeks (kombinowany) jednostek alokacji. NTFS plik identyfikowany jest przez referencję, która jest indeksem rekordu w tablicy MFT, rekord zawiera atrybuty (w szczególności dane) lub odnośniki do bloków z atrybutami. System plików (3) System plików (4) 1

CP/M ogólne CP/M format partycji Katalog zawiera 32-bajtowe wpisy, tzw. bloki kontrolne plików (FCB), zawierające wartości atrybutów. W katalogu znajdują się wpisy wszystkich plików w systemie. Dane (zawartość ) znajdują się w 128-bajtowych sektorach, alokacji podlegają jednak bloki o ach 1KB. Z każdym wpisem związany jest jednobajtowy kod użytkownika. Zarządzanie wolną przestrzenią przy użyciu wektora bitowego, przechowywanego w pamięci. blok nadrzędny katalog System plików (5) System plików (6) CP/M struktura wpisu katalogowego CP/M reprezentacja dużych plików (8 bajtów) kod użytkownika typ (3) extent liczba sektorów 128 bajtowych objętych wpisem numery bloków (16 1 bajt) list txt 1 list txt 2 list kod użytkownika txt n typ extent liczba bloków 128 bajtowych objętych wpisem numery bloków System plików (7) System plików (8) 2

MS DOS ogólne MS DOS format partycji Katalog zawiera 32-bajtowe wpisy, obejmujące podstawowe atrybuty (, typ, itp.) Katalogi tworzą strukturę wielopoziomową Dane znajdują się w blokach (jednostkach alokacji) o ustalonym ze. Bloki identyfikowane są z pośrednictwem tablicy FAT, a indeks pierwszego bloku znajduje się we wpisie katalogowym. Wolne bloki identyfikowane są poprzez specjalny kod, wpisany na odpowiadających im pozycjach w tablicy FAT. blok nadrzędny tablica FAT kopia tablicy FAT katalog główny i podkatalogów System plików (9) System plików (10) MS DOS struktura wpisu katalogowego MS Windows 98 struktura wpisu katalogowego (8 bajtów) FAT 12/16 bit. typ (3) flagi czas data ostatniego zapis (4B) numer pierwszego bloku (2 bajty) w bajtach (4 bajty) (8 bajtów) FAT 32 bit. typ (3) atrybuty data i czas utworzenia (4B) data ostat. dostępu data i czas ostatniego zapis (4B) bardziej znaczące 16 bitów numeru pierwszego bloku (2 bajty) w bajtach (4 bajty) mniej znaczące 16 bitów numeru pierwszego bloku (2 bajty) System plików (11) System plików (12) 3

ISO 9660 ogólne ISO 9660 format partycji Dane na płycie CD nie są rozkładane w cylindrach, lecz tworzą układ spiralny. Spirala dzielona jest na bloki logiczne (sektory) o ze 2352 bajtów (w tym preambuły, kody korekcyjne itp.), z czego na dane pozostaje 2048 bajtów. Binarne pola numeryczne są reprezentowane podwójnie: zgodnie z uporządkowaniem grubokońcówkowym oraz cienkokońcówkowym. Maksymalny poziom zagnieżdżenia katalogów 8. 16 bloków do dowolnego wykorzystania deskryptor głównego wolumenu wpis katalog. korzenia drzewa katalogów i katalogów System plików (13) System plików (14) ISO 9660 struktura wpisu katalogowego UNIX ogólne lokalizacja pierwszego bloku (8 bajtów) wielkość rozszerzenia atrybutów wielkość wpisu kat. w bajtach (1 bajt) (8 bajtów) data i czas (7 bajtów) flagi nr CD z lokalizacją (4 bajty) długość (4 15 bajtów) rozszerzenia Z każdym plikiem związany jest i-węzeł, który przechowuje wszystkie atrybuty z wyjątkiem. Nazwa znajduje się w katalogu obok numeru i-węzła danego. Katalogi tworzą strukturę wielopoziomową (katalog zawiera wpis specyfikujący inny katalog). Dane (zawartość ) znajdują się w blokach (jednostkach alokacji) o ustalonym ze. Bloki identyfikowane są za pośrednictwem indeksu kombinowanego. Wolne bloki zorganizowane są zgodnie z zasadą grupowania. System plików (15) System plików (16) 4

blok nadrzędny UNIX format partycji Atrybuty: id właściciela i grupy typ prawa dostępu czasy dostępu licznik dowiązań w bajtach UNIX fizyczna struktura tablica i-węzłów System plików (17) System plików (18) UNIX struktura wpisu katalogowego NTFS ogólne numer i-węzła (2 bajty) (14 bajtów) Plik jest zbiorem atrybutów, obejmującym w szczególności atrybut dane. Każdy plik ma swój wpis (rekord) w głównej tablicy plików (MFT), a indeks w tej tablicy jest składnikiem identyfikatora wewnętrznego (referencji ). Tablica MFT sama jest plikiem, podobnie jak każdy inny obiekt w obrębie systemu plików. Wolne bloki identyfikowane są przez wektor bitowy, przechowywany w jednym z plików. System plików (19) System plików (20) 5

NTFS format partycji NTFS struktura blok nadrzędny MFT strefa MFT kopia 16 pierwszych rekordów MFT Rekord MFT ma ustalony 1KB 4KB Rekord MFT składa się z nagłówka rekordu i tabeli atrybutów. Atrybut składa się z nagłówka atrybutu oraz wartości. Wartość znajduje się albo bezpośrednio w rekordzie MFT (atrybut rezydentny), albo w bloku. atrybutu atrybutu wartość atrybutu atrybutu wartość System plików (21) System plików (22) NTFS zawartość nagłówka rekordu NTFS zawartość nagłówka atrybutu Magiczna liczba wartość używana do sprawdzania poprawności Numer sekwencyjny wartość zwiększana o 1 za każdym razem, gdy rekord używany jest dla nowego Liczba odniesień do Liczba wykorzystywanych bajtów przez rekord Identyfikator rekordu bazowego (referencja) w przypadku rekordu rozszerzeń Identyfikator atrybutu (typ i opcjonalna ) Długość wartości atrybutu w bajtach Lokalizacja wartości atrybutu Flagi System plików (23) System plików (24) 6

NTFS wybrane atrybuty NTFS identyfikacja Informacje standardowe ($STANDARD_INFORMATION) Nazwa ($FILE_NAME) Dane ($DATA) Korzeń indeksu ($INDEX_ROOT) Alokacja indeksu ($INDEX_ALLOCATION) Mapa bitowa indeksu ($BITMAP) Lista atrybutów ($ATTRIBUTE_LIST) Rekord MFT i tym samym plik identyfikowany jest wewnętrznie przez 64-bitową referencję. 48 mniej znaczących bitów referencji jest numerem rekordu w tablicy MFT. 16 bardziej znaczących bitów referencji jest numerem sekwencyjnym zwiększanym o 1 po każdym przydzieleniu rekordu do nowo utworzonego, co zapobiega błędnym odwołaniom do plików z użyciem zdezaktualizowanych referencji. numer sekwencyjny numer System plików (25) System plików (26) NTFS rekord bazowy Implementacja atrybutu dane (1) Jeśli lista atrybutów nie mieści się w jednym rekordzie MFT, do przydzielane są dodatkowe rekordy. Pierwszy rekord MFT nazywany jest bazowym (lub podstawowym). Dodatkowe rekordy MFT danego określane są jako rekordy rozszerzeń. Identyfikacja atrybutów, umieszczonych w rekordach rozszerzeń, znajduje się w atrybucie lista atrybutów, znajdującym się w rekordzie bazowym. mały plik standard. dane duży plik standard. o blokach indeks pierwszego bloku i liczba bloków w przebiegu zakres bloków objętych opisem listy przebiegów opis przebiegu 1 opis przebiegu 2 opis przebiegu n System plików (27) System plików (28) 7

Implementacja atrybutu dane (2) NTFS katalogi listy atryb. standard id atryb. dane id atryb. dane o blokach bardzo duży plik (pofragmentowany) listy przeb. opis przeb. 1 opis przeb. k o blokach o blokach listy przeb. opis przeb. k+1 opis przeb. m listy przeb. opis przeb. m+1 opis przeb. n Katalog zawiera sekwencję wpisów (rekordów), z których każdy odpowiada jednemu plikowi i obejmuje jego następujące atrybuty: referencja (wraz z długością) czasy dostępów Implementacja dużych katalogów oparta jest na strukturze indeksowej (B + -drzewo). System plików (29) System plików (30) Implementacja katalogu (1) Implementacja katalogu (2) korzenia standard. katalogu korzeń indeksu mały katalog wpis 1 wpis 2 wpis 2 wpis n referencja czasy korzenia alok. ind. mapy bit. standard. katalogu korzeń indeksu duży katalog wraz z długością alokacja indeksu mapa bit. indeksu wraz z długością VCN 0 1 VCN 1 2 VCN 2 VCN n VCN 00 01 VCN 01 02 VCN 02 VCN 10 11 VCN 11 referencja czasy wpis 1 wpis 2 wpis 3 wpis 4 wpis 5 wpis k wpis k+1 wpis k+2 System plików (31) System plików (32) 8

NTFS wybrane pliki meta $MFT główna tablica plików $MTFMIRR kopia MFT $LOGFILE plik dziennika $VOLUME plik wolumenu $DEFATTR definicja atrybutów plików $ katalog główny (korzeń drzewa) $BITMAP wektor bitowy (informacja o wolnych/zajętych blokach) System plików (33) 9