stringtranslate.com

NTFS

Файловая система новой технологии ( 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.sysверсии (например, v5.0 в Windows 2000) зависит от версии операционной системы; его не следует путать с номером версии NTFS (v3.1, начиная с Windows XP). [21]

Хотя в последующих версиях Windows были добавлены новые функции, связанные с файловой системой, они не изменили саму NTFS. Например, в Windows Vista реализованы символические ссылки NTFS , транзакционная NTFS , сжатие разделов и самовосстановление. [22] Символические ссылки NTFS — это новая функция файловой системы; все остальные — это новые функции операционной системы, в которых используются уже существующие функции NTFS.

Масштабируемость

NTFS оптимизирована для  кластеров размером 4 КБ [a] , но поддерживает максимальный размер кластера 2 МБ [a] . (Более ранние реализации поддерживают до 64 КБ) [6] Максимальный размер тома NTFS, который может поддерживать спецификация, составляет 2 64 - 1 кластера, но не все реализации достигают этого теоретического максимума, как описано ниже.  

Максимальный размер тома NTFS, реализованный в Windows XP Professional, составляет 2 32 − 1 кластера, отчасти из-за ограничений таблицы разделов. Например, при использовании  кластеров размером 64 КБ максимальный размер тома Windows XP NTFS составляет 256 ТБ минус 64 КБ . При использовании размера кластера по умолчанию, равного 4 КБ, максимальный размер тома NTFS составляет 16 ТБ минус 4 КБ. Оба этих значения значительно превышают ограничение в 128 ГБ [a] в Windows XP SP1 . Многие прошивки BIOS ограничивают размер разделов Master Boot Records (MBR) до 2 ТиБ, [23] что является пределом для жестких дисков с размером физического сектора 512 байт, хотя для физического сектора размером 4 КиБ предел размера раздела MBR составляет 16 ТиБ. . Альтернативой является использование нескольких томов таблицы разделов GUID (GPT или «динамических») для объединения в один том NTFS размером более 2 ТиБ. Для загрузки с тома GPT в среду Windows способом, поддерживаемым Microsoft, требуется система с унифицированным расширяемым интерфейсом встроенного ПО (UEFI) и поддержкой 64-разрядной версии [b] . [24] Диски данных GPT поддерживаются в системах с BIOS.      

Максимальный теоретический предел размера отдельных файлов NTFS составляет 16 ЭБ [a] [25] ( 16×10246 или 264 байта ) минус 1 КБ, что в сумме составляет 18 446 744 073 709 550 592 байта. В Windows 10 версии 1709 и Windows Server 2019 максимальный реализованный размер файла составляет 8 ПБ [a] минус 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 и более поздних версиях). [26] [27]

FreeBSD

FreeBSD 3.2, выпущенная в мае 1999 года, включала поддержку NTFS только для чтения, написанную Семеном Устименко. [28] [29] Эта реализация была перенесена на NetBSD Кристосом Зуласом и Яромиром Долечеком и выпущена вместе с NetBSD 1.5 в декабре 2000 года. [30] Реализация NTFS для FreeBSD также была портирована на OpenBSD Жюльеном Борде и предлагает встроенную NTFS только для чтения. поддержка по умолчанию на платформах i386 и amd64 начиная с версии 4.9, выпущенной 1 мая 2011 г. [31] [29]

Линукс

Ядро Linux версии 2.1.74 и более поздних включает драйвер, написанный Мартином фон Лёвисом, который может читать разделы NTFS; [32] Версии ядра 2.5.11 и более поздние содержат новый драйвер, написанный Антоном Алтапармаковым ( Кембриджский университет ) и Ричардом Руссоном, который поддерживает чтение файлов. [33] [34] [32] Возможность записи в файлы была введена в версии ядра 2.6.15 в 2006 году, что позволяет пользователям записывать в существующие файлы, но не позволяет создавать новые. [35] Драйвер NTFS компании Paragon (см. ниже) был интегрирован в ядро ​​версии 5.15 и поддерживает чтение/запись обычных, сжатых и разреженных файлов, а также воспроизведение журнала. [36]

NTFS-3G — это бесплатная реализация NTFS под лицензией FUSE, которая изначально была разработана Сабольчем Сакачицем как драйвер ядра Linux . Она была переписана как программа FUSE для работы в других системах, которые поддерживает FUSE, таких как macOS , FreeBSD, NetBSD, OpenBSD , [37] Solaris, QNX и Haiku [38] и позволяет читать и записывать в разделы NTFS. Коммерческая версия NTFS-3G с повышенной производительностью под названием « Tuxera NTFS для Mac» также доступна от разработчиков NTFS-3G. [39]

Captive NTFS , «оберточный» драйвер, использующий собственный драйвер Windows ntfs.sys , существует для Linux. Она была построена как программа «Файловая система в пользовательском пространстве» (FUSE) и выпущена под лицензией GPL, но работа над Captive NTFS прекратилась в 2006 году. [40]

Ядро 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 . [41] Встроенная поддержка записи NTFS включена в версию 10.6 и более поздних версий, но не активирована по умолчанию, хотя существуют обходные пути для включения этой функциональности. Однако отчеты пользователей указывают на то, что функциональность нестабильна и имеет тенденцию вызывать панику ядра . [42]

Paragon Software Group продает драйвер чтения-записи под названием NTFS для Mac OS X , [43] который также включен в некоторые модели жестких дисков Seagate . [44]

ОС/2

Пакет NetDrive для OS/2 (и его производные, такие как eComStation и ArcaOS ) поддерживает плагин, который обеспечивает доступ для чтения и записи к томам NTFS. [45] [46]

ДОС

Существует бесплатный драйвер чтения/записи для личного использования для MS-DOS от Avira под названием «NTFS4DOS». [47] [48]

Компания Ahead Software разработала драйвер «NTFSREAD» (версия 1.200) для DR-DOS 7.0x в период с 2002 по 2004 год. Он был частью их программного обеспечения Nero Burning ROM .

Безопасность

NTFS использует списки контроля доступа и шифрование на уровне пользователя для защиты пользовательских данных.

Списки контроля доступа (ACL)

Разрешения файловой системы NTFS в современной системе Windows

