NTFS
Разработчик(и) | Майкрософт |
---|---|
Полное имя | Файловая система NT [ 2 ] |
Представлено | 27 июля 1993 г Windows NT 3.1 | с
Идентификаторы разделов | 0x07 ( МБР ) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 ( GPT ) |
Структуры | |
Содержимое каталога | B-дерева Вариант [ 3 ] [ 4 ] |
Распределение файлов | Растровое изображение |
Плохие блоки | $BadClus (запись MFT) |
Пределы | |
Максимальный размер тома | 2 64 кластеры – 1 кластер (формат); 256 ТБ [ а ] − 64 КБ [ а ] ( Windows 10 версии 1703, Windows Server 2016 или более ранней версии) [ 5 ] 8 ПБ [ а ] − 2 МБ [ а ] (Windows 10 версии 1709, Windows Server 2019 или более поздней версии) [ 6 ] |
Максимальный размер файла | 16 ЭБ [ а ] − 1 КБ (формат); 16 ТБ – 64 КБ ( Windows 7 , Windows Server 2008 R2 или более ранняя версия) [ 5 ] 256 ТБ – 64 КБ ( версия Windows 8 , Windows Server 2012 или более поздней версии) [ 7 ] 8 ПБ — 2 МБ (Windows 10 версии 1709, Windows Server 2019 или более поздней версии) [ 6 ] |
Макс нет. файлов | 4,294,967,295 (2 32 −1) [ 5 ] |
Максимальная длина имени файла | 255 UTF-16 кодовых единиц [ 8 ] |
Разрешенное имя файла персонажи |
|
Функции | |
Даты записи | Создание, модификация, изменение POSIX, доступ |
Диапазон дат | 1 января 1601 г. - 28 мая 60056 г. (время файла представляет собой 64-битные числа без знака. [ 9 ] считая 100-наносекундные интервалы (десять миллионов в секунду) с 1601 года, то есть более 58 000 лет) |
Разрешение даты | 100 нс |
Вилки | Да (см. § Альтернативный поток данных (ADS) ниже) |
Атрибуты | Только для чтения, скрытый, системный, архивный, без индексирования содержимого, автономный, временный, сжатый, зашифрованный |
Файловая система разрешения | списки управления доступом |
Прозрачный сжатие | Пофайлово, LZ77 ( Windows NT 3.51 и более поздние версии) |
Прозрачный шифрование | Пофайлово, DESX ( Windows 2000 и более поздние версии), Тройной DES ( начиная с Windows XP ), AES (Windows XP с пакетом обновления 1, Windows Server 2003 и более поздние версии) |
Дедупликация данных | Да ( Windows Server 2012 ) [ 10 ] |
Другой | |
Поддерживается операционные системы | Windows NT 3.1 и более поздние версии Mac OS X 10.3 и более поздние версии (только чтение) Ядро Linux версии 2.6 и новее Ядро Linux версий 2.2–2.4 (только чтение) FreeBSD NetBSD OpenBSD (только чтение) ChromeOS Солярис ReactOS (только чтение) |
Файловая система новой технологии ( NTFS ) — это собственная файловая система журналирования, разработанная Microsoft . [ 2 ] [ 1 ] Начиная с Windows NT 3.1 , это файловая система по умолчанию в семействе Windows NT . [ 11 ] Она заменила таблицу размещения файлов (FAT) в качестве предпочтительной файловой системы в Windows , а также поддерживается в Linux и BSD . Поддержка чтения и записи NTFS обеспечивается с помощью бесплатной реализации ядра с открытым исходным кодом, известной как NTFS3 в Linux и драйвера NTFS-3G в BSD . [ 12 ] [ 13 ] Используя convert
Команда Windows может преобразовать FAT32 /16/12 в NTFS без необходимости перезаписывать все файлы. [ 14 ] NTFS использует несколько файлов, обычно скрытых от пользователя, для хранения метаданных о других файлах, хранящихся на диске, что может помочь повысить скорость и производительность при чтении данных. [ 1 ] В отличие от FAT и высокопроизводительной файловой системы (HPFS), NTFS поддерживает списки контроля доступа (ACL), шифрование файловой системы, прозрачное сжатие, разреженные файлы и ведение журнала файловой системы . NTFS также поддерживает теневое копирование , позволяющее создавать резервные копии системы во время ее работы, но функциональность теневых копий различается в разных версиях Windows. [ 15 ]
История
[ редактировать ]В середине 1980-х годов Microsoft и IBM сформировали совместный проект по созданию графической операционной системы следующего поколения ; результатом стали OS/2 и HPFS . Поскольку Microsoft не соглашалась с IBM по многим важным вопросам, в конечном итоге они расстались; OS/2 оставалась проектом IBM, а Microsoft работала над разработкой Windows NT и NTFS.
Файловая система HPFS для OS/2 содержала несколько важных новых функций. Когда Microsoft создавала свою новую операционную систему, они позаимствовали многие из этих концепций для NTFS. [ 16 ] Первоначальными разработчиками NTFS были Том Миллер , Гэри Кимура, Брайан Эндрю и Дэвид Гебель. [ 17 ]
Вероятно, из-за общего происхождения HPFS и NTFS используют один и тот же код типа идентификации раздела диска (07). Использование одного и того же номера записи идентификатора раздела весьма необычно, поскольку существуют десятки неиспользуемых кодовых номеров, а другие основные файловые системы имеют свои собственные коды. Например, в FAT их больше девяти (по одному для FAT12 , FAT16 , FAT32 и т. д.). Алгоритмы определения файловой системы в разделе типа 07 должны выполнять дополнительные проверки, чтобы различать HPFS и NTFS.
Версии
[ редактировать ]Microsoft выпустила пять версий NTFS:
Номер версии NTFS | Первая операционная система | Дата выпуска | Новые возможности | Примечания |
---|---|---|---|---|
1.0 | Windows НТ 3.1 | 1993 [ 11 ] | Начальная версия | NTFS 1.0 несовместима с версией 1.1 и более поздними версиями: тома, написанные под управлением Windows NT 3.5x, не могут быть прочитаны Windows NT 3.1 до тех пор, пока не будет установлено обновление (доступное на установочном носителе NT 3.5x). [ 18 ] |
1.1 | Windows НТ 3.5 | 1994 | Именованные потоки и списки контроля доступа [ 19 ] | Поддержка сжатия NTFS была добавлена в Windows NT 3.51. |
1.2 | Windows НТ 4.0 | 1996 | Дескрипторы безопасности | После выпуска ОС обычно называется NTFS 4.0. |
3.0 | Windows 2000 | 2000 | Дисковые квоты, шифрование на уровне файлов в форме шифрованной файловой системы , разреженные файлы , точки повторной обработки , ведение журнала порядкового номера обновления (USN) , распределенное отслеживание ссылок, $Extend папка и ее файлы
|
Совместимость с Windows NT 4.0 также стала доступной с обновлением Service Pack 4. После выпуска ОС обычно называется NTFS 5.0. [ 20 ] |
3.1 | Windows ХР | Октябрь 2001 г. | Расширены записи основной таблицы файлов (MFT) за счет избыточного номера записи MFT (полезно для восстановления поврежденных файлов MFT). | После выпуска ОС обычно называется NTFS 5.1. Версия LFS 1.1 была заменена версией 2.0 в Windows 8 для повышения производительности. |
The NTFS.sys
номер версии (например, v5.0 в Windows 2000) зависит от версии операционной системы; его не следует путать с номером версии NTFS (v3.1, начиная с Windows XP). [ 21 ] [ 22 ]
Хотя в последующих версиях Windows были добавлены новые функции, связанные с файловой системой, они не изменили саму NTFS. Например, в Windows Vista реализованы символические ссылки NTFS , транзакционная NTFS , сжатие разделов и самовосстановление. [ 23 ] Символические ссылки NTFS — это новая функция файловой системы; все остальные — это новые функции операционной системы, в которых используются уже существующие функции NTFS.
Масштабируемость
[ редактировать ]NTFS оптимизирована под 4 КБ. [ а ] кластеры , но поддерживает максимальный размер кластера 2 МБ. [ а ] . (Более ранние реализации поддерживают размер до 64 КБ) [ 6 ] Максимальный размер тома NTFS, который может поддерживать спецификация, равен 2. 64 − 1 кластеров, но не все реализации достигают этого теоретического максимума, как описано ниже.
Максимальный размер тома NTFS, реализованный в Windows XP Professional, равен 2. 32 − 1 кластеров, частично из-за ограничений таблицы разделов. Например, при использовании кластеров размером 64 КБ максимальный размер тома Windows XP NTFS составляет 256 ТБ минус 64 КБ . При использовании размера кластера по умолчанию, равного 4 КБ, максимальный размер тома NTFS составляет 16 ТБ минус 4 КБ. Оба они значительно выше, чем 128 ГБ. [ а ] ограничение в Windows XP SP1 . Многие прошивки BIOS ограничивают размер разделов Master Boot Records (MBR) до 2 ТиБ. [ 24 ] что является пределом для жестких дисков с размером физического сектора 512 байт, хотя для физического сектора размером 4 КиБ предел размера раздела MBR составляет 16 ТиБ. Альтернативой является использование нескольких томов таблицы разделов GUID (GPT или «динамических») для объединения в один том NTFS размером более 2 ТиБ. Для загрузки с тома GPT в среду Windows способом, поддерживаемым Microsoft, требуется система с унифицированным расширяемым интерфейсом встроенного ПО (UEFI) и 64-разрядной версией. [ б ] поддерживать. [ 25 ] Диски данных GPT поддерживаются в системах с BIOS.
Максимальный теоретический предел размера отдельных файлов NTFS составляет 16 ЭБ. [ а ] [ 26 ] ( 16 × 1024 6 или 2 64 байт ) минус 1 КБ, что составляет 18 446 744 073 709 550 592 байта. В Windows 10 версии 1709 и Windows Server 2019 максимальный реализованный размер файла составляет 8 ПБ. [ а ] минус 2 МБ или 9 007 199 252 643 840 байт. [ 6 ]
Совместимость
[ редактировать ]Окна
[ редактировать ]Хотя различные версии NTFS по большей части полностью совместимы как вперед , так и обратно , существуют технические соображения по установке новых томов NTFS в старых версиях Microsoft Windows. Это влияет на двойную загрузку и внешние портативные жесткие диски. Например, попытка использовать раздел NTFS с «Предыдущими версиями» ( Теневое копирование тома ) в операционной системе, которая его не поддерживает, приведет к потере содержимого этих предыдущих версий. [ 15 ] Утилита командной строки Windows Convert.exe может конвертировать поддерживаемые файловые системы в NTFS, включая HPFS (только в Windows NT 3.1, 3.5 и 3.51), FAT16 и FAT32 (в Windows 2000 и более поздних версиях). [ 27 ] [ 28 ]
FreeBSD
[ редактировать ]FreeBSD 3.2, выпущенная в мае 1999 года, включала поддержку NTFS только для чтения, написанную Семеном Устименко. [ 29 ] [ 30 ] Эта реализация была перенесена на NetBSD Кристосом Зуласом и Яромиром Долечеком и выпущена вместе с NetBSD 1.5 в декабре 2000 года. [ 31 ] Реализация NTFS во FreeBSD также была перенесена на OpenBSD Жюльеном Борде и предлагает встроенную поддержку NTFS только для чтения по умолчанию на платформах i386 и amd64, начиная с версии 4.9, выпущенной 1 мая 2011 года. [update][ 32 ] [ 30 ]
Линукс
[ редактировать ]Ядро Linux версии 2.1.74 и более поздних включает драйвер, написанный Мартином фон Лёвисом, который может читать разделы NTFS; [ 33 ] Версии ядра 2.5.11 и более поздние содержат новый драйвер, написанный Антоном Алтапармаковым ( Кембриджский университет ) и Ричардом Рассоном, который поддерживает чтение файлов. [ 34 ] [ 35 ] [ 33 ] Возможность записи в файлы была представлена в версии ядра 2.6.15 в 2006 году, которая позволяет пользователям записывать в существующие файлы, но не позволяет создавать новые. [ 36 ] Драйвер NTFS от Paragon (см. ниже) был включен в ядро версии 5.15 и поддерживает чтение/запись обычных, сжатых и разреженных файлов, а также воспроизведение журнала. [ 37 ]
NTFS-3G — это бесплатная . реализация NTFS под лицензией FUSE, которая изначально была разработана Сабольчем Сакачицем как драйвер ядра Linux Она была переписана как программа FUSE для работы в других системах, которые поддерживает FUSE, таких как macOS , FreeBSD, NetBSD, OpenBSD , [ 38 ] Solaris, QNX и Haiku [ 39 ] и позволяет читать и писать в разделы NTFS. Коммерческая версия NTFS-3G с повышенной производительностью под названием « Tuxera NTFS для Mac» также доступна от разработчиков NTFS-3G. [ 40 ]
Captive NTFS , драйвер-обертка, использующий собственный драйвер Windows. ntfs.sys существует для Linux. Она была построена как программа «Файловая система в пользовательском пространстве » (FUSE) и выпущена под лицензией GPL, но работа над Captive NTFS прекратилась в 2006 году. [ 41 ]
Ядро Linux начиная с версии 5.15 содержит NTFS3, полнофункциональный драйвер чтения-записи NTFS, который работает с версиями NTFS до 3.1 и поддерживается в основном группой Paragon Software Group .
macOS
[ редактировать ]Mac OS X 10.3 включала реализацию NTFS из FreeBSD, разработанную Устименко только для чтения. Затем в 2006 году Apple наняла Антона Альтапармакова для написания новой реализации NTFS для Mac OS X 10.6 . [ 42 ] Встроенная поддержка записи NTFS включена в версию 10.6 и более поздних версий, но не активирована по умолчанию, хотя существуют обходные пути для включения этой функциональности. Однако отчеты пользователей указывают на то, что функциональность нестабильна и имеет тенденцию вызывать панику ядра . [ 43 ]
Paragon Software Group продает драйвер чтения и записи под названием для Mac OS X. NTFS [ 44 ] который также присутствует в некоторых моделях жестких дисков Seagate . [ 45 ]
ОС/2
[ редактировать ]Пакет NetDrive для OS/2 (и его производные, такие как eComStation и ArcaOS ) поддерживает плагин, который обеспечивает доступ для чтения и записи к томам NTFS. [ 46 ] [ 47 ]
ПРИНАДЛЕЖАЩИЙ
[ редактировать ]Существует бесплатный драйвер чтения/записи для личного использования для MS-DOS от Avira под названием «NTFS4DOS». [ 48 ] [ 49 ]
Компания Ahead Software разработала драйвер «NTFSREAD» (версия 1.200) для DR-DOS 7.0x в период с 2002 по 2004 год. Он был частью их программного обеспечения Nero Burning ROM .
Безопасность
[ редактировать ]NTFS использует списки контроля доступа и шифрование на уровне пользователя для защиты пользовательских данных.
Списки контроля доступа (ACL)
[ редактировать ]В NTFS каждому файлу или папке назначается дескриптор безопасности , который определяет его владельца и содержит два списка управления доступом (ACL). Первый ACL, называемый списком управления доступом по усмотрению (DACL), точно определяет, какой тип взаимодействия (например, чтение, запись, выполнение или удаление) разрешен или запрещен каким пользователем или группами пользователей. Например, файлы в папке C:\Program Files
папка может быть прочитана и выполнена всеми пользователями, но изменена только пользователем, имеющим права администратора. [ 50 ] Windows Vista добавляет обязательную информацию об управлении доступом в списки DACL. Списки DACL являются основным направлением контроля учетных записей пользователей в Windows Vista и более поздних версиях.
Второй ACL, называемый списком управления доступом к системе (SACL), определяет, какие взаимодействия с файлом или папкой подлежат аудиту и должны ли они регистрироваться в случае успешного, неудачного или того и другого действия. Например, можно включить аудит конфиденциальных файлов компании, чтобы ее менеджеры знали, когда кто-то пытается их удалить или сделать копию и удалось ли им это сделать. [ 50 ]
Шифрование
[ редактировать ]Шифрованная файловая система (EFS) обеспечивает прозрачное для пользователя шифрование любого файла или папки на томе NTFS. [ 51 ] EFS работает совместно со службой EFS, Microsoft CryptoAPI и библиотекой времени выполнения файловой системы EFS (FSRTL). EFS работает путем шифрования файла с помощью массового симметричного ключа (также известного как ключ шифрования файла или FEK), который используется, поскольку для шифрования и дешифрования больших объемов данных требуется относительно небольшое количество времени, чем при с асимметричным ключом. шифровании используется. Симметричный ключ, используемый для шифрования файла, затем шифруется открытым ключом , связанным с пользователем, зашифровавшим файл, и эти зашифрованные данные сохраняются в альтернативном потоке данных зашифрованного файла. Для расшифровки файла файловая система использует закрытый ключ пользователя для расшифровки симметричного ключа, хранящегося в потоке данных. Затем он использует симметричный ключ для расшифровки файла. Поскольку это делается на уровне файловой системы, это прозрачно для пользователя. [ 52 ] Кроме того, на случай, если пользователь потеряет доступ к своему ключу, в систему EFS встроена поддержка дополнительных ключей дешифрования, так что агент восстановления по-прежнему сможет получить доступ к файлам при необходимости. Шифрование, предоставляемое NTFS, и сжатие, предоставляемое NTFS, являются взаимоисключающими; однако для одного можно использовать NTFS, а для другого — сторонний инструмент.
Поддержка EFS недоступна в версиях Windows Basic, Home и MediaCenter и должна быть активирована после установки версий Windows Professional, Ultimate и Server или с помощью инструментов корпоративного развертывания в доменах Windows.
Функции
[ редактировать ]Ведение журнала
[ редактировать ]NTFS — это журналируемая файловая система , в которой используется журнал NTFS ( $LogFile ) для записи изменений метаданных в том. Это функция, которую FAT не предоставляет, и она имеет решающее значение для NTFS, чтобы гарантировать, что ее сложные внутренние структуры данных останутся согласованными в случае сбоев системы или перемещения данных, выполняемых API дефрагментации , а также обеспечить легкий откат незафиксированных изменений этих важных данных. структуры при перемонтировании тома. В частности, затронуты структуры — битовая карта выделения тома, модификации записей MFT , такие как перемещение некоторых атрибутов переменной длины, хранящихся в записях MFT и списках атрибутов, а также индексы для каталогов и дескрипторов безопасности .
( $LogFile ) развивался в нескольких версиях:
Версия для Windows | $LogFile Версия формата |
---|---|
Windows НТ 4.0 | 1.1 |
Windows 2000 | |
Windows ХР | |
Windows Виста | |
Windows 7 | |
Windows 8 | 2.0 |
Windows 8.1 | |
Windows 10 |
Несовместимость Версии $LogFile, реализованные в Windows 8 , Windows 10 , Windows 11, не позволяют Windows 7 (и более ранним версиям Windows) распознавать версию 2.0 $LogFile . Обратная совместимость обеспечивается путем понижения версии $LogFile до версии 1.1, если том NTFS полностью отключен. Он снова обновляется до версии 2.0 при установке на совместимую версию Windows. Однако при переходе в спящий режим на диск в состоянии выхода из системы (также известном как гибридная загрузка или быстрая загрузка, которая включена по умолчанию) смонтированные файловые системы не отключаются, и, следовательно, $LogFile любой активной файловой системы не понижается до версии 1.1. Невозможность обработки версии 2.0 $LogFile в версиях Windows старше 8.0 приводит к ненужному вызову утилиты восстановления диска CHKDSK . Это особенно важно в сценарии мультизагрузки , включающем версии Windows до и после 8.0, или при частом перемещении устройства хранения между более старыми и новыми версиями. существует настройка В реестре Windows , предотвращающая автоматическое обновление $LogFile на более новую версию. Проблему также можно решить, отключив гибридную загрузку. [ 53 ]
Журнал USN (Журнал порядковых номеров обновлений) — это функция управления системой, которая записывает (в $Extend\$UsnJrnl ) изменяет файлы, потоки и каталоги на томе, а также их различные атрибуты и настройки безопасности. Журнал доступен приложениям для отслеживания изменений тома. [ 54 ] Этот журнал можно включить или отключить на несистемных томах. [ 55 ]
Жесткие ссылки
[ редактировать ]Функция жесткой ссылки позволяет различным именам файлов напрямую ссылаться на одно и то же содержимое файла. Жесткие ссылки могут ссылаться только на файлы в одном томе, поскольку каждый том имеет свой собственный MFT . Изначально жесткие ссылки были включены для поддержки подсистемы POSIX в Windows NT. [ 56 ]
Хотя жесткие ссылки используют одну и ту же запись MFT ( inode ), в которой записываются метаданные файла, такие как размер файла, дата изменения и атрибуты, NTFS также кэширует эти данные в записи каталога в целях повышения производительности. Это означает, что при просмотре содержимого каталога с использованием семейства API FindFirstFile/FindNextFile (эквивалентно API POSIX opendir/readdir) вы также получите эту кэшированную информацию, помимо имени и индексного дескриптора. Однако вы можете не увидеть актуальную информацию, поскольку эта информация гарантированно обновляется только при закрытии файла, и то только для каталога, из которого файл был открыт. [ 57 ] Это означает, что если файл имеет несколько имен через жесткие ссылки, обновление файла по одному имени не приводит к обновлению кэшированных данных, связанных с другим именем. Вы всегда можете получить актуальные данные, используя GetFileInformationByHandle (который является истинным эквивалентом функции статистики POSIX). Это можно сделать с помощью дескриптора, который не имеет доступа к самому файлу (передавая ноль в CreateFile для dwDesiredAccess), а закрытие этого дескриптора имеет побочный эффект обновления кэшированной информации.
Windows использует жесткие ссылки для поддержки коротких (8.3) имен файлов в NTFS. Поддержка операционной системы необходима, поскольку существуют устаревшие приложения, которые могут работать только с именами файлов 8.3, но поддержку можно отключить. В этом случае добавляется дополнительная запись имени файла и запись каталога, но версия 8.3 и длинное имя файла связаны и обновляются вместе, в отличие от обычной жесткой ссылки.
Файловая система NTFS имеет ограничение в 1024 жестких ссылки на файл. [ 58 ]
Альтернативный поток данных (ADS)
[ редактировать ]более одного потока данных Альтернативные потоки данных позволяют связать с именем файла ( разветвление ), используя формат «имя файла:имя потока» (например, «text.txt:extrastream»).
Потоки NTFS были представлены в Windows NT 3.1 , чтобы позволить Службам для Macintosh (SFM) хранить ветки ресурсов . Хотя текущие версии Windows Server больше не включают SFM, сторонние продукты Apple Filing Protocol (AFP) (например, ExtremeZ-IP компании GroupLogic ) по-прежнему используют эту функцию файловой системы.
Небольшой ADS с именем «Zone.Identifier» добавляется в Internet Explorer и в большинстве браузеров, чтобы помечать файлы, загруженные с внешних сайтов, как возможно небезопасные для запуска; тогда локальная оболочка потребует подтверждения пользователя перед их открытием. [ 59 ] Когда пользователь указывает, что ему больше не нужен этот диалог подтверждения, это объявление удаляется. Эта функция также известна как « Марк Интернета ». [ 60 ] [ 61 ]
Альтернативные потоки не отображаются в проводнике Windows, и их размер не включается в размер файла. Когда файл копируется или перемещается в другую файловую систему без поддержки ADS, пользователь предупреждается, что альтернативные потоки данных не могут быть сохранены. Такое предупреждение обычно не выдается, если файл прикреплен к электронному письму или загружен на веб-сайт. Таким образом, использование альтернативных потоков для важных данных может вызвать проблемы. Microsoft предоставляет инструмент под названием Streams [ 62 ] для просмотра потоков на выбранном томе. Начиная с Windows PowerShell 3.0, ADS можно управлять с помощью шести командлетов: Add-Content, Clear-Content, Get-Content, Get-Item, Remove-Item, Set-Content. [ 63 ]
Вредоносное ПО использует альтернативные потоки данных, чтобы скрыть код. [ 64 ] В результате сканеры вредоносных программ и другие специальные инструменты теперь [ когда? ] проверьте наличие альтернативных потоков данных.
Сжатие файлов
[ редактировать ]Сжатие включается для каждой папки или отдельного файла путем установки атрибута «сжатый». Если для папки включено сжатие, любые файлы, перемещенные или сохраненные в этой папке, будут автоматически сжиматься с использованием алгоритма LZNT1 (вариант LZ77 ). [ 65 ] Алгоритм сжатия рассчитан на поддержку размеров кластеров до 4 КБ; если размер кластера на томе NTFS превышает 4 КБ, сжатие NTFS недоступно. [ 66 ] Данные сжимаются в куски по 16 кластеров (размером до 64 КБ); если сжатие уменьшает размер 64 КБ данных до 60 КБ или меньше, NTFS обрабатывает ненужные страницы размером 4 КБ как пустые разреженные кластеры файлов — они не записываются. Это обеспечивает разумное время произвольного доступа, поскольку ОС просто должна следовать цепочке фрагментов.
Сжатие лучше всего работает с файлами, которые имеют повторяющееся содержимое, редко записываются, обычно доступны последовательно и сами по себе не сжимаются. Однопользовательские системы с ограниченным пространством на жестком диске могут извлечь выгоду из сжатия NTFS для небольших файлов размером от 4 КБ до 64 КБ или более, в зависимости от сжимаемости. Файлы размером менее 900 байт хранятся в записи каталога MFT . [ 67 ]
Преимущества
[ редактировать ]Пользователи быстрых многоядерных процессоров увидят повышение скорости работы приложений за счет сжатия приложений и данных, а также сокращения используемого пространства. Даже когда контроллеры SSD уже сжимают данные, количество операций ввода-вывода все равно сокращается, поскольку передается меньше данных. [ 68 ]
Согласно исследованию группы разработчиков NTFS Microsoft, 50–60 ГБ — это разумный максимальный размер для сжатого файла на томе NTFS с размером кластера (блока) 4 КБ (по умолчанию). Этот разумный максимальный размер резко уменьшается для томов с меньшим размером кластера. [ 69 ]
Недостатки
[ редактировать ]Большие сжимаемые файлы становятся сильно фрагментированными, поскольку каждый фрагмент размером менее 64 КБ становится фрагментом. [ 69 ] [ 70 ] Флэш-память, такая как твердотельные накопители, не имеет задержек движения головки и высокого времени доступа, как у механических жестких дисков , поэтому фрагментация имеет лишь меньшие последствия.
Если системные файлы, необходимые во время загрузки (например, драйверы, NTLDR, winload.exe или BOOTMGR), сжаты, система может не загрузиться правильно, поскольку фильтры распаковки еще не загружены. [ 71 ] [ не удалось пройти проверку ] Более поздние выпуски Windows [ который? ] не допускайте сжатия важных системных файлов.
Сжатие системы
[ редактировать ]Начиная с Windows 10 , Microsoft представила новую схему сжатия файлов, основанную на алгоритме XPRESS с размером блока 4K/8K/16K. [ 72 ] и алгоритм LZX ; [ 73 ] оба являются вариантами LZ77, обновленными энтропийным кодированием Хаффмана и кодированием диапазона , которых не хватало LZNT1. Эти алгоритмы сжатия были взяты из формата изображений Windows (файл WIM).
Новая схема сжатия используется функцией CompactOS, которая уменьшает использование диска за счет сжатия системных файлов Windows. [ 74 ] CompactOS не является расширением сжатия файлов NTFS и не использует атрибут «сжатый»; вместо этого он устанавливает точку повторной обработки для каждого сжатого файла с помощью тега WOF (Windows Overlay Filter), [ 75 ] но фактические данные хранятся в альтернативном потоке данных с именем «WofCompressedData», который распаковывается на лету драйвером фильтра файловой системы WOF , а основной файл представляет собой пустой разреженный файл . [ 75 ] Эта конструкция предназначена исключительно для доступа только для чтения, поэтому любая запись в сжатые файлы приводит к автоматической распаковке. [ 75 ] [ 76 ] [ 77 ]
Сжатие CompactOS предназначено для OEM-производителей , которые готовят образы ОС с помощью /compact
флаг DISM
инструмент в Windows ADK , [ 78 ] но его также можно включить вручную для каждого файла с помощью /exe
флаг compact
команда. [ 79 ] Алгоритм CompactOS позволяет избежать фрагментации файлов , записывая сжатые данные в смежные фрагменты, в отличие от основного сжатия NTFS. [ нужна ссылка ]
Сжатие файлов CompactOS — это улучшенная версия функции WIMBoot, представленная в Windows 8.1 . WIMBoot сокращает использование диска Windows, сохраняя системные файлы в сжатом образе WIM в отдельном скрытом разделе диска . [ 80 ] Как и в случае с CompactOS, системные каталоги Windows содержат только разреженные файлы, помеченные точкой повторной обработки с тегом WOF, а драйвер Windows Overlay Filter распаковывает содержимое файлов на лету из образа WIM. Однако WIMBoot менее эффективен, чем CompactOS, поскольку новые обновленные версии системных файлов необходимо записывать в системный раздел, занимая дисковое пространство. [ 75 ]
Разреженные файлы
[ редактировать ]Разреженные файлы — это файлы с вкраплениями пустых сегментов, для которых фактическое пространство для хранения не используется. Для приложений файл выглядит как обычный файл с пустыми областями, которые воспринимаются как области, заполненные нулями; файловая система поддерживает внутренний список таких регионов для каждого разреженного файла. [ 81 ] Разреженный файл не обязательно включает в себя редкие области нулей; атрибут «разреженный файл» просто означает, что файлу разрешено их иметь.
Например, приложения баз данных могут использовать разреженные файлы. [ 82 ] Как и в случае со сжатыми файлами, фактические размеры разреженных файлов не учитываются при определении ограничений квоты. [ 83 ]
Теневое копирование тома
[ редактировать ]Служба теневого копирования томов (VSS) сохраняет исторические версии файлов и папок на томах NTFS, копируя старые, недавно перезаписанные данные в теневое копирование с помощью метода копирования при записи . Позже пользователь может запросить восстановление более ранней версии. Это также позволяет программам резервного копирования данных архивировать файлы, которые в данный момент используются файловой системой.
В Windows Vista также представлены постоянные теневые копии для использования с функциями восстановления системы и предыдущих версий . Однако постоянные теневые копии удаляются, когда более старая операционная система монтирует этот том NTFS. Это происходит потому, что старая операционная система не понимает новый формат постоянных теневых копий. [ 15 ]
Транзакции
[ редактировать ]Начиная с Windows Vista, приложения могут использовать транзакционную NTFS (TxF) для группировки нескольких изменений файлов в одну транзакцию. Транзакция будет гарантировать, что либо все изменения произойдут, либо ни одно из них не произойдет, и что ни одно приложение вне транзакции не увидит изменения, пока они не будут зафиксированы. [ 84 ]
Он использует методы, аналогичные тем, которые используются для теневого копирования томов (т. е. копирование при записи), чтобы гарантировать возможность безопасного отката перезаписанных данных, а также журнал CLFS для пометки транзакций, которые еще не были зафиксированы или были зафиксировано, но еще не полностью применено (в случае сбоя системы во время коммита одним из участников).
Транзакционная NTFS не ограничивает транзакции только локальным томом NTFS, но также включает в себя другие транзакционные данные или операции в других местах, например данные, хранящиеся в отдельных томах, локальном реестре или базах данных SQL, а также текущие состояния системных служб или удаленных служб. . Эти транзакции координируются по всей сети со всеми участниками, использующими конкретную службу DTC , чтобы гарантировать, что все участники получат одно и то же состояние фиксации, и передать изменения, которые были проверены любым участником (чтобы другие могли аннулировать свои локальные транзакции). кэширование старых данных или откат текущих незафиксированных изменений). Транзакционная NTFS позволяет, например, создавать общесетевые согласованные распределенные файловые системы, в том числе с их локальными действующими или автономными кэшами.
Microsoft теперь не рекомендует использовать TxF: «Microsoft настоятельно рекомендует разработчикам использовать альтернативные средства», поскольку «TxF может быть недоступен в будущих версиях Microsoft Windows». [ 85 ]
Квоты
[ редактировать ]Дисковые квоты были введены в NTFS v3. Они позволяют администратору компьютера под управлением версии Windows, поддерживающей NTFS, устанавливать пороговое значение дискового пространства, которое могут использовать пользователи. Это также позволяет администраторам отслеживать, сколько дискового пространства использует каждый пользователь. Администратор может указать определенный уровень дискового пространства, который пользователь может использовать до того, как он получит предупреждение, а затем запретить пользователю доступ, как только он достигнет верхнего предела пространства. Дисковые квоты не учитывают прозрачное сжатие файлов NTFS , если оно включено. Приложения, запрашивающие объем свободного места, также будут видеть объем свободного места, оставшийся пользователю, к которому применена квота.
Точки повторной обработки
[ редактировать ]Точки повторной обработки NTFS, представленные в NTFS v3, используются путем связывания тега повторной обработки с атрибутом пользовательского пространства файла или каталога. Microsoft включает несколько тегов по умолчанию, включая символические ссылки , точки соединения каталогов и точки монтирования томов . Когда диспетчер объектов анализирует поиск имени файловой системы и обнаруживает атрибут повторной обработки, он повторно анализирует поиск имени, передавая контролируемые пользователем данные повторной обработки каждому драйверу фильтра файловой системы, загружаемому в Windows. Каждый драйвер фильтра проверяет данные повторной обработки, чтобы определить, связаны ли они с этой точкой повторной обработки, и если этот драйвер фильтра определяет совпадение, он перехватывает запрос файловой системы и выполняет свои специальные функции.
Ограничения
[ редактировать ]Изменение размера
[ редактировать ]Начиная с Windows Vista, Microsoft добавила встроенную возможность сжимать или расширять раздел. Однако эта возможность не перемещает фрагменты файла подкачки или файлы, помеченные как неперемещаемые, поэтому для сжатия тома часто потребуется переместить или отключить любой файл подкачки , индекс поиска Windows и любую теневую копию, используемую при восстановлении системы . Различные сторонние инструменты способны изменять размер разделов NTFS.
OneDrive
[ редактировать ]С 2017 года Microsoft требует, чтобы файловая структура OneDrive находилась на диске NTFS. [ 86 ] Это связано с тем, что функция OneDrive «Файлы по требованию» использует точки повторной обработки NTFS для связи файлов и папок, хранящихся в OneDrive, с локальной файловой системой, что делает файл или папку непригодными для использования в любой предыдущей версии Windows, с любым другим драйвером файловой системы NTFS или любая файловая система и утилиты резервного копирования не обновлены для ее поддержки. [ 87 ]
Структура
[ редактировать ]NTFS состоит из нескольких компонентов, включая: загрузочный сектор раздела (PBS), содержащий загрузочную информацию; главная файловая таблица, в которой хранятся записи обо всех файлах и папках файловой системы; серия метафайлов, которые помогают более эффективно структурировать метаданные; потоки данных и механизмы блокировки.
Внутри NTFS использует B-деревья для индексации данных файловой системы. Журнал файловой системы используется для обеспечения целостности метаданных файловой системы, но не содержимого отдельных файлов. Известно, что системы, использующие NTFS, имеют повышенную надежность по сравнению с файловыми системами FAT. [ 88 ]
NTFS допускает любую последовательность 16-битных значений для кодирования имен (например, имен файлов, имен потоков или имен индексов), кроме 0x0000. Это означает, что UTF-16 поддерживаются кодовые единицы , но файловая система не проверяет, действительна ли последовательность UTF-16 (она допускает любую последовательность коротких значений, не ограничиваясь теми, которые указаны в стандарте Unicode). В пространстве имен Win32 любые единицы кода UTF-16 нечувствительны к регистру, тогда как в пространстве имен POSIX они чувствительны к регистру. Имена файлов ограничены 255 кодовыми единицами UTF-16. Некоторые имена зарезервированы в корневом каталоге тома и не могут использоваться для файлов. Это $MFT
, $MFTMirr
, $LogFile
, $Volume
, $AttrDef
, .
(точка), $Bitmap
, $Boot
, $BadClus
, $Secure
, $UpCase
, и $Extend
. [ 5 ] .
(точка) и $Extend
оба каталога; остальные — файлы. Ядро NT ограничивает полные пути 32 767 единицами кода UTF-16. Существуют некоторые дополнительные ограничения на кодовые точки и имена файлов. [ 89 ]
Загрузочный сектор раздела (PBS)
[ редактировать ]Компенсация обмена | Длина поля | Типичное значение | Имя поля | Цель | |
---|---|---|---|---|---|
0x00 | 3 байта | 0xEB5290 | x86 JMP и NOP Инструкции | Заставляет выполнение продолжаться после структур данных в этом загрузочном секторе. | |
0x03 | 8 байт | " NTFS " Слово «NTFS», за которым следуют четыре пробела в конце (0x20). |
OEM-идентификатор | Это магическое число, указывающее, что это файловая система NTFS. | |
0x0B | 2 байта | 0x0200 | БПБ | Байтов на сектор | Количество байт в секторе диска. |
0x0D | 1 байт | 0x08 | Секторов в кластере | Количество секторов в кластере. Если значение больше 0x80, количество секторов равно 2 в степени абсолютного значения, считая это поле отрицательным. | |
0x0E | 2 байта | 0x0000 | Зарезервированные сектора, неиспользуемые | ||
0x10 | 3 байта | 0x000000 | Неиспользованный | Это поле всегда равно 0 | |
0x13 | 2 байта | 0x0000 | Не используется NTFS | Это поле всегда равно 0 | |
0x15 | 1 байт | 0xF8 | Медиа-дескриптор | Тип привода. 0xF8 используется для обозначения жесткого диска (в отличие от дискет нескольких размеров). | |
0x16 | 2 байта | 0x0000 | Неиспользованный | Это поле всегда равно 0 | |
0x18 | 2 байта | 0x003F | Секторов на дорожку | Количество секторов диска на дорожке диска. | |
0x1A | 2 байта | 0x00FF | Количество голов | Количество головок на диске. | |
0x1C | 4 байта | 0x0000003F | Скрытые сектора | Количество секторов, предшествующих разделу. | |
0x20 | 4 байта | 0x00000000 | Неиспользованный | Не используется NTFS | |
0x24 | 4 байта | 0x00800080 | ЭБПБ | Неиспользованный | Не используется NTFS |
0x28 | 8 байт | 0x00000000007FF54A | Всего секторов | Размер раздела в секторах. | |
0x30 | 8 байт | 0x0000000000000004 | Номер кластера $MFT | Кластер, содержащий основную таблицу файлов. | |
0x38 | 8 байт | 0x000000000007FF54 | $MFTMirr номер кластера | Кластер, содержащий резервную копию главной таблицы файлов. | |
0x40 | 1 байт | 0xF6 | Байтов или кластеров на сегмент записи файла | Положительное значение обозначает количество кластеров в сегменте файловой записи. Отрицательное значение обозначает количество байтов в сегменте файловой записи, и в этом случае размер равен 2 в степени абсолютного значения. (0xF6 = -10 → 2 10 = 1024). | |
0x41 | 3 байта | 0x000000 | Неиспользованный | Это поле не используется NTFS. | |
0x44 | 1 байт | 0x01 | Байтов или кластеров на индексный буфер | Положительное значение обозначает количество кластеров в индексном буфере. Отрицательное значение обозначает количество байтов и использует тот же алгоритм для отрицательных чисел, что и «Байтов или кластеров на сегмент записи файла». | |
0x45 | 3 байта | 0x000000 | Неиспользованный | Это поле не используется NTFS. | |
0x48 | 8 байт | 0x1C741BC9741BA514 | Серийный номер тома | Уникальный случайный номер, присвоенный этому разделу для организованности. | |
0x50 | 4 байта | 0x00000000 | Контрольная сумма, не используется | Якобы контрольная сумма. | |
0x54 | 426 байт | Начальный код | Код, который загружает остальную часть операционной системы. На это указывают первые 3 байта этого сектора. | ||
0x01FE | 2 байта | 0xAA55 | Маркер конца сектора | Этот флаг указывает, что это действительный загрузочный сектор. |
Этот формат загрузочного раздела примерно основан на более ранней файловой системе FAT , но поля находятся в разных местах. Некоторые из этих полей, особенно поля «Секторов на дорожку», «Количество головок» и «Скрытые секторы», могут содержать фиктивные значения на дисках, где они либо не имеют смысла, либо не поддаются определению.
ОС сначала просматривает 8 байтов по адресу 0x30, чтобы найти номер кластера $MFT, затем умножает это число на количество секторов в кластере (1 байт находится по адресу 0x0D). Это значение представляет собой смещение сектора ( LBA ) для $MFT, которое описано ниже.
Основная таблица файлов
[ редактировать ]В NTFS все данные файлов, каталогов и метафайлов — имя файла, дата создания, права доступа (с использованием списков управления доступом ) и размер — хранятся в виде метаданных в основной таблице файлов ( MFT ). Этот абстрактный подход позволил легко добавлять функции файловой системы во время разработки Windows NT — примером является добавление полей для индексации, используемых Active Directory и Windows Search . Это также позволяет программному обеспечению быстрого поиска файлов очень быстро находить именованные локальные файлы и папки, включенные в MFT, без необходимости использования какого-либо другого индекса.
Структура MFT поддерживает алгоритмы, минимизирующие фрагментацию диска . [ 92 ] Запись каталога состоит из имени файла и «идентификатора файла» (аналога номера индексного дескриптора ), который представляет собой номер записи, представляющей файл в основной таблице файлов. Идентификатор файла также содержит счетчик повторного использования для обнаружения устаревших ссылок. Хотя это сильно напоминает W_FID Files-11 , другие структуры NTFS радикально отличаются.
Частичная копия MFT, называемая зеркалом MFT, сохраняется для использования в случае повреждения. [ 93 ] Если первая запись MFT повреждена, NTFS считывает вторую запись, чтобы найти файл зеркала MFT. Расположение обоих файлов хранится в загрузочном секторе. [ 94 ]
Метафайлы
[ редактировать ]NTFS содержит несколько файлов, которые определяют и организуют файловую систему. Во всех отношениях большинство этих файлов имеют структуру, подобную любому другому пользовательскому файлу (наиболее своеобразным является $Volume), но не представляют прямого интереса для клиентов файловой системы. [ 95 ] Эти метафайлы определяют файлы, создают резервные копии важных данных файловой системы, буферизируют изменения файловой системы, управляют распределением свободного пространства, удовлетворяют ожиданиям BIOS , отслеживают неправильные единицы распределения и хранят информацию о безопасности и использовании дискового пространства. Весь контент находится в безымянном потоке данных, если не указано иное.
Номер сегмента | Имя файла | Цель |
---|---|---|
0 | $MFT
|
Описывает все файлы на томе, включая имена файлов, временные метки, имена потоков и списки номеров кластеров, в которых находятся потоки данных, индексы, идентификаторы безопасности и атрибуты файлов, такие как «только для чтения», «сжатый», «зашифрованный» и т. д. |
1 | $MFTMirr
|
Дубликат первых важных записей $MFT , обычно 4 записи (4 килобайта ). |
2 | $LogFile
|
Содержит журнал транзакций изменений метаданных файловой системы. |
3 | $Volume
|
Содержит информацию о томе, а именно идентификатор объекта тома, метку тома , версию файловой системы и флаги тома (подключен, запрошен chkdsk, запрошен Изменение размера $LogFile , подключение к NT 4, обновление серийного номера тома, запрос на обновление структуры). Эти данные хранятся не в потоке данных, а в специальных атрибутах MFT: если они присутствуют, идентификатор объекта тома сохраняется в запись $OBJECT_ID ; метка тома хранится в запись $VOLUME_NAME , а остальные данные тома находятся в Запись $VOLUME_INFORMATION . Примечание. Серийный номер тома хранится в файле. $Boot (ниже). |
4 | $AttrDef
|
Таблица атрибутов MFT, которая связывает числовые идентификаторы с именами. |
5 | .
|
Корневой каталог . Данные каталога хранятся в $INDEX_ROOT и $INDEX_ALLOCATION названы Оба атрибута 30 долларов США . |
6 | $Bitmap
|
Массив битовых записей: каждый бит указывает, используется ли соответствующий кластер (выделен) или свободен (доступен для выделения). |
7 | $Boot
|
Загрузочная запись тома (VBR). Этот файл всегда находится в первых кластерах тома. Он содержит код начальной загрузки (см. NTLDR / BOOTMGR ) и блок параметров BIOS, включающий серийный номер тома и номера кластеров. $MFT и $MFTMirr . |
8 | $BadClus
|
Файл, содержащий все кластеры, помеченные как имеющие поврежденные сектора . Этот файл упрощает управление кластером с помощью утилиты chkdsk как в качестве места для размещения недавно обнаруженных поврежденных секторов, так и для идентификации кластеров, на которые нет ссылок. Этот файл содержит два потока данных, даже на томах без сбойных секторов: безымянный поток содержит сбойные сектора — для идеальных томов его длина равна нулю; второй поток называется $Bad и содержит все кластеры на томе, не входящем в первый поток. |
9 | $Secure
|
База данных списков управления доступом , которая снижает накладные расходы за счет множества идентичных списков ACL, хранящихся в каждом файле, за счет уникального хранения этих списков ACL только в этой базе данных (содержит два индекса: $SII (идентификатор стандартной_информации) и $SDH ( хэш дескриптора безопасности ) , который индексирует поток с именем $SDS, содержащий фактическую таблицу ACL). [ 19 ] |
10 | $UpCase
|
Таблица символов верхнего регистра Юникода для обеспечения нечувствительности к регистру в пространствах имен Win32 и DOS. |
11 | $Extend
|
Каталог файловой системы, содержащий различные дополнительные расширения, такие как $Квота , $Объид , $Повторная обработка или $UsnJrnl . |
12–23 | Зарезервировано для Записи расширения $MFT . Записи расширения — это дополнительные записи MFT, содержащие дополнительные атрибуты, не вписывающиеся в основную запись. Это может произойти, если файл достаточно фрагментирован, имеет много потоков, длинные имена файлов, сложную систему безопасности или другие редкие ситуации. | |
24 | $Extend\$Quota
|
Содержит информацию о дисковых квотах. Содержит два индексных корня с именами $О и $Q . |
25 | $Extend\$ObjId
|
Содержит информацию об отслеживании ссылок . Содержит корень индекса и выделение с именем $О . |
26 | $Extend\$Reparse
|
Содержит данные точки повторной обработки (например, символические ссылки ). Содержит корень индекса и выделение с именем $Р . |
27– | Начало обычных записей в файле. |
Эти метафайлы обрабатываются Windows особым образом и обрабатываются непосредственно NTFS.SYS
драйвер и их трудно просмотреть напрямую: необходимы специальные специальные инструменты. [ с ] Начиная с Windows 7, драйвер NTFS полностью запрещает доступ пользователей, что приводит к возникновению BSoD при каждой попытке выполнить файл метаданных. Одним из таких инструментов является nfi.exe («Утилита получения информации о файловом секторе NTFS»), которая свободно распространяется как часть «Инструментов поддержки OEM» Microsoft. Например, для получения информации о сегменте основной таблицы файлов «$MFT» используется следующая команда: nfi.exe c:\$MFT
[ 96 ] Другой способ обойти ограничение — использовать файловый менеджер 7-Zip и перейти по низкоуровневому пути NTFS. \\.\X:\
(где X:\
напоминает любой диск/раздел). Здесь появятся 3 новые папки: $EXTEND
, [DELETED]
(псевдопапка, которую 7-Zip использует для прикрепления файлов, удаленных из файловой системы, для просмотра) и [SYSTEM]
(еще одна псевдопапка, содержащая все файлы метаданных NTFS). Этот трюк можно использовать со съемных устройств ( USB -накопителей, внешних жестких дисков , SD-карт и т. д.) внутри Windows, но для этого на активном разделе требуется автономный доступ (а именно WinRE ).
Списки атрибутов, атрибуты и потоки
[ редактировать ]Для каждого файла (или каталога), описанного в записи MFT, существует линейное хранилище дескрипторов потоков (также называемых атрибутами ), упакованных вместе в одну или несколько записей MFT (содержащих так называемый список атрибутов ), с дополнительным заполнением для заполнения. фиксированный размер каждой записи MFT в 1 КБ, что полностью описывает эффективные потоки, связанные с этим файлом.
Каждый атрибут имеет тип атрибута (целое число фиксированного размера, сопоставленное с определением атрибута в файле). $AttrDef ), необязательное имя атрибута (например, используемое в качестве имени альтернативного потока данных) и значение, представленное в виде последовательности байтов. В NTFS стандартные данные файлов, альтернативные потоки данных или индексные данные каталогов хранятся как атрибуты.
В соответствии с $AttrDef некоторые атрибуты могут быть резидентными или нерезидентными. Атрибут $DATA , содержащий данные файла, является таким примером. Если атрибут является резидентным (что представлено флагом), его значение сохраняется непосредственно в записи MFT. В противном случае для данных выделяются кластеры, а информация о местоположении кластера сохраняется по мере выполнения данных в атрибуте.
- Для каждого файла в MFT атрибуты, идентифицированные по типу атрибута и имени атрибута, должны быть уникальными. Кроме того, в NTFS есть некоторые ограничения по порядку этих атрибутов.
- Существует предопределенный тип атрибута null, используемый для обозначения конца списка атрибутов в одной записи MFT. Он должен присутствовать в качестве последнего атрибута в записи (все остальное пространство памяти, доступное после него, будет игнорироваться и состоит только из байтов заполнения, чтобы соответствовать размеру записи в MFT).
- Некоторые типы атрибутов являются обязательными и должны присутствовать в каждой записи MFT, за исключением неиспользуемых записей, которые просто обозначаются нулевыми типами атрибутов.
- Это относится к Атрибут $STANDARD_INFORMATION , который хранится в виде записи фиксированного размера и содержит метки времени и другие базовые однобитовые атрибуты (совместимые с атрибутами, управляемыми FAT в DOS или Windows 9x ).
- Некоторые типы атрибутов не могут иметь имени и должны оставаться анонимными.
- Это относится к стандартным атрибутам или к предпочтительному типу атрибута «имя файла» NTFS или к типу атрибута «короткое имя файла», если он также присутствует (о совместимости с DOS-подобными приложениями см. ниже). Также возможно, что файл будет содержать только короткое имя, и в этом случае оно будет предпочтительным, как указано в проводнике Windows.
- Атрибуты имени файла, хранящиеся в списке атрибутов, не обеспечивают немедленный доступ к файлу через иерархическую файловую систему . Фактически, все имена файлов должны быть проиндексированы отдельно хотя бы в одном другом каталоге того же тома. Там у него должна быть собственная запись MFT, а также собственные дескрипторы безопасности и атрибуты, ссылающиеся на номер записи MFT для этого файла. Это позволяет несколько раз «жестко связывать» один и тот же файл или каталог с несколькими контейнерами на одном томе, возможно, с разными именами файлов.
- Поток данных по умолчанию для обычного файла — это поток типа $DATA , но с анонимным именем, а ADS аналогичны, но должны иметь имя.
- С другой стороны, поток данных каталогов по умолчанию имеет отдельный тип, но не является анонимным: у них есть имя атрибута (" $I30 » в NTFS 3+), что отражает формат индексации.
Все атрибуты данного файла можно отобразить с помощью nfi.exe («Утилиты получения информации о файловом секторе NTFS»), которая свободно распространяется как часть «Инструментов поддержки OEM» Microsoft. [ 96 ]
Системные вызовы Windows могут обрабатывать альтернативные потоки данных. [ 5 ] В зависимости от операционной системы, утилиты и удаленной файловой системы передача файлов может незаметно удалять потоки данных. [ 5 ] Безопасный способ копирования или перемещения файлов — использовать системные вызовы BackupRead и BackupWrite, которые позволяют программам перечислять потоки, проверять, следует ли записывать каждый поток на целевой том, и сознательно пропускать нежелательные потоки. [ 5 ]
Атрибуты резидента и нерезидента
[ редактировать ]Чтобы оптимизировать хранилище и уменьшить накладные расходы ввода-вывода для очень распространенного случая атрибутов с очень маленьким связанным значением, NTFS предпочитает размещать значение внутри самого атрибута (если размер атрибута не превышает максимальный размер атрибута). запись MFT) вместо использования пространства записей MFT для вывода списка кластеров, содержащих данные; в этом случае атрибут не будет хранить данные напрямую, а просто сохранит карту распределения (в виде прогонов данных ), указывающую на фактические данные, хранящиеся в другом месте тома. [ 97 ] Когда к значению можно получить доступ непосредственно из атрибута, оно называется «резидентными данными» ( специалисты по компьютерной криминалистике ). Объем подходящих данных сильно зависит от характеристик файла, но для однопоточных файлов с небольшими именами и без списков управления доступом обычно используется размер от 700 до 800 байт.
- Некоторые атрибуты (например, предпочтительное имя файла, основные атрибуты файла) нельзя сделать нерезидентными. Для нерезидентных атрибутов их карта распределения должна соответствовать записям MFT.
- Потоки данных, зашифрованные с помощью NTFS, разреженные или сжатые потоки данных не могут быть сделаны резидентными.
- Формат карты распределения нерезидентных атрибутов зависит от ее способности поддерживать разреженное хранение данных. В текущей реализации NTFS, как только поток нерезидентных данных помечен и преобразован как разреженный, его нельзя изменить обратно на неразреженные данные, поэтому он не может снова стать резидентным, если только эти данные не будут полностью усечены, отбрасывая разреженные данные. карта распределения полностью.
- Если нерезидентный атрибут настолько фрагментирован, что его эффективная карта распределения не может полностью поместиться в одну запись MFT, NTFS сохраняет атрибут в нескольких записях. Первая из них называется базовой записью, а остальные — записями расширения. NTFS создает специальный атрибут $ATTRIBUTE_LIST для хранения информации, сопоставляющей различные части длинного атрибута с записями MFT, что означает, что карта распределения может быть разделена на несколько записей. Сам $ATTRIBUTE_LIST также может быть нерезидентным, но его собственная карта распределения должна помещаться в одну запись MFT.
- Если атрибутов файла слишком много (включая ADS, расширенные атрибуты или дескрипторы безопасности ), и все они не могут поместиться в записи MFT, записи расширения также могут использоваться для хранения других атрибутов, используя тот же формат, что и файл. тот, который используется в базовой записи MFT, но без ограничений по пространству, присущих одной записи MFT.
Карта распределения хранится в виде прогонов данных со сжатым кодированием. Каждый прогон данных представляет собой непрерывную группу кластеров, в которых хранится значение атрибута. Для файлов на томе объемом несколько ГБ каждая запись может быть закодирована как 5–7 байт, что означает, что запись MFT размером 1 КБ может хранить около 100 таких запусков данных. Однако, поскольку $ATTRIBUTE_LIST также имеет ограничение на размер: опасно иметь более 1 миллиона фрагментов одного файла на томе NTFS, что также означает, что в целом не рекомендуется использовать сжатие NTFS для файла размером более 10 ГБ. . [ 98 ]
Драйвер файловой системы NTFS иногда пытается переместить данные некоторых атрибутов, которые можно сделать нерезидентными, в кластеры, а также пытается переместить данные, хранящиеся в кластерах, обратно в атрибут внутри записи MFT, основываясь на правила приоритета и предпочтительного порядка, а также ограничения по размеру.
Поскольку резидентные файлы не занимают кластеры напрямую («единицы распределения»), том NTFS может содержать больше файлов, чем кластеров. Например, раздел размером 74,5 ГБ формата NTFS с 19 543 064 кластерами по 4 КБ . За вычетом системных файлов ( файл журнала размером 64 МБ , растровый файл размером 2 442 888 байт и около 25 кластеров фиксированных служебных данных) остается 19 526 158 кластеров свободными для файлов и индексов. Поскольку в каждом кластере имеется четыре записи MFT, теоретически этот том может содержать почти 4 × 19 526 158 = 78 104 632 резидентных файла.
Оппортунистические замки
[ редактировать ]Оппортунистические блокировки файлов (oplocks) позволяют клиентам изменять свою стратегию буферизации для данного файла или потока, чтобы повысить производительность и сократить использование сети. [ 99 ] Операционные блокировки применяются к данному открытому потоку файла и не влияют на операционные блокировки в другом потоке.
Oplocks можно использовать для прозрачного доступа к файлам в фоновом режиме. Сетевой клиент может избегать записи информации в файл на удаленном сервере, если никакой другой процесс не обращается к данным, или он может буферизовать данные упреждающего чтения, если никакой другой процесс не записывает данные.
Windows поддерживает четыре различных типа опблокировок:
- Опблокировка уровня 2 (или общая): несколько устройств чтения, без записи (т. е. кэширование чтения).
- Oplock уровня 1 (или монопольная): монопольный доступ с произвольной буферизацией (т. е. кэшированием чтения и записи).
- Пакетная блокировка (также эксклюзивная): поток открывается на сервере, но закрывается на клиентском компьютере (т. е. чтение, запись и обработка кэширования).
- Блокировка фильтра (также эксклюзивная): приложения и фильтры файловой системы могут «отступить», когда другие пытаются получить доступ к тому же потоку (т. е. кэширование чтения и записи) (начиная с Windows 2000).
Уступающие блокировки были улучшены в Windows 7 и Windows Server 2008 R2 с помощью ключей оппортунистической блокировки для каждого клиента. [ 100 ]
Время
[ редактировать ]Windows NT и ее потомки сохраняют внутренние временные метки в формате UTC и выполняют соответствующие преобразования для отображения; все временные метки NTFS указаны в формате UTC. [ нужна ссылка ]
По историческим причинам все версии Windows, не поддерживающие NTFS, сохраняют время внутри себя как время локальной зоны, и, следовательно, то же самое делают все файловые системы, кроме NTFS, которые поддерживаются текущими версиями Windows. Это означает, что когда файлы копируются или перемещаются между разделами NTFS и не-NTFS, ОС необходимо конвертировать временные метки на лету. Но если некоторые файлы перемещаются, когда летнее время действует стандартное время (DST), а другие файлы перемещаются, когда действует , в преобразованиях могут возникнуть некоторые неоднозначности. В результате, особенно вскоре после одного из дней изменения местного поясного времени, пользователи могут заметить, что некоторые файлы имеют временные метки, которые неверны на один час. Из-за различий в реализации летнего времени в разных юрисдикциях это может привести к потенциальной ошибке отметки времени до 4 часов за любые 12 месяцев. [ 101 ]
См. также
[ редактировать ]- Сравнение файловых систем
- НТФСДОС
- ntfsresize
- WinFS (отменённая файловая система Microsoft)
- ReFS , новая файловая система Microsoft.
Примечания
[ редактировать ]- ^ Jump up to: а б с д и ж г час я дж 1 байт = 8 бит
1 КБ = 1024 байта
1 МБ = 1 048 576 байт
1 ГБ = 1 073 741 824 байта
1 ТБ = 1 099 511 627 776 байт
1 ПБ = 1 125 899 906 842 624 байта
1 ЭБ = 1 152 921 504 606 846 976 байт - ^ Также может быть 32-битным при условии, что размер прошивки и загрузчика операционной системы совпадают.
- ^ Начиная с Windows XP, просмотреть список этих файлов очень сложно: они существуют в индексе корневого каталога, но интерфейс Win32 их отфильтровывает. В NT 4.0 командная строка
dir
команда выведет список метафайлов в корневом каталоге, если/a
были указаны. В Windows 2000dir /a
перестал работать, ноdir /a \$MFT
работал.
Ссылки
[ редактировать ]- ^ Jump up to: а б с Карресанд, Мартин; Аксельссон, Стефан; Дирколботн, Гейр Олав (01 июля 2019 г.). «Использование поведения выделения кластера NTFS для определения местоположения пользовательских данных» . Цифровое расследование . 29 : –51–S60. дои : 10.1016/j.diin.2019.04.018 . HDL : 11250/2631756 . ISSN 1742-2876 . S2CID 199004263 .
- ^ Jump up to: а б «Глоссарий» . [MS-EFSR]: протокол удаленной шифрования файловой системы (EFSRPC) . Майкрософт. 14 ноября 2013 г.
- ^ «Как работает NTFS» . ТехНет . Майкрософт. 8 октября 2009 года . Проверено 2 декабря 2017 г.
- ^ «B*Trees — Деревья каталогов NTFS — Концепция — Документация NTFS» . Flatcap.org . Архивировано из оригинала 13 мая 2019 г. Проверено 13 мая 2019 г.
- ^ Jump up to: а б с д и ж г «Как работает NTFS» . Технический справочник по Windows Server 2003 . 28 марта 2003 г. Проверено 12 сентября 2011 г.
- ^ Jump up to: а б с д «Приложение А: Поведение продукта» . [MS-FSA]: Алгоритмы файловой системы . Майкрософт. 12 сентября 2018 г. Проверено 1 октября 2018 г.
NTFS использует размер кластера по умолчанию 4 КБ, максимальный размер кластера 64 КБ в операционной системе Windows 10 v1703 и Windows Server 2016 и более ранних версиях, а также 2 МБ в операционной системе Windows 10 v1709 и Windows Server 2019 и более поздних версиях, а также минимальный размер кластера. размер 512 байт.
- ^ «Приложение А: Поведение продукта» . [MS-FSA]: Алгоритмы файловой системы . Майкрософт. 14 ноября 2013 года . Проверено 21 сентября 2012 г.
- ^ Jump up to: а б Рассон, Ричард; Фледель, Юваль. «Документация NTFS» (PDF) . Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 26 июня 2011 г.
- ^ «Структура SYSTEMTIME (minwinbase.h)» . Майкрософт. 5 октября 2021 г. . Проверено 7 января 2024 г.
- ^ Рик Вановер (14 сентября 2011 г.). «Дедупликация данных Windows Server 8» . Архивировано из оригинала 18 июля 2016 г. Проверено 2 декабря 2011 г.
- ^ Jump up to: а б Кастер, Хелен (1994). Внутри файловой системы Windows NT . Майкрософт Пресс . ISBN 978-1-55615-660-1 .
- ^ «NTFS3 — Документация по ядру Linux» . www.kernel.org . Проверено 2 декабря 2021 г.
- ^ «нтфс-3г» . www.freebsd.org . Проверено 2 декабря 2021 г.
- ^ «Как преобразовать диск из FAT32 в NTFS без потери данных» . WindowsLoop . 11 июля 2021 г. Проверено 8 августа 2021 г.
- ^ Jump up to: а б с cfsbloggers (14 июля 2006 г.). «Как точки восстановления и другие функции восстановления в Windows Vista влияют на двойную загрузку с Windows XP» . Картотека . Архивировано из оригинала 18 июля 2006 г. Проверено 21 марта 2007 г.
- ^ Козерок, Чарльз (14 февраля 2018 г.). «Обзор и история NTFS» . Руководство для ПК . Проверено 30 мая 2019 г.
- ^ Кастер, Хелен (1994). Внутри файловой системы Windows NT . Майкрософт Пресс . п. VII. ISBN 978-1-55615-660-1 .
- ^ «Восстановление Windows NT после сбоя загрузки на диске NTFS» . Майкрософт. 1 ноября 2006 г.
- ^ Jump up to: а б Руссинович, Марк (30 июня 2006 г.). «Внутри Win2K NTFS, часть 1» . MSDN . Майкрософт . Проверено 18 апреля 2008 г.
- ^ «Что нового в пакете обновления 4 для Windows NT 4.0?» . Microsoft.com . 12 января 1999 года. Архивировано из оригинала 17 января 1999 года . Проверено 17 августа 2018 г.
- ^ «Новые возможности и особенности файловой системы NTFS 3.1» . Майкрософт. 1 декабря 2007 г. Архивировано из оригинала 16 ноября 2006 г.
- ^ «Обзор NTFS» . LSoft Technologies Inc.
- ^ Ловалл, Джон (2006). «Улучшения хранилища в Windows Vista и Windows Server 2008» (PowerPoint) . Майкрософт. стр. 14–20 . Проверено 4 сентября 2007 г.
- ^ «Размер кластера по умолчанию для NTFS, FAT и exFAT» . Поддержка Майкрософт .
- ^ «Загрузка из GPT» . Родсбукс.com . Проверено 22 сентября 2018 г.
- ^ «NTFS против FAT против exFAT — NTFS.com» . www.ntfs.com . Проверено 19 января 2021 г.
- ^ «Как конвертировать FAT-диски в NTFS» . Майкрософт. 18 декабря 2017 года . Проверено 30 мая 2019 г.
- ^ «Как использовать Convert.exe для преобразования раздела в файловую систему NTFS» . Корпорация Майкрософт. 12 февраля 2007 г. Проверено 26 декабря 2010 г.
- ^ «Примечания к выпуску FreeBSD 3.2» . 17 мая 1999 года . Проверено 15 июня 2020 г.
- ^ Jump up to: а б «mount_ntfs — страницы руководства OpenBSD» . Проверено 15 июня 2020 г.
- ^ «Анонс NetBSD 1.5» . 6 декабря 2000 г. Проверено 15 июня 2020 г.
- ^ «ОпенБСД 4.9» . Openbsd.com . Проверено 22 сентября 2018 г.
- ^ Jump up to: а б «Кредиты и история NTFS» . Проект Linux-NTFS . Архивировано из оригинала 24 сентября 2021 г. Проверено 24 сентября 2021 г.
- ^ «Разработка ядра» . lwn.net . 2 мая 2002 года . Проверено 05 сентября 2021 г.
- ^ «Примечания к выпуску v2.5.11» . 29 апреля 2002 года . Проверено 05 сентября 2021 г.
- ^ «Журнал изменений 2.6.15» . Linux-проект . 3 января 2006 г. Проверено 05 сентября 2021 г.
- ^ Андерсон, Тим (06 сентября 2021 г.). «GitHub объединяет «бесполезный мусор», — говорит Линус Торвальдс, поскольку в ядро Linux 5.15 добавлена новая поддержка NTFS» . Регистр . Проверено 7 сентября 2021 г.
- ^ «В OpenBSD добавлена поддержка Fuse(4) для добавления файловых систем в пользовательскую среду» . Журнал OpenBSD . 08.11.2013 . Проверено 8 ноября 2013 г.
- ^ «Стабильный драйвер чтения/записи NTFS-3G» . 25 июля 2009 г.
- ^ «Tuxera NTFS для Mac» . Туксера. 30 августа 2011 года . Проверено 20 сентября 2011 г.
- ^ «Ян Краточвил: Captive: первая бесплатная файловая система чтения/записи NTFS для GNU/Linux» . Проверено 15 июня 2020 г.
- ^ «О Туксере» . Проверено 15 июня 2020 г.
- ^ «10.6: Включить встроенную поддержку чтения/записи NTFS» . 1 октября 2009 г. Архивировано из оригинала 5 сентября 2021 г. Проверено 5 сентября 2021 г.
- ^ «NTFS для Mac OS X, канал связи между Mac OS X и Windows» . Группа программного обеспечения Paragon . Проверено 20 сентября 2011 г.
- ^ «Лидер в области решений для хранения больших объемов данных | Seagate US» . Seagate.com . Архивировано из оригинала 10 февраля 2011 года.
- ^ «Плагин NTFS для NetDrive» . ecsoft2.org . Проверено 9 сентября 2020 г.
- ^ «NetDrive для OS/2» . arcanoae.com . Проверено 9 сентября 2020 г.
- ^ «Авира NTFS4DOS Персональный» . Архивировано из оригинала 19 июня 2010 года . Проверено 25 июля 2009 г.
- ^ «Загрузить Avira NTFS4DOS Personal 1.9» . Архивировано из оригинала 10 ноября 2013 года . Проверено 22 сентября 2018 г.
- ^ Jump up to: а б «Как работают дескрипторы безопасности и списки контроля доступа» . ТехНет . Майкрософт . Проверено 4 сентября 2015 г.
- ^ Морелло, Джон (февраль 2007 г.). «Наблюдение за безопасностью: развертывание EFS: часть 1» . Журнал Технет . Майкрософт . Проверено 25 января 2009 г.
- ^ «Как работает EFS» . Ресурсный комплект Windows 2000 . Майкрософт . 18 июля 2012 года . Проверено 25 февраля 2014 г.
- ^ «Вопросы совместимости томов Windows 8 с предыдущими версиями Windows» . Проверено 17 декабря 2021 г.
- ^ «Журналы смены» . Документы Майкрософт . 7 января 2021 г. Проверено 12 августа 2023 г.
- ^ «Создание, изменение и удаление журнала изменений (Windows)» . Документы Майкрософт . 7 января 2021 г. Проверено 12 августа 2023 г.
- ^ «Глава 29 – Совместимость POSIX» . Справочное руководство по MS Windows NT Workstation 4.0 . Майкрософт . 1995 . Проверено 21 октября 2013 г.
- ^ «Жесткие связи и соединения» . MSDN . Майкрософт . 12 октября 2013 года . Проверено 21 октября 2013 г.
- ^ «MSDN – функция CreateHardLink» . Проверено 14 января 2016 г.
- ^ Руссинович Марк Евгеньевич ; Соломон, Дэвид А.; Ионеску, Алекс (2009). «Файловые системы». Внутреннее устройство Windows (5-е изд.). Майкрософт Пресс. п. 921. ИСБН 978-0-7356-2530-3 .
Одним из компонентов Windows, который использует несколько потоков данных, является служба выполнения вложений[...] в зависимости от того, из какой зоны был загружен файл [...] Проводник Windows может предупредить пользователя
- ^ Бойд, Кристофер (26 октября 2022 г.). «Уловка с некорректной подписью может обойти Веб-маркировку» . Вредоносные байты . Проверено 15 мая 2023 г.
- ^ DHB-MSFT (28 февраля 2023 г.). «Макросы из Интернета по умолчанию заблокированы в Office — Развертывание Office» . Learn.microsoft.com . Проверено 15 мая 2023 г.
- ^ «Потоки — Sysinternals» . Документы Майкрософт . 23 марта 2021 г. Проверено 12 августа 2023 г.
- ^ «Поставщик файловой системы» . Майкрософт. 9 августа 2012 года. Архивировано из оригинала 23 января 2015 года . Проверено 23 января 2015 г.
- ^ «Вредоносное ПО, использующее альтернативные потоки данных?» . Веб-журнал AusCERT . 21 августа 2007 г. Архивировано из оригинала 23 февраля 2011 г.
- ^ «Сжатие и распаковка файлов» . MSDN Platform SDK: файловые системы . Проверено 18 августа 2005 г.
- ^ «Размер кластера по умолчанию для файловых систем NTFS и FAT» . Майкрософт. 31 января 2002 года . Проверено 10 января 2012 г.
- ^ «Как работает NTFS» . 28 марта 2003 г. Проверено 24 октября 2011 г.
- ^ Масьеро, Мануэль (01 декабря 2011 г.). «Следует ли сжимать данные на SSD?» . Аппаратное обеспечение Тома . Группа компаний «Бестофмедиа» . Проверено 5 апреля 2013 г.
- ^ Jump up to: а б Миддлтон, Деннис. «Понимание сжатия NTFS» . Блог Ntdebugging . Майкрософт . Архивировано из оригинала 29 июня 2011 года . Проверено 16 марта 2011 г.
- ^ «Сокращение разрыва: вырезание файлов, сжатых в NTFS» . Проверено 29 мая 2011 г.
- ^ «Концепции дисков и устранение неполадок» . Майкрософт. 11 сентября 2008 года . Проверено 26 марта 2012 г.
- ^ «[MS-XCA]: Алгоритм сжатия Xpress» . 31 января 2023 г.
- ^ «wimlib: библиотека Windows Imaging (WIM) с открытым исходным кодом — алгоритм сжатия» .
- ^ «Компактная ОС, одноэкземплярное копирование и оптимизация образов» . Майкрософт . Проверено 1 октября 2019 г.
- ^ Jump up to: а б с д Раймонд Чен (18 июня 2019 г.). «Что такое WofCompressedData? Означает ли WOF, что Windows — собака?» . Блоги разработчиков Microsoft .
- ^ Биггерс, Эрик (29 апреля 2019 г.). «Плагин NTFS-3G для чтения файлов, сжатых системой» . Гитхаб . Проверено 1 октября 2019 г.
- ^ «Re: [ntfs-3g-devel] Экспериментальная поддержка файлов Windows 10, сжатых системой» . SourceForge.net . Проверено 1 октября 2019 г.
- ^ «Обзор DISM» . 15 декабря 2021 г.
- ^ «Компактный» . 3 февраля 2023 г.
- ^ «Обзор загрузки файла образа Windows (WIMBoot)» . 10 марта 2015 г.
- ^ «Разреженные файлы» . MSDN . Майкрософт . 12 октября 2013 года . Проверено 21 октября 2013 г.
- ^ Кандот, Суреш Б. (4 марта 2009 г.). «Ошибки разреженных файлов: 1450 или 665 из-за фрагментации файла: исправления и обходные пути» . Инженеры CSS SQL Server . Майкрософт . Архивировано из оригинала 21 октября 2013 года . Проверено 21 октября 2013 г.
- ^ «Разреженные файлы и дисковые квоты» . Библиотека MSDN . Майкрософт . 12 октября 2013 года . Проверено 21 октября 2013 г.
- ^ «Транзакционная NTFS» . MSDN . Майкрософт . Архивировано из оригинала 21 февраля 2007 г. Проверено 2 февраля 2007 г.
- ^ «Транзакционная NTFS (TxF)» . Документы Майкрософт . Майкрософт. 20 июля 2022 г. Проверено 12 августа 2023 г.
- ^ «Невозможно открыть контент, синхронизированный в папке OneDrive на внешнем диске» . Поддержка Майкрософт . Проверено 3 апреля 2021 г.
- ^ Андре, Жан-Пьер (1 марта 2019 г.). «NTFS-3G: точки соединения, символические ссылки и точки повторной обработки» . jp-andre.pagesperso-orange.fr .
- ^ «Глава 18 – Выбор файловой системы» . Справочное руководство по MS Windows NT Workstation 4.0 . Майкрософт . 20 февраля 2014 года . Проверено 25 февраля 2014 г.
- ^ «Именование файлов, путей и пространств имен» . MSDN . Майкрософт . Соглашения об именах . Проверено 25 февраля 2014 г.
- ^ «NTFS. Загрузочный сектор раздела» . ntfs.com . Проверено 22 сентября 2018 г.
- ^ «Загрузочный сектор» . Technet.microsoft.com . 11 сентября 2008 г. Таблица 1.13. BPB и расширенные поля BPB на томах NTFS . Проверено 22 сентября 2018 г.
- ^ «Основная таблица файлов» . MSDN . 2 июля 2012 г.
- ^ «Криминалистика: что такое зеркало MFT?» . Где ваши данные? . 05.06.2009 . Проверено 30 июля 2021 г.
- ^ «Основная таблица файлов NTFS (MFT)» . ntfs.com . Проверено 22 сентября 2018 г.
- ^ Шварц, Томас. «COEN 252 Компьютерная криминалистика NTFS» . Факультет организации и информатики Загребского университета. Архивировано из оригинала 27 февраля 2021 г. Проверено 30 мая 2019 г.
- ^ Jump up to: а б «Инструменты поддержки OEM, фаза 3, доступность версии 2» . Корпорация Майкрософт. 21 февраля 2007 г. Архивировано из оригинала 23 февраля 2015 г. Проверено 16 июня 2010 г.
Утилита для получения информации о файловом секторе файловой системы Windows NT (NTFS) ... Инструмент, используемый для получения информации о томе NTFS.
- ^ «Четыре этапа роста файлов NTFS» . Архивировано из оригинала 23 сентября 2018 года . Проверено 22 сентября 2018 г.
- ^ «Сильно фрагментированный файл в томе NTFS не может превысить определенный размер» . Архивировано из оригинала 06 мая 2021 г. Проверено 19 мая 2021 г.
- ^ «Как функционируют Oplocks в среде Windows: обзор» . Архивировано из оригинала 23 августа 2010 г. Проверено 19 декабря 2018 г.
- ^ «Что нового в NTFS» . Technet.microsoft.com . 2 июля 2012 года . Проверено 22 сентября 2018 г.
- ^ Гиллиган, Джонатан (28 мая 2001 г.). «Устранение ошибки перехода на летнее время и получение правильного времени изменения файлов» . Проект Кодекса .
Дальнейшее чтение
[ редактировать ]- Болоски, Уильям Дж.; Корбин, Скотт; Гебель, Дэвид; Дусер, Джон Р. (январь 2000 г.). «Единое хранилище экземпляров в Windows 2000» . Материалы 4-го симпозиума USENIX по Windows-системам .
- Кастер, Хелен (1994). Внутри файловой системы Windows NT . Майкрософт Пресс . ISBN 978-1-55615-660-1 .
- Нагар, Раджив (1997). Внутреннее устройство файловой системы Windows NT: Руководство разработчика . О'Рейли . ISBN 978-1-56592-249-5 .
- «Технический справочник NTFS» . Microsoft TechNet . Майкрософт . 28 марта 2003 г.