Przegląd systemów plików FAT, HPFS, NTFS

W tym artykule wyjaśniono różnice między tabelą alokacji plików (FAT), systemem plików o wysokiej wydajności (HPFS) i systemem plików NT (NTFS) w systemie Windows NT oraz ich zalety i wady.

Uwaga:

System plików HPFS jest obsługiwany tylko w systemie Windows NT w wersjach 3.1, 3.5 i 3.51. Windows NT 4.0 nie obsługuje partycji HPFS i nie ma do nich dostępu. Ponadto system plików FAT32 jest obsługiwany tylko w systemach Windows 98/95 i Windows 2000.

Przegląd FAT

FAT jest zdecydowanie najbardziej uproszczonym z systemów plików obsługiwanych przez system Windows NT. System plików FAT charakteryzuje się tablicą alokacji plików (FAT), która w rzeczywistości jest tablicą znajdującą się na samej „górze” woluminu. Aby chronić wolumen, zachowuje się dwie kopie FAT na wypadek uszkodzenia jednej z nich. Ponadto tabele FAT i katalog główny muszą być przechowywane w stałej lokalizacji, aby pliki rozruchowe systemu mogły być poprawnie zlokalizowane.

Dysk sformatowany przy użyciu FAT jest alokowany w klastrach, których rozmiar jest określany na podstawie rozmiaru woluminu. Podczas tworzenia pliku w katalogu tworzony jest wpis i ustalany jest pierwszy numer klastra zawierający dane. Ten wpis w tabeli FAT albo wskazuje, że jest to ostatni klaster w pliku, albo wskazuje na następny klaster.

Aktualizacja tabeli FAT jest bardzo ważna i czasochłonna. Jeśli tabela FAT nie jest regularnie aktualizowana, może to prowadzić do utraty danych. Jest to czasochłonne, ponieważ głowice odczytujące dyski muszą być przestawiane na ścieżkę logiczną zerową napędu za każdym razem, gdy tabela FAT jest aktualizowana.

Nie ma organizacji w strukturze katalogów FAT, a pliki otrzymują pierwszą otwartą lokalizację na dysku. Ponadto FAT obsługuje tylko atrybuty plików tylko do odczytu, ukryty, systemowy i archiwalny.

Konwencja nazewnictwa FAT

FAT używa tradycyjnej konwencji nazewnictwa plików 8.3, a wszystkie nazwy plików muszą być tworzone przy użyciu zestawu znaków ASCII. Nazwa pliku lub katalogu może mieć do ośmiu znaków, następnie separator kropki (.) I rozszerzenie do trzech znaków. Nazwa musi zaczynać się od litery lub cyfry i może zawierać dowolne znaki z wyjątkiem następujących:

. ” / \ [ ] : ; | = ,

Jeśli którykolwiek z tych znaków zostanie użyty, mogą wystąpić nieoczekiwane rezultaty. Nazwa nie może zawierać spacji.

Następujące nazwy są zastrzeżone:

CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN, NUL

Wszystkie znaki zostaną zamienione na wielkie litery.

Zalety FAT

W systemie Windows NT nie jest możliwe przywrócenie danych do usunięcia w żadnym z obsługiwanych systemów plików. Narzędzia przywracające usunięcie próbują uzyskać bezpośredni dostęp do sprzętu, czego nie można zrobić w systemie Windows NT. Jeśli jednak plik znajdował się na partycji FAT, a system jest restartowany w systemie MS-DOS, plik można przywrócić. System plików FAT jest najlepszy dla dysków i / lub partycji poniżej około 200 MB, ponieważ FAT zaczyna się z bardzo niewielkim narzutem. Dalsze omówienie zalet FAT znajduje się poniżej:

Windows NT Server „Przewodnik po pojęciach i planowaniu”, rozdział 5, część zatytułowana „Wybór systemu plików”

Zestaw zasobów systemu Windows NT Workstation 4.0, rozdział 18, „Wybór systemu plików”

Windows NT Server 4.0 Resource Kit „Przewodnik po zasobach”, rozdział 3, sekcja zatytułowana „Który system plików używać na jakich woluminach”

Wady FAT

Najlepiej, gdy używasz dysków lub partycji powyżej 200 MB, nie należy używać systemu plików FAT. Dzieje się tak, ponieważ wraz ze wzrostem objętości wydajność z FAT szybko spada. Nie można ustawić uprawnień do plików, które są partycjami FAT.

Partycje FAT są ograniczone do maksymalnie 4 gigabajtów (GB) w systemie Windows NT i 2 GB w systemie MS-DOS.

