Безопасность в файловой системе NTFSРефераты >> Программирование и компьютеры >> Безопасность в файловой системе NTFS
HPFS (High Performance File System), активно применяемая до сих пор пользователями OS/2, показала себя достаточно удачной системой, но и она имела существенные недостатки - полное отсутствие средств автоматической восстанавливаемости, излишнюю сложность организации данных и невысокую гибкость.
NTFS же долго не могла завоевать персональные компьютеры из-за того, что для организации эффективной работы с её структурами данных требовались значительные объемы памяти. Системы с 4 или 8 МБ (стандарт 95-96 годов) были просто неспособны, получить хоть какой-либо плюс от NTFS, поэтому за ней закрепилась не очень правильная репутация медленной и громоздкой системы. На самом деле это не соответствует действительности - современные компьютерные системы с памятью более 64 МБ получают просто огромный прирост производительности от использования NTFS.
В данной таблице сведены воедино все существенные плюсы и минусы распространенных в наше время систем, таких как FAT, FAT32 и NTFS. Вряд ли разумно обсуждать другие системы, так как в настоящее время 97% пользователей делают выбор между Windows 98, Windows NT4.0, Windows 2000 (NT5.0) и Windows XP (NT5.1), а других вариантов там просто нет.
(таблица на следующей странице)
FAT |
FAT32 |
NTFS | |
Поддерживающие системы |
DOS, Windows9Х, NT всех версий |
Windows 98, NT5 |
NT4, NT5, NT5.1 |
Максимальный размер тома |
2 ГБ |
практически неограничен |
практически неограничен |
Максимальное число файлов на томе |
примерно 65 тысяч |
практически неограниченно |
практически не ограничено |
Имена файлов |
с поддержкой длинных имен - 255 символов, системный набор символов |
с поддержкой длинных имен - 255 символов, системный набор символов |
255 символов, любые символы любых алфавитов (65000 разных начертаний) |
Возможные атрибуты файла |
базовый набор |
базовый набор |
всё, что придет в голову производителям программного обеспечения |
Безопасность |
Нет |
нет |
да (начиная с NT5.0 и выше, встроена возможность физического шифрования данных) |
Сжатие |
Нет |
нет |
да |
Устойчивость к сбоям |
Средняя (система слишком проста, и поэтому ломаться особо нечему) |
плохая (средства оптимизации по скорости привели к появлению слабых по надежности мест) |
полная - автоматическое восстановление системы при любых сбоях (не считая физические ошибки записи, когда пишется одно, а на самом деле записывается другое) |
Экономичность |
минимальная (огромные размеры кластеров на больших дисках) |
средняя (улучшена за счет уменьшения размеров кластеров) |
максимальная (очень эффективная и разнообразная система хранения данных) |
Быстродействие |
высокое для малого числа файлов, но быстро уменьшается с появлением большого количества файлов в каталогах; результат - для слабо заполненных дисков - максимальное, для заполненных - плохое |
полностью аналогично FAT, но на дисках большого размера (десятки гигабайт) начинаются серьезные проблемы с общей организацией данных |
система не очень эффективна для малых и простых разделов (до 1 ГБ), но работа с огромными массивами данных и внушительными каталогами организована как нельзя более эффективно и очень сильно превосходит по скорости другие системы |
Хотелось бы сказать, что если ваша операционная система - NT (Windows 2000, Windows XP), то использовать какую-либо файловую систему, отличную от NTFS - значит существенно ограничивать свое удобство и гибкость работы самой операционной системы. NT, а особенно Windows 2000 или Windows XP, составляет с NTFS как бы две части единого целого - множество полезных возможностей NT напрямую завязано на физическую и логическую структуру файловой системы, и использовать там FAT или FAT32 имеет смысл лишь для совместимости - если у вас стоит задача читать эти диски из каких-либо других систем.
Часть 4. Журналирование NTFS
Описание того простого факта, что NTFS является журналируемой системой, повергло многочисленных поклонников других файловых и операционных систем в искреннее возмущение. Многие, называли NTFS системой с квази-журналированием или даже без журналирования вообще, ставя в противовес многочисленные файловые системы Unix. Упоминаются также фатальные сбои NTFS, восстановление после которых не удалось - данные были потеряны. В данной части будет объяснена философия журналирования и средств защиты от сбоев NTFS, а также пояснены причины появления фатальных сбоев. Я постараюсь оправдать подход корпорации Microsoft, которая сделала всё именно так, как сделала - по крайней мере, я изложу причины реализованных технологических решений и те компромиссы, на которые пришлось пойти коллективу разработчиков NTFS.
Принцип
NTFS - отказоустойчивая система, которая вполне может привести себя в корректное состояние при практически любых реальных сбоях. Любая современная файловая система основана на таком понятии, как транзакция - действие, совершаемое целиком и корректно или не совершаемое вообще. У NTFS просто не бывает промежуточных (ошибочных или некорректных) состояний - квант изменения данных не может быть поделен на состояния до и после сбоя, принося разрушения и путаницу - он либо совершен, либо отменен.
Пример 1: осуществляется запись данных на диск. Вдруг выясняется, что в то место, куда мы только что решили записать очередную порцию данных, запись не удалась - физическое повреждение поверхности. Поведение NTFS в этом случае довольно логично: транзакция записи откатывается целиком - система осознает, что запись не произведена. Пространство помечается как сбойное, а данные записываются в другое место - начинается новая транзакция.