Файловая система hpfs (high performance file system — высокопроизводительная файловая система) впервые появилась в операционных системах os/2 1.2 и lan manager. Она была разработана совместными усилиями лучших специалистов компаний ibm и microsoft на основе опыта ibm по созданию файловых систем mvs, vm/cms и виртуального метода доступа. Архитектура hpfs начала создаваться как файловая система для многозадачного режима и была призвана обеспечить высокую производительность при работе с файлами на дисках большого размера.
Принципы размещения файлов на диске, положенные в основу hpfs, увеличивают как производительность файловой системы, так и ее надежность и отказоустойчивость. Для достижения этих целей предложено несколько идей:
· Размещение каталогов в середине дискового пространства;
· Использование методов бинарных сбалансированных деревьев для ускорения поиска информации о файле;
· Рассредоточение информации о местоположении файловых записей по всему диску, при том что записи каждого конкретного файла размещаются (по возможности) в смежных секторах и поблизости от данных об их местоположении.
В название файловой системы ntfs (new technology file system — файловая система новой технологии) входят слова «новая технология». Действительно, файловая система ntfs по сравнению с широко известной fat16 (и даже fat32) содержит ряд значительных усовершенствований и изменений. С точки зрения пользователей файлы по-прежнему хранятся в каталогах, ныне при работе в среде windows часто называемых папками (folders). Однако в ней появилось много новых особенностей и возможностей.
При проектировании ntfs особое внимание было уделено надежности, механизмам ограничения доступа к файлам и каталогам, расширенной функциональности, поддержке дисков большого объема и пр. Начала разрабатываться эта система в рамках проекта os/2 v.3, поэтому она переняла многие интересные особенности файловой системы hpfs.
Высокопроизводительные компьютеры и системы совместного использования должны обладать повышенной надежностью, которая является ключевым элементом структуры и функционирования ntfs. Система ntfs обладает определенными средствами самовосстановления. Она поддерживает различные механизмы проверки целостности системы, включая ведение журналов транзакций, позволяющих воспроизвести файловые операции записи по специальному системному журналу. При протоколировании файловых операций система управления файлами фиксирует в специальном служебном файле (журнале) происходящие изменения. В начале операции, связанной с изменением файловой структуры, делается соответствующая пометка. Если во время файловых операций происходит какой-нибудь сбой, то из-за упомянутой отметки операция остается помеченной как незавершенная. При выполнении процедуры проверки целостности файловой системы после перезагрузки машины эти незавершенные операции отменяются, и файлы возвращаются в исходное состояние. Если же операция изменения данных в файлах завершается нормальным образом, то в файле журнала эта операция отмечается как завершенная.
Поскольку ntfs разрабатывалась как файловая система для серверов, для которых очень важно обеспечить бесперебойную работу без перезагрузок, в ней, как и в hpfs, для повышения надежности был введен механизм аварийной замены дефектных секторов резервными. Другими словами, если обнаруживается сбой при чтении данных, то система постарается прочесть эти данные, переписать их в специально зарезервированное для этой цели пространство диска, а дефектные сектора пометить как плохие и более к ним не обращаться.