Dalsze omówienie innych wad FAT znajduje się poniżej:

Windows NT Server „Przewodnik po pojęciach i planowaniu”, rozdział 5, część zatytułowana „Wybór systemu plików”

Zestaw zasobów systemu Windows NT Workstation 4.0, rozdział 18, „Wybór systemu plików”

Zestaw zasobów systemu Microsoft Windows NT Server 4.0 „Podręcznik zasobów”, rozdział 3, sekcja zatytułowana „Który system plików należy używać na jakich woluminach”

Przegląd HPFS

System plików HPFS został po raz pierwszy wprowadzony w systemie OS / 2 1.2, aby umożliwić większy dostęp do większych dysków twardych, które pojawiały się wówczas na rynku. Ponadto nowy system plików był niezbędny, aby rozszerzyć system nazewnictwa, organizację i zabezpieczenia, aby sprostać rosnącym wymaganiom rynku serwerów sieciowych. HPFS utrzymuje organizację katalogów FAT, ale dodaje automatyczne sortowanie katalogów na podstawie nazw plików. Nazwy plików są rozszerzane do maksymalnie 254 dwubajtowych znaków. HPFS umożliwia również składanie pliku z „danych” i specjalnych atrybutów, co zapewnia większą elastyczność w zakresie obsługi innych konwencji nazewnictwa i bezpieczeństwa. Ponadto jednostka alokacji jest zmieniana z klastrów na sektory fizyczne (512 bajtów), co zmniejsza utratę miejsca na dysku.

W HPFS wpisy katalogu zawierają więcej informacji niż w FAT. Oprócz pliku atrybutów zawiera on informacje o modyfikacji, utworzeniu oraz dacie i godzinie dostępu. Zamiast wskazywać na pierwszy klaster pliku, wpisy katalogu w HPFS wskazują na FNODE. FNODE może zawierać dane pliku lub wskaźniki, które mogą wskazywać na dane pliku lub inne struktury, które ostatecznie wskażą dane pliku.

HPFS próbuje przydzielić jak najwięcej pliku w sąsiednich sektorach, jak to możliwe. Ma to na celu zwiększenie szybkości podczas sekwencyjnego przetwarzania pliku.

HPFS organizuje dysk w serię pasm o wielkości 8 MB, a jeśli to możliwe, plik jest zawarty w jednym z tych pasm. Pomiędzy każdym z tych pasm znajdują się mapy bitowe alokacji 2K, które śledzą, które sektory w paśmie zostały przydzielone, a które nie. Paskowanie zwiększa wydajność, ponieważ głowica dysku nie musi wracać do logicznej górnej części dysku (zwykle cylindra 0), ale do najbliższej mapy bitowej alokacji pasma, aby określić, gdzie ma być przechowywany plik.

Ponadto HPFS zawiera kilka unikalnych specjalnych obiektów danych:

Super Block

Super Block znajduje się w sektorze logicznym 16 i zawiera wskaźnik do FNODE katalogu głównego. Jednym z największych niebezpieczeństw związanych z używaniem HPFS jest to, że jeśli Super Block zostanie utracony lub uszkodzony z powodu złego sektora, tak samo jak zawartość partycji, nawet jeśli reszta dysku jest w porządku. Byłoby możliwe odzyskanie danych z dysku, kopiując wszystko na inny dysk z dobrym sektorem 16 i odbudowując Super Block. Jest to jednak bardzo złożone zadanie.

Zapasowy blok

Blok zapasowy znajduje się w sektorze logicznym 17 i zawiera tabelę „poprawek” oraz blok katalogu zapasowego. W HPFS, gdy zostanie wykryty uszkodzony sektor, wpis „poprawki” jest używany do logicznego wskazania istniejącego dobrego sektora w miejsce złego sektora. Ta technika obsługi błędów zapisu jest znana jako naprawianie na gorąco.

Naprawianie na gorąco to technika, w której jeśli wystąpi błąd z powodu złego sektora, system plików przenosi informacje do innego sektora i oznacza oryginalny sektor jako zły. Wszystko to odbywa się w sposób niewidoczny dla wszystkich aplikacji, które wykonują operacje we / wy dysku (to znaczy, aplikacja nigdy nie wie, że wystąpiły jakiekolwiek problemy z dyskiem twardym). Korzystanie z systemu plików obsługującego naprawianie na gorąco wyeliminuje komunikaty o błędach, takie jak FAT „Przerwać, ponowić próbę lub niepowodzenie?” komunikat o błędzie występujący w przypadku napotkania uszkodzonego sektora.

Uwaga

