NTFS v3.0 zawiera kilka nowych funkcji w stosunku do swoich poprzedników: oszczędną obsługę plików, limity użycia dysku, punkty ponownej analizy, rozproszone śledzenie linków i szyfrowanie na poziomie plików zwane systemem szyfrowania plików (EFS).
Skalowalnośćedit
NTFS jest zoptymalizowany dla klastrów 4 KB, ale obsługuje maksymalny rozmiar klastra 2 MB. (Wcześniejsze implementacje obsługują do 64 KB) Maksymalny rozmiar woluminu NTFS, który może obsługiwać Specyfikacja, to 264-1 klastry, ale nie wszystkie implementacje osiągają to teoretyczne maksimum, jak opisano poniżej.,
maksymalny rozmiar woluminu NTFS zaimplementowany w Windows XP Professional to 232 − 1 klastry, częściowo ze względu na ograniczenia tabeli partycji. Na przykład przy użyciu klastrów 64 KB Maksymalny rozmiar woluminu Windows XP NTFS wynosi 256 TB minus 64 KB. Przy domyślnym rozmiarze klastra wynoszącym 4 KB Maksymalny rozmiar woluminu NTFS wynosi 16 TB minus 4 KB. Oba są znacznie wyższe niż limit 128 GB w Windows XP SP1., Ponieważ tabele partycji na dyskach master boot record (MBR) obsługują tylko rozmiary partycji do 2 TB, wiele woluminów partycji GUID (GPT lub „dynamic”) musi zostać połączonych, aby utworzyć pojedynczy wolumin NTFS większy niż 2 TB. Uruchamianie z woluminu GPT do środowiska Windows w sposób obsługiwany przez Microsoft wymaga systemu z Unified Extensible Firmware Interface (UEFI) i obsługą 64-bitów.
maksymalny teoretyczny limit rozmiaru plików NTFS wynosi 16 EB (16 × 10246 lub 264 bajty) minus 1 KB, co daje łącznie 18 446 744 073 709 550 592 bajty., W systemie Windows 10 w wersji 1709 i Windows Server 2019 maksymalny zaimplementowany Rozmiar pliku to 8 PB minus 2 MB lub 9 007 199 252 643 840 bajtów.
JournalingEdit
NTFS jest systemem plików dziennika i używa dziennika NTFS ($LogFile) do rejestrowania zmian metadanych na woluminie., Jest to funkcja, której FAT nie zapewnia i która jest krytyczna dla systemu NTFS, aby zapewnić, że jego złożone wewnętrzne struktury danych pozostaną spójne w przypadku awarii systemu lub ruchów danych wykonywanych przez interfejs API defragmentacji, i umożliwić łatwe wycofywanie niezarejestrowanych zmian w tych krytycznych strukturach danych po ponownym zamontowaniu woluminu. Szczególnie dotknięte struktury są bitmapy alokacji woluminów, modyfikacje rekordów MFT, takie jak przesunięcia niektórych atrybutów o zmiennej długości przechowywanych w rekordach MFT i listach atrybutów oraz indeksy dla katalogów i deskryptorów zabezpieczeń.,
format ($LogFile) ewoluował przez kilka wersji:
wersja systemu Windows | wersja formatu$LogFile |
---|---|
Windows NT 4.0 | 1.1 |
Windows 2000 | |
Windows Vista | |
Windows 7 | |
Windows 8.,1 | 2.0 |
Windows 10 |
niekompatybilność wersji $LogFile zaimplementowanych przez System Windows 8.1 i Windows 10 uniemożliwiają Windows 8 (i wcześniejsze wersje systemu Windows) poprawne przetwarzanie pliku $logfile w przypadku, gdy wolumin NTFS zostanie pozostawiony w brudnym stanie przez nagłe zamknięcie lub hibernację na dysku w stanie wylogowania (Alias: Hybrid Boot lub fast boot, który jest domyślnie włączony w Windows 10). Ta niemożność przetworzenia v2.,0 pliku $LogFile na brudnych woluminach przez te wcześniejsze wersje systemu Windows powoduje wywołanie narzędzia CHKDSK disk repair utility podczas podwójnego rozruchu systemu Windows 10 z tymi starszymi systemami. Istnieje ustawienie rejestru systemu Windows, aby zapobiec automatycznej aktualizacji pliku $LogFile do nowszej wersji.
dziennik USN (Update Sequence Number Journal) jest funkcją zarządzania systemem, która rejestruje (w $Extend\$UsnJrnl) zmiany plików, strumieni i katalogów na woluminie, a także ich różne atrybuty i ustawienia zabezpieczeń., Czasopismo jest dostępne dla aplikacji do śledzenia zmian w objętości. Ten dziennik można włączyć lub wyłączyć na woluminach innych niż systemowe.
dowiązania Twardeedytuj
funkcja dowiązania twardego pozwala różnym nazwom plików bezpośrednio odnosić się do tej samej zawartości pliku. Twarde łącza są podobne do połączeń katalogowych, ale odnoszą się do plików. Łącza twarde mogą łączyć się tylko z plikami w tym samym woluminie, ponieważ każdy wolumin ma swój własny MFT. Łącza twarde mają własne metadane plików, więc zmiana rozmiaru pliku lub atrybutów pod jednym łączem twardym może nie aktualizować innych, dopóki nie zostaną otwarte., Twarde łącza zostały pierwotnie dołączone do obsługi podsystemu POSIX w Windows NT.
System Windows używa twardych linków do obsługi krótkich (8.3) nazw plików w systemie NTFS. Obsługa systemu operacyjnego jest potrzebna, ponieważ istnieją starsze aplikacje, które mogą działać tylko z nazwami plików 8.3. W tym przypadku dodawany jest dodatkowy rekord nazwy pliku i wpis katalogu, ale zarówno 8.3, jak i długa nazwa pliku są połączone i aktualizowane razem, w przeciwieństwie do zwykłego twardego łącza.
System plików NTFS ma limit 1024 twardych linków na pliku.,
alternatywne strumienie danych (ads)Edytuj
strumienie NTFS zostały wprowadzone w systemie Windows NT 3.1, aby umożliwić usługom Macintosh (SFM) przechowywanie widełek zasobów. Chociaż obecne wersje systemu Windows Server nie zawierają już SFM, produkty innych firm Apple Filing Protocol (AFP) (takie jak ExtremeZ-IP grupy GroupLogic) nadal używają tej funkcji systemu plików. Bardzo małe reklamy (o nazwie ” Strefa.,Identifier”) są dodawane przez Internet Explorer i ostatnio przez inne przeglądarki do oznaczania plików pobranych z zewnętrznych witryn jako potencjalnie niebezpieczne do uruchomienia; lokalna powłoka wymaga potwierdzenia użytkownika przed ich otwarciem. Gdy użytkownik zaznaczy, że nie chce już tego okna dialogowego potwierdzenia, reklamy są usuwane.
strumienie alternatywne nie są wymienione w Eksploratorze Windows, a ich rozmiar nie jest wliczony w Rozmiar pliku. Gdy plik jest kopiowany lub przenoszony do innego systemu plików bez obsługi reklam, użytkownik jest ostrzegany, że alternatywne strumienie danych nie mogą być zachowane., Takie ostrzeżenie nie jest zazwyczaj dostarczane, jeśli plik jest dołączony do wiadomości e-mail lub przesłany na stronę internetową. W związku z tym używanie alternatywnych strumieni dla krytycznych danych może powodować problemy. Microsoft udostępnia narzędzie o nazwie Streams do wyświetlania strumieni na wybranym woluminie. Począwszy od Windows PowerShell 3.0, możliwe jest natywne zarządzanie reklamami za pomocą sześciu cmdletów: Add-Content, Clear-Content, Get-Content, Get-Item, Remove-Item, Set-Content.
złośliwe oprogramowanie używało alternatywnych strumieni danych do ukrywania kodu. W rezultacie Skanery złośliwego oprogramowania i inne specjalne narzędzia sprawdzają teraz alternatywne strumienie danych.,
kompresja Plikówedytuj
NTFS może kompresować pliki za pomocą algorytmu LZNT1 (wariant LZ77) pliki są kompresowane w 16 klastrach. W przypadku klastrów 4 KB pliki są kompresowane w kawałkach 64 KB. Algorytmy kompresji w systemie NTFS są zaprojektowane do obsługi klastrów o rozmiarach do 4 KB. Gdy rozmiar klastra jest większy niż 4 KB na woluminie NTFS, kompresja NTFS nie jest dostępna. Jeśli kompresja zmniejszy 64 KB danych do 60 KB lub mniej, NTFS traktuje niepotrzebne strony 4 KB jak puste rzadkie klastry plików—nie są one zapisywane., Pozwala to na rozsądne czasy dostępu losowego, ponieważ system operacyjny musi jedynie podążać za łańcuchem fragmentów.
Uwaga: poniższa sekcja odnosi się do testów, badań i zaleceń wykonanych i przeznaczonych dla urządzeń pamięci masowej o wysokim czasie dostępu, takich jak mechaniczny dysk twardy, gdzie wewnętrzne głowice używane do odczytu danych muszą być fizycznie przesunięte i prawidłowo ustawione, a następnie poczekać, aż dane na dyskach obrotowych przejdą pod nimi. Więcej informacji na temat dysków SSD i podobnych urządzeń o niskim czasie dostępu można znaleźć w dalszej części artykułu.,
jednak duże pliki Kompresowalne stają się bardzo fragmentaryczne, ponieważ każdy fragment mniejszy niż 64 KB staje się fragmentem. Według badań przeprowadzonych przez Microsoft NTFS Development team, 50-60 GB to rozsądny maksymalny rozmiar dla skompresowanego pliku na woluminie NTFS o rozmiarze klastra (bloku) 4 KB. Ten rozsądny maksymalny rozmiar zmniejsza się gwałtownie w przypadku objętości o mniejszych rozmiarach klastrów. Systemy dla pojedynczego użytkownika z ograniczoną ilością miejsca na dysku twardym mogą korzystać z kompresji NTFS dla małych plików, od 4 KB do 64 KB lub więcej, w zależności od ściśliwości., Pliki mniejsze niż około 900 bajtów są przechowywane we wpisie katalogu MFT.
pamięci Flash, takie jak dyski SSD nie mają opóźnień ruchu głowicy dysków twardych, więc fragmentacja ma tylko mniejszą karę. Użytkownicy szybkich procesorów wielordzeniowych znajdą poprawę szybkości aplikacji poprzez kompresję swoich aplikacji i danych, a także zmniejszenie zajmowanej przestrzeni. Należy pamiętać, że dyski SSD z kontrolerami Sandforce już kompresują dane. Ponieważ jednak przesyłanych jest mniej danych, następuje redukcja We/Wy.,
Kompresja działa najlepiej z plikami, które mają powtarzalną zawartość, są rzadko pisane, są zwykle dostępne sekwencyjnie i same nie są kompresowane. Pliki dziennika są idealnym przykładem.
jeśli pliki systemowe są potrzebne podczas rozruchu (takie jak sterowniki, NTLDR, winload.exe lub BOOTMGR) są skompresowane, system może nie uruchomić się poprawnie, ponieważ filtry dekompresyjne nie są jeszcze załadowane. Późniejsze wersje systemu Windows nie pozwalają na kompresję ważnych plików systemowych.,
pliki mogą być kompresowane lub dekompresowane indywidualnie (poprzez zmianę zaawansowanych atrybutów) dla dysku, katalogu lub drzewa katalogów, stając się domyślnymi plikami wewnątrz.
chociaż dostęp do skompresowanych plików do odczytu i zapisu jest przejrzysty, Microsoft zaleca unikanie kompresji na serwerach lub udziałach sieciowych posiadających profile roamingowe, ponieważ nakłada to znaczne obciążenie na procesor.
compactos algorithmsEdit
od Windows 10 Microsoft wprowadził dodatkowe algorytmy, a mianowicie XPRESS4K/8K / 16K i LZX., Oba algorytmy bazują na LZ77 z kodowaniem entropii Huffmana, którego LZNT1 brakowało. Algorytmy te zostały zaczerpnięte z formatu obrazowania Windows. Są one używane głównie dla nowej funkcji CompactOS, która kompresuje całą partycję systemową za pomocą jednego z tych algorytmów. Można je również ręcznie włączyć za pomocą polecenia/exe
z poleceniacompact
. W przypadku użycia na plikach algorytm CompactOS unika fragmentacji, zapisując skompresowane dane w sąsiadująco przydzielonych kawałkach.,
oszczędne plikedytuj
oszczędny plik: puste bajty nie muszą być zapisywane, więc mogą być reprezentowane przez metadane.
Sparse files to pliki przeplatane pustymi segmentami, dla których nie jest używana rzeczywista przestrzeń dyskowa. Dla aplikacji plik wygląda jak zwykły plik z pustymi regionami widzianymi jako regiony wypełnione zerami. Plik sparse niekoniecznie zawiera obszary sparse zer; atrybut „sparse file” oznacza po prostu, że plik może je mieć.,
aplikacje bazodanowe, na przykład, mogą używać rzadkich plików. Podobnie jak w przypadku plików skompresowanych, rzeczywiste rozmiary rzadkich plików nie są brane pod uwagę przy ustalaniu limitów kwot.
Volume Shadow CopyEdit
usługa Volume Shadow Copy Service (VSS) przechowuje historyczne wersje plików i folderów na woluminach NTFS, kopiując stare, nowo nadpisane dane do shadow copy za pomocą techniki kopiowania przy zapisie. Użytkownik może później zażądać odzyskania wcześniejszej wersji. Pozwala to również programom do tworzenia kopii zapasowych danych archiwizować pliki aktualnie używane przez system plików., W przypadku mocno obciążonych systemów Microsoft zaleca ustawienie woluminu kopii cienia na oddzielnym dysku.
System Windows Vista wprowadził również trwałe kopie cieni do użytku z funkcjami przywracania systemu i poprzednich wersji. Trwałe kopie cieni są jednak usuwane, gdy starszy system operacyjny montuje wolumin NTFS. Dzieje się tak, ponieważ starszy system operacyjny nie rozumie nowszego formatu trwałych kopii cieni.,
Transakcjedytuj
w systemie Windows Vista aplikacje mogą używać transakcyjnego systemu NTFS (TXF) do grupowania wielu zmian w plikach w jedną transakcję. Transakcja gwarantuje, że albo wszystkie zmiany nastąpią, albo żadna z nich nie nastąpi, i że żadna aplikacja spoza transakcji nie zobaczy zmian, dopóki nie zostaną one zatwierdzone.
stosuje podobne techniki jak te stosowane przy kopiowaniu woluminów (tj., copy-on-write), aby zapewnić, że nadpisane dane mogą być bezpiecznie wycofane, oraz dziennik CLFS, aby zaznaczyć transakcje, które nadal nie zostały popełnione lub te, które zostały popełnione, ale nadal nie zostały w pełni zastosowane (w przypadku awarii systemu podczas commit przez jednego z uczestników).
transakcyjny system plików NTFS nie ogranicza transakcji tylko do lokalnego woluminu NTFS, ale obejmuje również inne dane transakcyjne lub operacje w innych lokalizacjach, takie jak dane przechowywane w oddzielnych woluminach, rejestr lokalny lub bazy danych SQL lub aktualne stany usług systemowych lub usług zdalnych., Transakcje te są koordynowane w całej sieci ze wszystkimi uczestnikami korzystającymi z określonej usługi, DTC, w celu zapewnienia, że wszyscy uczestnicy otrzymają ten sam stan commit, oraz do transportu zmian, które zostały zatwierdzone przez dowolnego uczestnika(tak, że inni mogą unieważnić swoje lokalne pamięci podręczne dla starych danych lub wycofać swoje bieżące niezatwierdzone zmiany). Transakcyjny system plików NTFS umożliwia na przykład tworzenie spójnych rozproszonych systemów plików w całej sieci, w tym z ich lokalnymi Cache live lub offline.,
Microsoft odradza teraz używanie TxF: „Microsoft zdecydowanie zaleca programistom stosowanie alternatywnych środków”, ponieważ „TxF może nie być dostępny w przyszłych wersjach systemu Microsoft Windows”.
SecurityEdit
w systemie NTFS każdy plik lub folder ma przypisany deskryptor zabezpieczeń, który definiuje jego właściciela i zawiera dwie listy kontroli dostępu (ACL). Pierwszy ACL, zwany dyskrecjonalną listą kontroli dostępu (DACL), określa dokładnie, jaki rodzaj interakcji (np. Odczyt, Zapis, wykonywanie lub usuwanie) jest dozwolony lub zabroniony przez jakiego użytkownika lub grupy użytkowników., Na przykład pliki w C:\Program folder Files
może być odczytywany i wykonywany przez wszystkich użytkowników, ale modyfikowany tylko przez Użytkownika posiadającego uprawnienia administracyjne. Windows Vista dodaje obowiązkowe informacje o kontroli dostępu do DACLs. DACL są głównym celem kontroli konta użytkownika w systemie Windows Vista i nowszym.
drugi ACL, o nazwie system access control list (SACL), określa, które interakcje z plikiem lub folderem mają być kontrolowane i czy powinny być rejestrowane, gdy działanie zakończy się sukcesem, nie powiodło się czy oba., Na przykład audyt może być włączony na poufnych plikach firmy, aby jej menedżerowie wiedzieli, kiedy ktoś próbuje je usunąć lub zrobić kopię i czy mu się powiedzie.
EncryptionEdit
Encrypting File System (EFS) zapewnia silne i przejrzyste dla użytkownika szyfrowanie dowolnego pliku lub folderu na woluminie NTFS. EFS działa w połączeniu z usługą EFS, CryptoAPI firmy Microsoft i biblioteką EFS File System Run-Time Library (FSRTL)., EFS działa poprzez szyfrowanie pliku masowym kluczem symetrycznym( znanym również jako klucz szyfrowania plików lub FEK), który jest używany, ponieważ zajmuje stosunkowo mało czasu, aby zaszyfrować i odszyfrować duże ilości danych niż w przypadku szyfru klucza asymetrycznego. Klucz symetryczny, który jest używany do szyfrowania pliku jest następnie zaszyfrowany za pomocą klucza publicznego, który jest skojarzony z użytkownikiem, który zaszyfrował plik, a te zaszyfrowane dane są przechowywane w alternatywnym strumieniu danych zaszyfrowanego pliku., Aby odszyfrować plik, system plików używa klucza prywatnego użytkownika do odszyfrowania klucza symetrycznego przechowywanego w strumieniu danych. Następnie używa klucza symetrycznego do odszyfrowania pliku. Ponieważ odbywa się to na poziomie systemu plików, jest to przejrzyste dla użytkownika. Ponadto, w przypadku utraty dostępu do klucza, w systemie EFS wbudowano obsługę dodatkowych kluczy odszyfrowujących, dzięki czemu agent odzyskiwania może nadal uzyskać dostęp do plików w razie potrzeby., Szyfrowanie dostarczane przez NTFS i kompresja dostarczane przez NTFS wzajemnie się wykluczają; jednak NTFS może być używany dla jednego i narzędzia innych firm dla drugiego.
obsługa EFS nie jest dostępna w wersjach systemu Windows Basic, Home i MediaCenter i musi być aktywowana po instalacji Professional, Ultimate I Server lub za pomocą narzędzi do wdrażania dla przedsiębiorstw w domenach Windows.
quotasedit
kwoty dyskowe zostały wprowadzone w NTFS v3., Pozwalają one administratorowi komputera uruchamiającego wersję systemu Windows obsługującą system NTFS ustawić próg miejsca na dysku, z którego mogą korzystać użytkownicy. Pozwala również administratorom śledzić, ile miejsca na dysku zużywa każdy użytkownik. Administrator może określić określony poziom miejsca na dysku, z którego może korzystać użytkownik, zanim otrzyma ostrzeżenie, a następnie odmówić Użytkownikowi dostępu po przekroczeniu górnej granicy miejsca. Przydziały dyskowe nie uwzględniają przezroczystej kompresji plików NTFS, jeśli jest to włączone., Aplikacje, które zapytają o ilość wolnego miejsca, zobaczą również ilość wolnego miejsca pozostawioną użytkownikowi, który ma do nich przypisany limit.
Points Rearseedytuj
wprowadzony w NTFS v3, NTFS rearse points są używane przez skojarzenie znacznika rearse w atrybucie przestrzeni użytkownika pliku lub katalogu. Microsoft zawiera kilka domyślnych tagów, w tym dowiązania symboliczne, punkty połączenia katalogów i punkty montowania woluminów., Gdy Menedżer obiektów przetwarza wyszukiwanie nazwy systemu plików i napotka atrybut ponownej analizy, przeprosi wyszukiwanie nazwy, przekazując kontrolowane przez użytkownika dane ponownej analizy do każdego sterownika filtra systemu plików, który jest ładowany do systemu Windows. Każdy sterownik filtra bada dane ponownej analizy, aby sprawdzić, czy są one powiązane z tym punktem ponownej analizy, a jeśli sterownik filtra określi dopasowanie, przechwyci żądanie systemu plików i wykona jego specjalną funkcjonalność.
ResizingEdit
począwszy od systemu Windows Vista Microsoft dodał wbudowaną możliwość zmniejszania lub rozszerzania partycji., Jednak ta zdolność nie przenosi fragmentów plików stron ani plików, które zostały oznaczone jako nieusuwalne, więc zmniejszenie woluminu często wymaga przeniesienia lub wyłączenia dowolnego pliku strony, indeksu wyszukiwania systemu Windows i każdej kopii cienia używanej przez Przywracanie systemu. Różne narzędzia innych firm mogą zmieniać rozmiar partycji NTFS.