В NTFS каждому файлу или папке назначается дескриптор безопасности , который определяет его владельца и содержит два списка управления доступом (ACL). Первый ACL, называемый списком управления доступом по усмотрению (DACL), точно определяет, какой тип взаимодействия (например, чтение, запись, выполнение или удаление) разрешен или запрещен каким пользователем или группами пользователей. Например, файлы в C:\Program Filesпапке могут читаться и выполняться всеми пользователями, но изменяться только пользователем, имеющим права администратора. [49] Windows Vista добавляет обязательную информацию о контроле доступа в списки DACL. Списки DACL являются основным направлением контроля учетных записей пользователей в Windows Vista и более поздних версиях.

Второй ACL, называемый списком управления доступом к системе (SACL), определяет, какие взаимодействия с файлом или папкой подлежат аудиту и должны ли они регистрироваться в случае успеха, сбоя или того и другого. Например, можно включить аудит конфиденциальных файлов компании, чтобы ее менеджеры знали, когда кто-то пытается их удалить или сделать копию, и удалось ли это ему или ей. [49]

Шифрование

Шифрованная файловая система (EFS) обеспечивает прозрачное для пользователя шифрование любого файла или папки на томе NTFS. [50] EFS работает совместно со службой EFS, Microsoft CryptoAPI и библиотекой времени выполнения файловой системы EFS (FSRTL). EFS работает путем шифрования файла с помощью массового симметричного ключа (также известного как ключ шифрования файла или FEK), который используется, поскольку для шифрования и дешифрования больших объемов данных требуется относительно небольшое количество времени, чем при шифровании с асимметричным ключом. используется. Симметричный ключ, используемый для шифрования файла, затем шифруется открытым ключом , связанным с пользователем, зашифровавшим файл, и эти зашифрованные данные сохраняются в альтернативном потоке данных зашифрованного файла. Чтобы расшифровать файл, файловая система использует закрытый ключ пользователя для расшифровки симметричного ключа, хранящегося в потоке данных. Затем он использует симметричный ключ для расшифровки файла. Поскольку это делается на уровне файловой системы, это прозрачно для пользователя. [51] Кроме того, на случай, если пользователь потеряет доступ к своему ключу, в систему EFS встроена поддержка дополнительных ключей дешифрования, так что агент восстановления по-прежнему может получить доступ к файлам в случае необходимости. Шифрование, предоставляемое NTFS, и сжатие, предоставляемое NTFS, являются взаимоисключающими; однако для одного можно использовать NTFS, а для другого — сторонний инструмент.

Поддержка EFS недоступна в версиях Windows Basic, Home и MediaCenter и должна быть активирована после установки версий Windows Professional, Ultimate и Server или с помощью инструментов корпоративного развертывания в доменах Windows.

Функции

Ведение журнала

NTFS — это журналируемая файловая система , которая использует журнал NTFS ( $LogFile ) для записи изменений метаданных в том. Это функция, которую FAT не предоставляет, и она важна для NTFS, чтобы гарантировать, что ее сложные внутренние структуры данных останутся согласованными в случае сбоев системы или перемещения данных, выполняемых API дефрагментации , и обеспечить легкий откат незафиксированных изменений в этих критических структурах данных. когда том перемонтируется. В частности, затронуты структуры — битовая карта распределения тома, модификации записей MFT, такие как перемещение некоторых атрибутов переменной длины, хранящихся в записях MFT и списках атрибутов, а также индексы для каталогов и дескрипторов безопасности .

Формат ( $LogFile ) развивался в нескольких версиях:

Несовместимость версий $LogFile , реализованных в Windows 8 , Windows 10 и Windows 11 , не позволяет Windows 7 (и более ранним версиям Windows) распознавать версию 2.0 $ LogFile . Обратная совместимость обеспечивается за счет понижения версии $LogFile до версии 1.1 при полном отключении тома NTFS. Он снова обновляется до версии 2.0 при установке на совместимую версию Windows. Однако при переходе в спящий режим на диск в состоянии выхода из системы (так называемая гибридная загрузка или быстрая загрузка, которая включена по умолчанию) смонтированные файловые системы не отключаются, и, таким образом, $ LogFile любых активных файловых систем не понижается до версии 1.1. Невозможность обработки $LogFile версии 2.0 версиями Windows старше 8.0 приводит к ненужному вызову утилиты восстановления диска CHKDSK . Это особенно важно в сценарии мультизагрузки с участием версий Windows до и после 8.0 или при частом перемещении устройства хранения между более старыми и новыми версиями. В реестре Windows существует параметр, предотвращающий автоматическое обновление $LogFile до более новой версии. Проблему также можно решить, отключив гибридную загрузку. [52]

Журнал USN (Журнал порядковых номеров обновлений) — это функция управления системой, которая записывает (в $Extend\$UsnJrnl ) изменения файлов, потоков и каталогов на томе, а также их различные атрибуты и настройки безопасности. Журнал доступен приложениям для отслеживания изменений тома. [53] Этот журнал можно включить или отключить на несистемных томах. [54]

Жесткие ссылки

Функция жесткой ссылки позволяет различным именам файлов напрямую ссылаться на одно и то же содержимое файла. Жесткие ссылки могут ссылаться только на файлы в одном томе, поскольку каждый том имеет свой собственный MFT. Изначально жесткие ссылки были включены для поддержки подсистемы POSIX в Windows NT. [55]

Хотя жесткие ссылки используют одну и ту же запись MFT ( inode ), в которой записываются метаданные файла, такие как размер файла, дата изменения и атрибуты, NTFS также кэширует эти данные в записи каталога в целях повышения производительности. Это означает, что при просмотре содержимого каталога с использованием семейства API FindFirstFile/FindNextFile (эквивалентно API POSIX opendir/readdir) вы также получите эту кэшированную информацию, помимо имени и индексного дескриптора. Однако вы можете не увидеть актуальную информацию, поскольку эта информация гарантированно обновляется только при закрытии файла, и то только для каталога, из которого файл был открыт. [56] Это означает, что если файл имеет несколько имен по жестким ссылкам, обновление файла по одному имени не приводит к обновлению кэшированных данных, связанных с другим именем. Вы всегда можете получить актуальные данные, используя GetFileInformationByHandle (который является истинным эквивалентом функции статистики POSIX). Это можно сделать с помощью дескриптора, который не имеет доступа к самому файлу (передавая ноль в CreateFile для dwDesiredAccess), а закрытие этого дескриптора имеет побочный эффект обновления кэшированной информации.

Windows использует жесткие ссылки для поддержки коротких (8.3) имен файлов в NTFS. Поддержка операционной системы необходима, поскольку существуют устаревшие приложения, которые могут работать только с именами файлов 8.3, но поддержку можно отключить. В этом случае добавляется дополнительная запись имени файла и запись каталога, но версия 8.3 и длинное имя файла связаны и обновляются вместе, в отличие от обычной жесткой ссылки.