Wersja HPFS dołączona do systemu Windows NT nie obsługuje poprawiania na gorąco.

Zalety HPFS

HPFS jest najlepszy dla dysków w zakresie 200-400 MB. Więcej informacji na temat zalet HPFS można znaleźć poniżej:

Windows NT Server „Przewodnik po pojęciach i planowaniu”, rozdział 5, część zatytułowana „Wybór systemu plików”

Zestaw zasobów systemu Windows NT Workstation 4.0, rozdział 18, „Wybór systemu plików”

Windows NT Server 4.0 Resource Kit „Przewodnik po zasobach”, rozdział 3, sekcja zatytułowana „Który system plików używać na jakich woluminach”

Wady HPFS

Ze względu na narzuty związane z HPFS nie jest to zbyt efektywny wybór dla woluminu poniżej około 200 MB. Ponadto w przypadku woluminów większych niż około 400 MB nastąpi pewne obniżenie wydajności. Nie można ustawić zabezpieczeń w systemie plików HPFS w systemie Windows NT.

System plików HPFS jest obsługiwany tylko w systemie Windows NT w wersjach 3.1, 3.5 i 3.51. Windows NT 4.0 nie może uzyskać dostępu do partycji HPFS.

Aby zapoznać się z dodatkowymi wadami HPFS, zobacz:

Windows NT Server „Przewodnik po pojęciach i planowaniu”, rozdział 5, część zatytułowana „Wybór systemu plików”

Zestaw zasobów systemu Windows NT Workstation 4.0, rozdział 18, „Wybór systemu plików”

Windows NT Server 4.0 Resource Kit „Przewodnik po zasobach”, rozdział 3, sekcja zatytułowana „Który system plików używać na jakich woluminach”

Omówienie NTFS

Z punktu widzenia użytkownika NTFS nadal organizuje pliki w katalogi, które, podobnie jak HPFS, są sortowane. Jednak w przeciwieństwie do FAT czy HPFS na dysku nie ma żadnych „specjalnych” obiektów i nie ma zależności od sprzętu, na przykład sektorów 512-bajtowych. Ponadto na dysku nie ma specjalnych lokalizacji, takich jak tabele FAT lub superbloki HPFS.

Celem systemu NTFS jest zapewnienie:

Niezawodność, która jest szczególnie pożądana w przypadku wysokiej klasy systemów i serwerów plików

Platforma o dodatkowej funkcjonalności

Obsługa wymagań POSIX

Usunięcie ograniczeń systemów plików FAT i HPFS

Niezawodność

Aby zapewnić niezawodność NTFS, zajęto się trzema głównymi obszarami: odzyskiwalnością, usuwaniem krytycznych awarii pojedynczych sektorów i naprawą na gorąco.

NTFS to odzyskiwalny system plików, ponieważ śledzi transakcje w systemie plików. Gdy CHKDSK jest wykonywany na FAT lub HPFS, sprawdzana jest spójność wskaźników w katalogu, alokacji i tabelach plików. W systemie NTFS jest przechowywany dziennik transakcji dotyczących tych składników, więc CHKDSK musi tylko wycofać transakcje do ostatniego punktu zatwierdzenia, aby odzyskać spójność w systemie plików.

W systemie FAT lub HPFS, jeśli sektor będący lokalizacją jednego ze specjalnych obiektów systemu plików ulegnie awarii, wystąpi błąd pojedynczego sektora. NTFS unika tego na dwa sposoby: po pierwsze, nie używając specjalnych obiektów na dysku oraz śledząc i chroniąc wszystkie obiekty na dysku. Po drugie, w systemie NTFS zachowywane są wielokrotne kopie (liczba zależy od rozmiaru wolumenu) głównej tabeli plików.

Podobnie jak wersje systemu plików HPFS w systemie OS / 2, NTFS obsługuje naprawianie na gorąco.

Dodatkowa funkcjonalność

Jednym z głównych celów projektowych systemu Windows NT na każdym poziomie jest zapewnienie platformy, do której można dodawać i na niej budować, a NTFS nie jest wyjątkiem. NTFS zapewnia bogatą i elastyczną platformę, z której mogą korzystać inne systemy plików. Ponadto NTFS w pełni obsługuje model bezpieczeństwa Windows NT i obsługuje wiele strumieni danych. Plik danych nie jest już pojedynczym strumieniem danych. Wreszcie, w systemie NTFS, użytkownik może dodać do pliku własne atrybuty zdefiniowane przez użytkownika.

Obsługa POSIX

NTFS jest najbardziej zgodnym z POSIX.1 z obsługiwanych systemów plików, ponieważ obsługuje następujące wymagania POSIX.1:

Nazewnictwo uwzględniające wielkość liter:

W POSIX, README.TXT, Readme.txt i readme.txt to różne pliki.

Dodatkowy znacznik czasu:

Dodatkowy znacznik czasu podaje godzinę ostatniego dostępu do pliku.

Twarde linki:

Twarde łącze ma miejsce, gdy dwie różne nazwy plików, które mogą znajdować się w różnych katalogach, wskazują te same dane.

Usuń ograniczenia

Po pierwsze, system NTFS znacznie zwiększył rozmiar plików i woluminów, dzięki czemu mogą teraz mieć do 2 ^ 64 bajtów (16 eksabajtów lub 18 446 744 073 709 551 616 bajtów). NTFS powrócił również do koncepcji klastrów FAT w celu uniknięcia problemu HPFS ze stałym rozmiarem sektora. Stało się tak, ponieważ Windows NT jest przenośnym systemem operacyjnym i w pewnym momencie można napotkać inną technologię dysków. Dlatego też 512 bajtów na sektor było postrzegane jako mające duże prawdopodobieństwo, że nie zawsze będzie dobrze pasować do alokacji. Osiągnięto to, umożliwiając zdefiniowanie klastra jako wielokrotności naturalnego rozmiaru alokacji sprzętu. Wreszcie, w NTFS wszystkie nazwy plików są oparte na Unicode, a nazwy plików 8.3 są przechowywane wraz z długimi nazwami plików.

Zalety NTFS

NTFS jest najlepszy do użytku w przypadku woluminów około 400 MB lub więcej. Dzieje się tak, ponieważ wydajność nie spada w systemie NTFS, tak jak w przypadku FAT, przy większych rozmiarach woluminów.

Możliwość przywracania systemu plików NTFS sprawia, że użytkownik nigdy nie powinien uruchamiać żadnego narzędzia do naprawy dysku na partycji NTFS. Aby uzyskać dodatkowe zalety systemu plików NTFS, zobacz:

Windows NT Server „Przewodnik po pojęciach i planowaniu”, rozdział 5, część zatytułowana „Wybór systemu plików”

Zestaw zasobów systemu Windows NT Workstation 4.0, rozdział 18, „Wybór systemu plików”

Windows NT Server 4.0 Resource Kit „Przewodnik po zasobach”, rozdział 3, sekcja zatytułowana „Który system plików używać na jakich woluminach”

Wady NTFS

Nie zaleca się używania systemu plików NTFS na woluminie mniejszym niż około 400 MB ze względu na ilość miejsca zajmowanego przez system NTFS. To obciążenie przestrzenne ma postać plików systemowych NTFS, które zwykle zajmują co najmniej 4 MB miejsca na dysku na partycji 100 MB.

Obecnie w systemie NTFS nie ma wbudowanego szyfrowania plików. Dlatego ktoś może uruchomić system w systemie MS-DOS lub innym systemie operacyjnym i użyć narzędzia do edycji dysków niskiego poziomu, aby wyświetlić dane przechowywane na woluminie NTFS.

Nie można sformatować dyskietki w systemie plików NTFS; Windows NT formatuje wszystkie dyskietki w systemie plików FAT, ponieważ narzut związany z NTFS nie zmieści się na dyskietce.

Aby uzyskać dalsze omówienie wad NTFS, zobacz:

Windows NT Server „Przewodnik po pojęciach i planowaniu”, rozdział 5, część zatytułowana „Wybór systemu plików”

Zestaw zasobów systemu Windows NT Workstation 4.0, rozdział 18, „Wybór systemu plików”

Windows NT Server 4.0 Resource Kit „Przewodnik po zasobach”, rozdział 3, sekcja zatytułowana „Który system plików używać na jakich woluminach”

Konwencje nazewnictwa NTFS

Nazwy plików i katalogów mogą mieć do 255 znaków, w tym dowolne rozszerzenia. Nazwy zachowują wielkość liter, ale nie są rozróżniane. NTFS nie rozróżnia nazw plików na podstawie wielkości liter. Nazwy mogą zawierać dowolne znaki z wyjątkiem następujących:

? ” / \ < > * | :

Obecnie z poziomu wiersza poleceń można tworzyć tylko nazwy plików zawierające maksymalnie 253 znaki.

Uwaga

Podstawowe ograniczenia sprzętowe mogą narzucić dodatkowe ograniczenia rozmiaru partycji w dowolnym systemie plików. W szczególności partycja rozruchowa może mieć tylko 7,8 GB, a tabela partycji ma ograniczenie do 2 terabajtów.