Файловая система NTFS имеет ограничение в 1024 жестких ссылки на файл. [57]

Альтернативный поток данных (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 и в большинстве браузеров, чтобы помечать файлы, загруженные с внешних сайтов, как возможно небезопасные для запуска; тогда локальная оболочка потребует подтверждения пользователя перед их открытием. [58] Когда пользователь указывает, что ему больше не нужен этот диалог подтверждения, это ADS удаляется. Эта функция также известна как « Марк Интернета ». [59] [60]

Альтернативные потоки не отображаются в проводнике Windows, и их размер не включается в размер файла. Когда файл копируется или перемещается в другую файловую систему без поддержки ADS, пользователь предупреждается, что альтернативные потоки данных не могут быть сохранены. Такое предупреждение обычно не выдается, если файл прикреплен к электронному письму или загружен на веб-сайт. Таким образом, использование альтернативных потоков для важных данных может вызвать проблемы. Microsoft предоставляет инструмент под названием Streams [61] для просмотра потоков на выбранном томе. Начиная с Windows PowerShell 3.0, ADS можно управлять с помощью шести командлетов: Add-Content, Clear-Content, Get-Content, Get-Item, Remove-Item, Set-Content. [62]

Вредоносное ПО использует альтернативные потоки данных, чтобы скрыть код. [63] В результате сканеры вредоносных программ и другие специальные инструменты теперь [ когда? ] проверьте наличие альтернативных потоков данных.

Сжатие файлов

Сжатие включается для каждой папки или отдельного файла путем установки атрибута «сжатый». Если для папки включено сжатие, любые файлы, перемещенные или сохраненные в этой папке, будут автоматически сжиматься с использованием алгоритма LZNT1 (вариант LZ77 ). [64] Алгоритм сжатия предназначен для поддержки размеров кластеров до 4 КБ; если размер кластера на томе NTFS превышает 4 КБ, сжатие NTFS недоступно. [65] Данные сжимаются порциями по 16 кластеров (размером до 64 КБ); если сжатие уменьшает размер 64  КБ данных до 60  КБ или меньше, NTFS обрабатывает ненужные  страницы размером 4 КБ как пустые разреженные кластеры файлов — они не записываются. Это обеспечивает разумное время произвольного доступа, поскольку ОС просто должна следовать цепочке фрагментов.

Сжатие лучше всего работает с файлами, которые имеют повторяющееся содержимое, редко записываются, обычно доступны последовательно и сами по себе не сжимаются. Однопользовательские системы с ограниченным пространством на жестком диске могут извлечь выгоду из сжатия NTFS для небольших файлов размером от 4  КБ до 64  КБ или более, в зависимости от сжимаемости. Файлы размером менее 900 байт хранятся в записи каталога MFT. [66]

Преимущества

Пользователи быстрых многоядерных процессоров увидят повышение скорости работы приложений за счет сжатия приложений и данных, а также сокращения используемого пространства. Даже если контроллеры SSD уже сжимают данные, количество операций ввода-вывода все равно сокращается, поскольку передается меньше данных. [67]

Согласно исследованию группы разработчиков NTFS компании Microsoft, 50–60 ГБ — это разумный максимальный размер для сжатого файла на томе NTFS с размером кластера (блока) 4 КБ (по умолчанию). Этот разумный максимальный размер резко уменьшается для томов с меньшим размером кластера. [68]  

Недостатки

Большие сжимаемые файлы становятся сильно фрагментированными, поскольку каждый фрагмент размером менее 64  КБ становится фрагментом. [68] [69] Флэш-память, такая как твердотельные накопители, не имеет задержек движения головки и высокого времени доступа, как у механических жестких дисков , поэтому фрагментация имеет лишь меньший ущерб.

Если системные файлы, необходимые во время загрузки (например, драйверы, NTLDR, winload.exe или BOOTMGR), сжаты, система может не загрузиться правильно, поскольку фильтры распаковки еще не загружены. [70] [ не удалось проверить ] Более поздние выпуски Windows [ какие? ] не позволяют сжимать важные системные файлы.

Сжатие системы

Начиная с Windows 10 , Microsoft представила новую схему сжатия файлов, основанную на алгоритме XPRESS с размером блока 4K/8K/16K [71] и алгоритме LZX ; [72] оба являются вариантами LZ77, обновленными энтропийным кодированием Хаффмана и кодированием диапазона , которых не хватало LZNT1. Эти алгоритмы сжатия были взяты из формата изображений Windows (файл WIM).

Новая схема сжатия используется функцией CompactOS, которая уменьшает использование диска за счет сжатия системных файлов Windows. [73] CompactOS не является расширением сжатия файлов NTFS и не использует атрибут «сжатый»; вместо этого он устанавливает точку повторной обработки для каждого сжатого файла с помощью тега WOF (Windows Overlay Filter), [74] но фактические данные сохраняются в альтернативном потоке данных с именем «WofCompressedData», который распаковывается на лету с помощью Драйвер фильтра файловой системы WOF , а основной файл представляет собой пустой разреженный файл . [74] Эта конструкция предназначена исключительно для доступа только для чтения, поэтому любая запись в сжатые файлы приводит к автоматической распаковке. [74] [75] [76]

Сжатие CompactOS предназначено для OEM-производителей , которые готовят образы ОС с /compactфлагом инструмента в Windows ADK , [77] но его также можно включить вручную для каждого файла с DISMфлагом команды . [78] Алгоритм CompactOS позволяет избежать фрагментации файлов , записывая сжатые данные в смежные фрагменты, в отличие от основного сжатия NTFS. [ нужна цитата ]/execompact

Сжатие файлов CompactOS — это улучшенная версия функции WIMBoot, представленная в Windows 8.1 . WIMBoot сокращает использование диска Windows, сохраняя системные файлы в сжатом образе WIM в отдельном скрытом разделе диска . [79] Как и в случае с CompactOS, системные каталоги Windows содержат только разреженные файлы , помеченные точкой повторной обработки с тегом WOF, а драйвер Windows Overlay Filter оперативно распаковывает содержимое файла из образа WIM. Однако WIMBoot менее эффективен, чем CompactOS, поскольку новые обновленные версии системных файлов необходимо записывать в системный раздел, занимая дисковое пространство. [74]

Разреженные файлы

Разреженный файл: пустые байты не нужно сохранять, поэтому они могут быть представлены метаданными .
Один петабайт (1 125 899 906 842 624 байт) разреженных файлов, 0 байт на диске.

Разреженные файлы — это файлы с вкраплениями пустых сегментов, для которых фактическое пространство для хранения не используется. Для приложений файл выглядит как обычный файл с пустыми областями, которые воспринимаются как области, заполненные нулями; файловая система поддерживает внутренний список таких регионов для каждого разреженного файла. [80] Разреженный файл не обязательно включает в себя разреженные области нулей; атрибут «разреженный файл» просто означает, что файлу разрешено их иметь.

Например, приложения баз данных могут использовать разреженные файлы. [81] Как и в случае со сжатыми файлами, фактические размеры разреженных файлов не учитываются при определении ограничений квот. [82]

Теневое копирование тома

Служба теневого копирования томов (VSS) сохраняет исторические версии файлов и папок на томах NTFS, копируя старые, недавно перезаписанные данные в теневое копирование с помощью метода копирования при записи . Позже пользователь может запросить восстановление более ранней версии. Это также позволяет программам резервного копирования данных архивировать файлы, которые в данный момент используются файловой системой.

В Windows Vista также представлены постоянные теневые копии для использования с функциями восстановления системы и предыдущих версий . Однако постоянные теневые копии удаляются, когда более старая операционная система монтирует этот том NTFS. Это происходит потому, что старая операционная система не понимает новый формат постоянных теневых копий. [15]

Транзакции

Начиная с Windows Vista, приложения могут использовать транзакционную NTFS (TxF) для группировки нескольких изменений файлов в одну транзакцию. Транзакция будет гарантировать, что либо все изменения произойдут, либо ни одно из них не произойдет, и что ни одно приложение вне транзакции не увидит изменения, пока они не будут зафиксированы. [83]

Он использует методы, аналогичные тем, которые используются для теневого копирования томов (т. е. копирование при записи), чтобы гарантировать возможность безопасного отката перезаписанных данных, а также журнал CLFS для пометки транзакций, которые еще не были зафиксированы или были зафиксировано, но еще не полностью применено (в случае сбоя системы во время коммита одним из участников).

Транзакционная NTFS не ограничивает транзакции только локальным томом NTFS, но также включает в себя другие транзакционные данные или операции в других местах, например данные, хранящиеся в отдельных томах, локальном реестре или базах данных SQL, а также текущие состояния системных служб или удаленных служб. . Эти транзакции координируются по всей сети со всеми участниками, использующими конкретную службу DTC , чтобы гарантировать, что все участники получат одно и то же состояние фиксации, и передать изменения, которые были проверены любым участником (чтобы другие могли аннулировать свои локальные транзакции). кэширование старых данных или откат текущих незафиксированных изменений). Транзакционная NTFS позволяет, например, создавать общесетевые согласованные распределенные файловые системы, в том числе с их локальными действующими или автономными кэшами.

Microsoft теперь не рекомендует использовать TxF: «Microsoft настоятельно рекомендует разработчикам использовать альтернативные средства», поскольку «TxF может быть недоступен в будущих версиях Microsoft Windows». [84]

Квоты

Дисковые квоты были введены в NTFS v3. Они позволяют администратору компьютера под управлением версии Windows, поддерживающей NTFS, устанавливать порог дискового пространства, которое могут использовать пользователи. Это также позволяет администраторам отслеживать, сколько дискового пространства использует каждый пользователь. Администратор может указать определенный уровень дискового пространства, который пользователь может использовать до того, как он получит предупреждение, а затем запретить пользователю доступ, как только он достигнет верхнего предела пространства. Дисковые квоты не учитывают прозрачное сжатие файлов NTFS , если оно включено. Приложения, запрашивающие объем свободного места, также будут видеть объем свободного места, оставшийся пользователю, к которому применена квота.

Точки повторной обработки

Точки повторной обработки NTFS, представленные в NTFS v3, используются путем связывания тега повторной обработки с атрибутом пользовательского пространства файла или каталога. Microsoft включает несколько тегов по умолчанию, включая символические ссылки , точки соединения каталогов и точки монтирования томов . Когда диспетчер объектов анализирует поиск имени файловой системы и обнаруживает атрибут повторной обработки, он повторно анализирует поиск имени, передавая контролируемые пользователем данные повторной обработки каждому драйверу фильтра файловой системы, загружаемому в Windows. Каждый драйвер фильтра проверяет данные повторной обработки, чтобы определить, связаны ли они с этой точкой повторной обработки, и если этот драйвер фильтра определяет совпадение, он перехватывает запрос файловой системы и выполняет свои специальные функции.

Ограничения

Изменение размера

Начиная с Windows Vista, Microsoft добавила встроенную возможность сжимать или расширять раздел. Однако эта возможность не перемещает фрагменты файлов подкачки или файлы, помеченные как неперемещаемые, поэтому для сжатия тома часто потребуется переместить или отключить любой файл подкачки , индекс поиска Windows и любую теневую копию, используемую при восстановлении системы . Различные сторонние инструменты способны изменять размер разделов NTFS.

Один диск

С 2017 года Microsoft требует, чтобы файловая структура OneDrive находилась на диске NTFS. [85] Это связано с тем, что функция OneDrive «Файлы по требованию» использует точки повторной обработки NTFS для связывания файлов и папок, хранящихся в OneDrive, с локальной файловой системой, что делает файл или папку непригодными для использования в любой предыдущей версии Windows или в любой другой файловой системе NTFS. драйвер или любая файловая система и утилиты резервного копирования, не обновленные для его поддержки. [86]

Состав

NTFS состоит из нескольких компонентов, включая: загрузочный сектор раздела (PBS), содержащий загрузочную информацию; основная файловая таблица, в которой хранятся записи обо всех файлах и папках файловой системы; серия метафайлов, которые помогают более эффективно структурировать метаданные; потоки данных и механизмы блокировки.

Внутри NTFS использует B-деревья для индексации данных файловой системы. Журнал файловой системы используется для обеспечения целостности метаданных файловой системы, но не содержимого отдельных файлов. Известно, что системы, использующие NTFS, имеют повышенную надежность по сравнению с файловыми системами FAT. [87]

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. Существуют некоторые дополнительные ограничения на кодовые точки и имена файлов. [88]

Загрузочный сектор раздела (PBS)

Этот формат загрузочного раздела примерно основан на более ранней файловой системе FAT , но поля находятся в разных местах. Некоторые из этих полей, особенно поля «Секторов на дорожку», «Количество головок» и «Скрытые секторы», могут содержать фиктивные значения на дисках, где они либо не имеют смысла, либо не поддаются определению.

ОС сначала просматривает 8 байтов по адресу 0x30, чтобы найти номер кластера $MFT, затем умножает это число на количество секторов в кластере (1 байт находится по адресу 0x0D). Это значение представляет собой смещение сектора ( LBA ) для $MFT, которое описано ниже.

Основная таблица файлов

В NTFS все данные файлов, каталогов и метафайлов — имя файла, дата создания, права доступа (с использованием списков управления доступом ) и размер — хранятся в виде метаданных в основной таблице файлов ( MFT ). Этот абстрактный подход позволил легко добавлять функции файловой системы во время разработки Windows NT — примером является добавление полей для индексации, используемых Active Directory и Windows Search . Это также позволяет программному обеспечению быстрого поиска файлов очень быстро находить именованные локальные файлы и папки, включенные в MFT, без необходимости использования какого-либо другого индекса.

Структура MFT поддерживает алгоритмы, минимизирующие фрагментацию диска . [91] Запись каталога состоит из имени файла и «идентификатора файла» (аналога номера индексного дескриптора ), который представляет собой номер записи, представляющей файл в основной таблице файлов. Идентификатор файла также содержит счетчик повторного использования для обнаружения устаревших ссылок. Хотя это сильно напоминает W_FID Files-11 , другие структуры NTFS радикально отличаются.

Частичная копия MFT, называемая зеркалом MFT, сохраняется для использования в случае повреждения. [92] Если первая запись MFT повреждена, NTFS считывает вторую запись, чтобы найти файл зеркала MFT. Расположение обоих файлов хранится в загрузочном секторе. [93]

Метафайлы

NTFS содержит несколько файлов, которые определяют и организуют файловую систему. Во всех отношениях большинство этих файлов имеют структуру, подобную любому другому пользовательскому файлу (наиболее своеобразным является $Volume), но не представляют прямого интереса для клиентов файловой системы. [94] Эти метафайлы определяют файлы, создают резервные копии важных данных файловой системы, буферизуют изменения файловой системы, управляют распределением свободного пространства, удовлетворяют ожиданиям BIOS , отслеживают неправильные единицы распределения и хранят информацию о безопасности и использовании дискового пространства. Весь контент находится в безымянном потоке данных, если не указано иное.

Эти метафайлы обрабатываются Windows особым образом, обрабатываются непосредственно драйвером NTFS.SYS, и их трудно просмотреть напрямую: необходимы специальные инструменты. [c] Начиная с Windows 7, драйвер NTFS полностью запрещает доступ пользователей, что приводит к возникновению BSoD при каждой попытке выполнить файл метаданных. Одним из таких инструментов является nfi.exe («Утилита получения информации о файловом секторе NTFS»), которая свободно распространяется как часть «Инструментов поддержки OEM» Microsoft. Например, для получения информации о сегменте основной таблицы файлов «$MFT» используется следующая команда: nfi.exe c:\$MFT[95] Другой способ обойти ограничение — использовать файловый менеджер 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. В противном случае для данных выделяются кластеры, а информация о местоположении кластера сохраняется по мере выполнения данных в атрибуте.

Все атрибуты данного файла можно отобразить с помощью nfi.exe («Утилиты получения информации о файловом секторе NTFS»), которая свободно распространяется как часть «Инструментов поддержки OEM» Microsoft. [95]

Системные вызовы Windows могут обрабатывать альтернативные потоки данных. [5] В зависимости от операционной системы, утилиты и удаленной файловой системы передача файлов может незаметно удалять потоки данных. [5] Безопасный способ копирования или перемещения файлов — использовать системные вызовы BackupRead и BackupWrite, которые позволяют программам перечислять потоки, проверять, следует ли записывать каждый поток на целевой том, и сознательно пропускать нежелательные потоки. [5]

Атрибуты резидента и нерезидента

Чтобы оптимизировать хранилище и уменьшить накладные расходы ввода-вывода для очень распространенного случая атрибутов с очень маленьким связанным значением, NTFS предпочитает размещать значение внутри самого атрибута (если размер атрибута не превышает максимальный размер атрибута). запись MFT) вместо использования пространства записей MFT для вывода списка кластеров, содержащих данные; в этом случае атрибут не будет хранить данные напрямую, а просто сохранит карту распределения (в виде прогонов данных ), указывающую на фактические данные, хранящиеся в другом месте тома. [96] Когда к значению можно получить доступ непосредственно из атрибута, оно называется «резидентными данными» (специалисты по компьютерной криминалистике ). Объем подходящих данных сильно зависит от характеристик файла, но для однопоточных файлов с небольшими именами файлов и без списков управления доступом обычно используется размер от 700 до 800 байт.

Карта распределения хранится в виде прогонов данных со сжатым кодированием. Каждый прогон данных представляет собой непрерывную группу кластеров, в которых хранится значение атрибута. Для файлов на томе объемом несколько ГБ каждая запись может быть закодирована как 5–7 байт, что означаетЗапись MFT размером 1  КБ может хранить около 100 таких запусков данных. Однако, поскольку $ATTRIBUTE_LIST также имеет ограничение на размер, опасно иметь более 1 миллиона фрагментов одного файла на томе NTFS, что также означает, что в целом не рекомендуется использовать сжатие NTFS для файла. больше, чем10  ГБ . [97]

Драйвер файловой системы NTFS иногда пытается переместить данные некоторых атрибутов, которые можно сделать нерезидентными, в кластеры, а также пытается переместить данные, хранящиеся в кластерах, обратно в атрибут внутри записи MFT, основываясь на правила приоритета и предпочтительного порядка, а также ограничения по размеру.

Поскольку резидентные файлы не занимают кластеры напрямую («единицы распределения»), том NTFS может содержать больше файлов, чем кластеров. Например,Раздел размером 74,5 ГБ в формате NTFS с 19 543 064 кластерами4 КБ . Удаление системных файлов (aФайл журнала размером 64  МБ , растровый файл размером 2 442 888 байт и около 25 кластеров фиксированных служебных данных) оставляет 19 526 158 кластеров свободными для файлов и индексов. Поскольку в каждом кластере имеется четыре записи MFT, теоретически этот том может содержать почти 4 × 19 526 158 = 78 104 632 резидентных файла.

Оппортунистические замки

Оппортунистические блокировки файлов (oplocks) позволяют клиентам изменять свою стратегию буферизации для данного файла или потока, чтобы повысить производительность и сократить использование сети. [98] Операционные блокировки применяются к данному открытому потоку файла и не влияют на операционные блокировки в другом потоке.

Oplocks можно использовать для прозрачного доступа к файлам в фоновом режиме. Сетевой клиент может избегать записи информации в файл на удаленном сервере, если никакой другой процесс не обращается к данным, или он может буферизовать данные упреждающего чтения, если никакой другой процесс не записывает данные.

Windows поддерживает четыре различных типа опблокировок:

Уступающие блокировки были улучшены в Windows 7 и Windows Server 2008 R2 с помощью ключей оппортунистической блокировки для каждого клиента. [99]

Время

Windows NT и ее потомки сохраняют внутренние временные метки в формате UTC и выполняют соответствующие преобразования для отображения; все временные метки NTFS указаны в формате UTC. [ нужна цитата ]

По историческим причинам все версии Windows, не поддерживающие NTFS, сохраняют время внутри себя как время локальной зоны, и, следовательно, то же самое делают все файловые системы, кроме NTFS, которые поддерживаются текущими версиями Windows. Это означает, что когда файлы копируются или перемещаются между разделами NTFS и не-NTFS, ОС необходимо конвертировать временные метки на лету. Но если некоторые файлы перемещаются, когда действует летнее время (DST), а другие файлы перемещаются, когда действует стандартное время , в преобразованиях могут возникнуть некоторые неоднозначности. В результате, особенно вскоре после одного из дней изменения местного поясного времени, пользователи могут заметить, что некоторые файлы имеют временные метки, которые неверны на один час. Из-за различий в реализации летнего времени в разных юрисдикциях это может привести к потенциальной ошибке отметки времени до 4 часов за любые 12 месяцев. [100]

Смотрите также

Примечания

  1. ^ abcdefghij 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 байт
  2. ^ Также может быть 32-битным при условии, что размер прошивки и загрузчика операционной системы совпадают.
  3. ^ Начиная с Windows XP, просмотреть список этих файлов очень сложно: они существуют в индексе корневого каталога, но интерфейс Win32 их отфильтровывает. В NT 4.0 команда командной строки dirвыводила список метафайлов в корневом каталоге, если они /aбыли указаны. В Windows 2000 dir /aперестал работать, но dir /a \$MFTработал.

Рекомендации

  1. ^ abc Карресанд, Мартин; Аксельссон, Стефан; Дирколботн, Гейр Олав (01 июля 2019 г.). «Использование поведения выделения кластера NTFS для определения местоположения пользовательских данных». Цифровое расследование . 29 : –51–S60. дои : 10.1016/j.diin.2019.04.018 . hdl : 11250/2631756 . ISSN  1742-2876. S2CID  199004263.
  2. ^ ab «Глоссарий». [MS-EFSR]: протокол удаленной шифрования файловой системы (EFSRPC) . Майкрософт. 14 ноября 2013 г.
  3. ^ «Как работает NTFS» . ТехНет . Майкрософт. 8 октября 2009 года . Проверено 2 декабря 2017 г.
  4. ^ «B*Trees — Деревья каталогов NTFS — Концепция — Документация NTFS» . Flatcap.org . Архивировано из оригинала 13 мая 2019 г. Проверено 13 мая 2019 г.
  5. ^ abcdefg «Как работает NTFS». Технический справочник по Windows Server 2003 . 28 марта 2003 г. Проверено 12 сентября 2011 г.
  6. ^ abcd «Приложение A: Поведение продукта». [MS-FSA]: Алгоритмы файловой системы . Майкрософт. 12 сентября 2018 г. Проверено 1 октября 2018 г. NTFS использует размер кластера по умолчанию 4 КБ, максимальный размер кластера 64 КБ в операционной системе Windows 10 v1703 и Windows Server 2016 и более ранних версиях, а также 2 МБ в операционной системе Windows 10 v1709 и Windows Server 2019 и более поздних версиях, а также минимальный размер кластера. размер 512 байт.
  7. ^ «Приложение A: Поведение продукта» . [MS-FSA]: Алгоритмы файловой системы . Майкрософт. 14 ноября 2013 года . Проверено 21 сентября 2012 г.
  8. ^ Аб Руссон, Ричард; Фледель, Юваль. «Документация NTFS» (PDF) . Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 26 июня 2011 г.
  9. ^ «Структура SYSTEMTIME (minwinbase.h)» . Майкрософт. 5 октября 2021 г. . Проверено 7 января 2024 г.
  10. ^ Рик Вановер (14 сентября 2011 г.). «Дедупликация данных Windows Server 8». Архивировано из оригинала 18 июля 2016 г. Проверено 2 декабря 2011 г.
  11. ^ Аб Кастер, Хелен (1994). Внутри файловой системы Windows NT. Майкрософт Пресс . ISBN 978-1-55615-660-1.
  12. ^ «NTFS3 — Документация по ядру Linux» . www.kernel.org . Проверено 2 декабря 2021 г.
  13. ^ "NTFS-3G". www.freebsd.org . Проверено 2 декабря 2021 г.
  14. ^ «Как преобразовать диск из FAT32 в NTFS без потери данных» . WindowsLoop . 11 июля 2021 г. Проверено 8 августа 2021 г.
  15. ^ abc cfsbloggers (14 июля 2006 г.). «Как на точки восстановления и другие функции восстановления в Windows Vista влияет двойная загрузка с Windows XP». Картотека . Архивировано из оригинала 18 июля 2006 г. Проверено 21 марта 2007 г.
  16. Козерок, Чарльз (14 февраля 2018 г.). «Обзор и история NTFS». Руководство для ПК . Проверено 30 мая 2019 г.
  17. ^ Кастер, Хелен (1994). Внутри файловой системы Windows NT. Майкрософт Пресс . п. VII. ISBN 978-1-55615-660-1.
  18. ^ «Восстановление Windows NT после сбоя загрузки на диске NTFS». Майкрософт. 1 ноября 2006 г.
  19. ^ Аб Руссинович, Марк (30 июня 2006 г.). «Внутри Win2K NTFS, часть 1». MSDN . Майкрософт . Проверено 18 апреля 2008 г.
  20. ^ «Что нового в пакете обновления 4 для Windows NT 4.0?» Microsoft.com . 12 января 1999 года. Архивировано из оригинала 17 января 1999 года . Проверено 17 августа 2018 г.
  21. ^ «Новые возможности и особенности файловой системы NTFS 3.1». Майкрософт. 1 декабря 2007 г.
  22. ^ Ловалл, Джон (2006). «Улучшения хранилища в Windows Vista и Windows Server 2008» (PowerPoint) . Майкрософт. стр. 14–20 . Проверено 4 сентября 2007 г.
  23. ^ «Размер кластера по умолчанию для NTFS, FAT и exFAT» . Поддержка Майкрософт .
  24. ^ «Загрузка из GPT». Родсбукс.com . Проверено 22 сентября 2018 г.
  25. ^ «NTFS против FAT против exFAT - NTFS.com» . www.ntfs.com . Проверено 19 января 2021 г.
  26. ^ «Как конвертировать FAT-диски в NTFS» . Майкрософт. 18 декабря 2017 года . Проверено 30 мая 2019 г.
  27. ^ «Как использовать Convert.exe для преобразования раздела в файловую систему NTFS». Корпорация Майкрософт. 12 февраля 2007 г. Проверено 26 декабря 2010 г.
  28. ^ «Примечания к выпуску FreeBSD 3.2» . 17 мая 1999 года . Проверено 15 июня 2020 г.
  29. ^ ab "mount_ntfs — страницы руководства OpenBSD" . Проверено 15 июня 2020 г.
  30. ^ «Анонс NetBSD 1.5» . 6 декабря 2000 г. Проверено 15 июня 2020 г.
  31. ^ «OpenBSD 4.9». Openbsd.com . Проверено 22 сентября 2018 г.
  32. ^ ab «Кредиты и история NTFS». Проект Linux-NTFS . Архивировано из оригинала 24 сентября 2021 г. Проверено 24 сентября 2021 г.
  33. ^ «Разработка ядра». lwn.net . 2 мая 2002 года . Проверено 05 сентября 2021 г.
  34. ^ «Примечания к выпуску версии 2.5.11» . 29 апреля 2002 года . Проверено 05 сентября 2021 г.
  35. ^ «Журнал изменений 2.6.15» . Linux-проект . 3 января 2006 г. Проверено 05 сентября 2021 г.
  36. ^ Андерсон, Тим (6 сентября 2021 г.). «GitHub объединяет «бесполезный мусор», — говорит Линус Торвальдс, поскольку в ядро ​​Linux 5.15 добавлена ​​новая поддержка NTFS». Регистр . Проверено 7 сентября 2021 г.
  37. ^ «В OpenBSD добавлена ​​поддержка Fuse(4) для добавления файловых систем в пользовательскую среду». Журнал OpenBSD . 08.11.2013 . Проверено 8 ноября 2013 г.
  38. ^ «Стабильный драйвер чтения/записи NTFS-3G» . 25 июля 2009 г.
  39. ^ «Tuxera NTFS для Mac» . Туксера. 30 августа 2011 года . Проверено 20 сентября 2011 г.
  40. ^ «Ян Краточвил: Captive: первая бесплатная файловая система чтения/записи NTFS для GNU/Linux» . Проверено 15 июня 2020 г.
  41. ^ «О Таксере» . Проверено 15 июня 2020 г.
  42. ^ «10.6: Включить встроенную поддержку чтения/записи NTFS». 1 октября 2009 г. Архивировано из оригинала 5 сентября 2021 г. Проверено 5 сентября 2021 г.
  43. ^ «NTFS для Mac OS X, канал связи между Mac OS X и Windows». Группа программного обеспечения Paragon . Проверено 20 сентября 2011 г.
  44. ^ «Лидер в области решений для массового хранения данных | Seagate США» . Seagate.com . Архивировано из оригинала 10 февраля 2011 года.
  45. ^ «Плагин NTFS для NetDrive» . ecsoft2.org . Проверено 9 сентября 2020 г.
  46. ^ «NetDrive для OS/2». arcanoae.com . Проверено 9 сентября 2020 г.
  47. ^ "Avira NTFS4DOS Personal" . Архивировано из оригинала 19 июня 2010 года . Проверено 25 июля 2009 г.
  48. ^ «Загрузить Avira NTFS4DOS Personal 1.9» . Архивировано из оригинала 10 ноября 2013 года . Проверено 22 сентября 2018 г.
  49. ^ ab «Как работают дескрипторы безопасности и списки контроля доступа». ТехНет . Майкрософт . Проверено 4 сентября 2015 г.
  50. ^ Морелло, Джон (февраль 2007 г.). «Наблюдение за безопасностью: развертывание EFS: Часть 1». Журнал Технет . Майкрософт . Проверено 25 января 2009 г.
  51. ^ «Как работает EFS» . Ресурсный комплект Windows 2000 . Майкрософт . 18 июля 2012 года . Проверено 25 февраля 2014 г.
  52. ^ «Вопросы совместимости томов Windows 8 с предыдущими версиями Windows» . Проверено 17 декабря 2021 г.
  53. ^ «Журналы изменений». Документы Майкрософт . 7 января 2021 г. Проверено 12 августа 2023 г.
  54. ^ «Создание, изменение и удаление журнала изменений (Windows)» . Документы Майкрософт . 7 января 2021 г. Проверено 12 августа 2023 г.
  55. ^ «Глава 29 - Совместимость POSIX» . Справочное руководство по MS Windows NT Workstation 4.0 . Майкрософт . 1995 . Проверено 21 октября 2013 г.
  56. ^ «Жесткие ссылки и соединения». MSDN . Майкрософт . 12 октября 2013 года . Проверено 21 октября 2013 г.
  57. ^ «MSDN — функция CreateHardLink» . Проверено 14 января 2016 г.
  58. ^ Руссинович, Марк Э .; Соломон, Дэвид А.; Ионеску, Алекс (2009). «Файловые системы». Внутреннее устройство Windows (5-е изд.). Майкрософт Пресс. п. 921. ИСБН 978-0-7356-2530-3. Одним из компонентов Windows, который использует несколько потоков данных, является служба выполнения вложений[...] в зависимости от того, из какой зоны был загружен файл [...] Проводник Windows может предупредить пользователя
  59. Бойд, Кристофер (26 октября 2022 г.). «Уловка с некорректной подписью может обойти Веб-маркировку» . Вредоносные байты . Проверено 15 мая 2023 г.
  60. ^ DHB-MSFT (28 февраля 2023 г.). «Макросы из Интернета по умолчанию заблокированы в Office — Развернуть Office». Learn.microsoft.com . Проверено 15 мая 2023 г.
  61. ^ "Потоки - Sysinternals" . Документы Майкрософт . 23 марта 2021 г. Проверено 12 августа 2023 г.
  62. ^ «Поставщик файловой системы». Майкрософт. 9 августа 2012 года. Архивировано из оригинала 23 января 2015 года . Проверено 23 января 2015 г.
  63. ^ «Вредоносное ПО, использующее альтернативные потоки данных?». Веб-журнал AusCERT . 21 августа 2007 г. Архивировано из оригинала 23 февраля 2011 г.
  64. ^ «Сжатие и распаковка файлов». MSDN Platform SDK: файловые системы . Проверено 18 августа 2005 г.
  65. ^ «Размер кластера по умолчанию для файловых систем NTFS и FAT». Майкрософт. 31 января 2002 года . Проверено 10 января 2012 г.
  66. ^ «Как работает NTFS» . 28 марта 2003 г. Проверено 24 октября 2011 г.
  67. ^ Масьеро, Мануэль (1 декабря 2011 г.). «Следует ли сжимать данные на SSD?». Аппаратное обеспечение Тома . Группа компаний «Бестофмедиа» . Проверено 5 апреля 2013 г.
  68. ^ Аб Миддлтон, Деннис. «Понимание сжатия NTFS». Блог Ntdebugging . Майкрософт . Архивировано из оригинала 29 июня 2011 года . Проверено 16 марта 2011 г.
  69. ^ «Сокращение разрыва: вырезание файлов, сжатых в NTFS» . Проверено 29 мая 2011 г.
  70. ^ «Концепции дисков и устранение неполадок» . Майкрософт. 11 сентября 2008 года . Проверено 26 марта 2012 г.
  71. ^ «[MS-XCA]: Алгоритм сжатия Xpress» . 31 января 2023 г.
  72. ^ «wimlib: библиотека Windows Imaging (WIM) с открытым исходным кодом — алгоритм сжатия» .
  73. ^ «Компактная ОС, одноэкземплярное копирование и оптимизация изображений» . Майкрософт . Проверено 1 октября 2019 г.
  74. ^ abcd Раймонд Чен (18 июня 2019 г.). «Что такое WofCompressedData? Означает ли WOF, что Windows — собака?». Блоги разработчиков Microsoft .
  75. Биггерс, Эрик (29 апреля 2019 г.). «Плагин NTFS-3G для чтения файлов, сжатых системой». Гитхаб . Проверено 1 октября 2019 г.
  76. ^ «Re: [ntfs-3g-devel] Экспериментальная поддержка файлов Windows 10, сжатых системой» . SourceForge.net . Проверено 1 октября 2019 г.
  77. ^ «Обзор DISM» . 15 декабря 2021 г.
  78. ^ «Компактный». 3 февраля 2023 г.
  79. ^ «Обзор загрузки файла образа Windows (WIMBoot)» . 10 марта 2015 г.
  80. ^ «Разреженные файлы». MSDN . Майкрософт . 12 октября 2013 года . Проверено 21 октября 2013 г.
  81. Кандот, Суреш Б. (4 марта 2009 г.). «Ошибки разреженных файлов: 1450 или 665 из-за фрагментации файла: исправления и обходные пути». Инженеры CSS SQL Server . Майкрософт . Архивировано из оригинала 21 октября 2013 года . Проверено 21 октября 2013 г.
  82. ^ «Разреженные файлы и дисковые квоты». Библиотека MSDN . Майкрософт . 12 октября 2013 года . Проверено 21 октября 2013 г.
  83. ^ «Транзакционная NTFS». MSDN . Майкрософт . Архивировано из оригинала 21 февраля 2007 г. Проверено 2 февраля 2007 г.
  84. ^ «Транзакционная NTFS (TxF)» . Документы Майкрософт . Майкрософт. 20 июля 2022 г. Проверено 12 августа 2023 г.
  85. ^ «Невозможно открыть контент, синхронизированный в папке OneDrive на внешнем диске». Поддержка Майкрософт . Проверено 3 апреля 2021 г.
  86. Андре, Жан-Пьер (1 марта 2019 г.). «NTFS-3G: точки соединения, символические ссылки и точки повторной обработки». jp-andre.pagesperso-orange.fr .
  87. ^ «Глава 18 – Выбор файловой системы» . Справочное руководство по MS Windows NT Workstation 4.0 . Майкрософт . 20 февраля 2014 года . Проверено 25 февраля 2014 г.
  88. ^ «Именование файлов, путей и пространств имен». MSDN . Майкрософт . Соглашения об именах . Проверено 25 февраля 2014 г.
  89. ^ "NTFS. Загрузочный сектор раздела" . ntfs.com . Проверено 22 сентября 2018 г.
  90. ^ "Загрузочный сектор". Technet.microsoft.com . 11 сентября 2008 г. Таблица 1.13. BPB и расширенные поля BPB на томах NTFS . Проверено 22 сентября 2018 г.
  91. ^ "Основная таблица файлов" . MSDN . 2 июля 2012 г.
  92. ^ «Криминалистика: что такое зеркало MFT?». Где ваши данные? . 05.06.2009 . Проверено 30 июля 2021 г.
  93. ^ «Основная таблица файлов NTFS (MFT)» . ntfs.com . Проверено 22 сентября 2018 г.
  94. ^ Шварц, Томас. «COEN 252 Компьютерная криминалистика NTFS». Факультет организации и информатики Загребского университета. Архивировано из оригинала 27 февраля 2021 г. Проверено 30 мая 2019 г.
  95. ^ ab «Доступность сервисной версии 2 для инструментов поддержки OEM, этап 3» . Корпорация Майкрософт. 21 февраля 2007 г. Архивировано из оригинала 23 февраля 2015 г. Проверено 16 июня 2010 г. Утилита для получения информации о файловом секторе файловой системы Windows NT (NTFS). Инструмент, используемый для получения информации о томе NTFS.
  96. ^ «Четыре этапа роста файла NTFS». Архивировано из оригинала 23 сентября 2018 года . Проверено 22 сентября 2018 г.
  97. ^ «Сильно фрагментированный файл в томе NTFS не может превысить определенный размер». Архивировано из оригинала 06 мая 2021 г. Проверено 19 мая 2021 г.
  98. ^ «Как работают Oplocks в среде Windows: обзор» . Архивировано из оригинала 23 августа 2010 г. Проверено 19 декабря 2018 г.
  99. ^ «Что нового в NTFS» . Technet.microsoft.com . 2 июля 2012 года . Проверено 22 сентября 2018 г.
  100. Гиллиган, Джонатан (28 мая 2001 г.). «Устранение ошибки перехода на летнее время и получение правильного времени изменения файлов». Проект Кодекса .

дальнейшее чтение

Внешние ссылки