Фа́йловая систе́ма (англ. file system) — регламент, определяющий способ организации, хранения и именования данных на носителях информации.
Основные функции файловой системы можно разделить на две группы:
a)
Функции для работы с файлами (создание, удаление, переименование файлов и т.д.) Функции для работы с данными, которые хранятся в файлах (запись, чтение, поиск данных и т.д.)
b)
Основные файловые системы: FAT16 / FAT32 / NTFS
Принцип организации файловой системы – табличный. Данные о том, в каком месте на диске записан файл, хранится в таблице размещения файлов (File Allocation Table, FAT).
По принципу построения FAT похожа на оглавление книги, так как операционная система использует ее для поиска файла и определения кластеров, которые этот файл занимает на жестком диске.
Наименьшей физической единицей хранения данных является сектор. Размер сектора 512 байт. Поскольку размер FAT – таблицы ограничен, то для дисков, размер которых превышает 32 Мбайт, обеспечить адресацию к каждому отдельному сектору не представляется возможным. В связи с этим группы секторов условно объединяются в кластеры. Кластер является наименьшей единицей адресации к данным. FAT - это таблица расположения файлов. От этой таблицы и получилось название всей файловой системы, в которой FAT является лишь одним из элементов.
MBR. Master Boot Record - этот сектор несет информацию о разделах, существующих на диске, с каких цилиндров, головок и секторов они начинаются (partition table). Есть также указание для BIOS, где надо искать основные файлы операционной системы. PT. Partition Table - таблица разделов. Этот сектор содержит информацию о дорожках, секторах, головках "винта". И конечно же содержит информацию о типе самой ФС. VBS. Volume Boot Sector - загрузочный сектор тома. Этот сектор отвечает за информацию о размере кластера, тип и размер используемой таблицы расположения файлов. FAT. File Allocation Table - таблица расположения (размещения) файлов. Этот раздел содержит инфу о расположении файлов на диске. На "винте" она содержится в двух экземплярах. RD. Root Directory - корневой каталог. Этот раздел несет информацию о типе файлов, их названиях, размерах, дате создания. Кроме этого, для каждого файла в корневом каталоге есть номер кластера, с которого начинается файл.
При записи файла на диск, информация о нем записывается в Root Directory. В поле "указатель" записывается номер начального кластера. По этому номеру, система обращается в ячейку таблицы, с таким же номером, где будет записан номер следующего кластера. И так далее, до тех пор, пока не будет описано расположение всего файла на диске. Запись закончится командой "стоп", то есть на этом кластере файл заканчивается.
Сначала для дискет и небольших жестких дисков (менее 16 Мбайт) использовалась 12разрядная версия FAT (так называемая FAT12). Затем в MS-DOS была введена 16-разрядная версия FAT для более крупных дисков. Операционные системы MS DOS, Win 95, Win NT реализуют 16 – разрядные поля в таблицах размещения файлов. Файловая система FAT32 была введена в Windows 95 OSR2 и поддерживается в Windows 98 и Windows 2000, XP etc. FAT32 представляет собой усовершенствованную версию FAT, предназначенную для использования на томах, объем которых превышает 2 Гбайт. FAT32 обеспечивает поддержку дисков размером до 2 Тбайт и более эффективное расходование дискового пространства. FAT32 использует более мелкие кластеры, что позволяет повысить эффективность использования дискового пространства.
В Windows XP/Vista применяется FAT32 и NTFS. Более перспективным направлением в развитии файловых систем стал переход к NTFS (New Technology File System – файловая система новой технологии) с длинными именами файлов и надежной системой безопасности.
Операционные системы Microsoft семейства Windows NT нельзя представить без файловой системы NTFS - одной из самых сложных и удачных из существующих на данный момент файловых систем. ©Microsoft
NTFS (от англ. New Technology File System — «файловая система новой технологии») — стандартная файловая система для семейства операционных систем Microsoft Windows NT. NTFS заменила использовавшуюся в MS-DOS и Microsoft Windows файловую систему FAT. NTFS поддерживает систему метаданных и использует специализированные структуры данных для хранения информации о файлах для улучшения производительности, надёжности и эффективности использования дискового пространства. NTFS хранит информацию о файлах в Master File Table (MFT). NTFS разработана на основе файловой системы HPFS (от англ. High Performance File System — высокопроизводительная файловая система), создававшейся Microsoft совместно с IBM для операционной системы OS/2.
Спецификации файловой системы являются закрытыми. Это создаёт определённые трудности при реализации её поддержки в сторонних продуктах, не принадлежащих Microsoft — в частности, разработчикам драйверов.
Как и любая другая система, NTFS делит все полезное место на кластеры - блоки данных, используемые единовременно. NTFS поддерживает почти любые размеры кластеров - от 512 байт до 64 Кбайт, неким стандартом же считается кластер размером 4 Кбайт. Никаких аномалий кластерной структуры NTFS не имеет.
Диск NTFS условно делится на две части. Первые 12% диска отводятся под так называемую MFT зону - пространство, в которое растет метафайл MFT. Запись каких-либо данных в эту область невозможна. MFT-зона всегда держится пустой - это делается для того, чтобы самый главный, служебный файл (MFT) не фрагментировался при своем росте. Остальные 88% диска представляют собой обычное пространство для хранения файлов.
Файловая система NTFS представляет собой выдающееся достижение структуризации: каждый элемент системы представляет собой файл - даже служебная информация. Самый главный файл на NTFS называется MFT, или Master File Table - общая таблица файлов. Именно он размещается в MFT зоне и представляет собой централизованный каталог всех остальных файлов диска, и, как не парадоксально, себя самого. MFT поделен на записи фиксированного размера (обычно 1 Кбайт).
Первые 16 файлов носят служебный характер и недоступны операционной системе - они называются метафайлами, причем самый первый метафайл - сам MFT. Эти первые 16 элементов MFT - единственная часть диска, имеющая фиксированное положение.
Первые 16 файлов NTFS (метафайлы) носят служебный характер. Каждый из них отвечает за какой-либо аспект работы системы. Преимущество настолько модульного подхода заключается в поразительной гибкости - например, на FAT-е физическое повреждение в самой области FAT фатально для функционирования всего диска, а NTFS может сместить, даже фрагментировать по диску, все свои служебные области, обойдя любые неисправности поверхности - кроме первых 16 элементов MFT.
Метафайлы находятся корневом каталоге NTFS диска - они начинаются с символа имени "$", хотя получить какую-либо информацию о них стандартными средствами сложно. Любопытно, что и для этих файлов указан вполне реальный размер - можно узнать, например, сколько операционная система тратит на каталогизацию всего вашего диска, посмотрев размер файла $MFT. В следующей таблице приведены используемые в данный момент метафайлы и их назначение.
Каталог на NTFS представляет собой специфический файл, хранящий ссылки на другие файлы и каталоги, создавая иерархическое строение данных на диске. Файл каталога поделен на блоки, каждый из которых содержит имя файла, базовые атрибуты и ссылку на элемент MFT, который уже предоставляет полную информацию об элементе каталога. Внутренняя структура каталога представляет собой бинарное дерево. Вот что это означает: для поиска файла с данным именем в линейном каталоге, таком, например, как у FAT-а, операционной системе приходится просматривать все элементы каталога, пока она не найдет нужный. Бинарное же дерево располагает имена файлов таким образом, чтобы поиск файла осуществлялся более быстрым способом - с помощью получения двухзначных ответов на вопросы о положении файла.
NTFS - отказоустойчивая система, которая вполне может привести себя в корректное состояние при практически любых реальных сбоях. Любая современная файловая система основана на таком понятии, как транзакция - действие, совершаемое целиком и корректно или не совершаемое вообще. У NTFS просто не бывает промежуточных (ошибочных или некорректных) состояний - квант изменения данных не может быть поделен на до и после сбоя, принося разрушения и путаницу - он либо совершен, либо отменен.
Файлы NTFS имеют один довольно полезный атрибут - "сжатый". Дело в том, что NTFS имеет встроенную поддержку сжатия дисков - то, для чего раньше приходилось использовать стороннее ПО. Любой файл или каталог в индивидуальном порядке может хранится на диске в сжатом виде - этот процесс совершенно прозрачен для приложений. Сжатие файлов имеет очень высокую скорость и только одно большое отрицательное свойство - огромная виртуальная фрагментация сжатых файлов, которая, правда, никому особо не мешает.
Шифрование - Полезная возможность для людей, которые беспокоятся за свои секреты каждый файл или каталог может также быть зашифрован. В сочетании со стандартным и практически непрошибаемым паролем на загрузку самой системы, эта возможность обеспечивает достаточную для большинства применений безопасность избранных вами важных данных.
FAT
FAT32
NTFS
Системы, её поддерживающие
DOS, Windows9Х, NT всех версий
Windows98, NT5, Win 2000, Win9X, XP, Vista, Windows Se7en
NT4, NT5, MS-DOS, Windows 9x, XP, Vista, Windows Se7en
Максимальный размер тома
2 Гбайт
практически неограничен
практически неограничен
Макс. число файлов на томе
примерно 65 тысяч
практически не ограничено
практически не ограничено
Имя файла
с поддержкой длинных имен - 255 символов, системный набор символов
с поддержкой длинных имен - 255 символов, системный набор символов
255 символов, любые символы любых алфавитов (65 тысяч разных начертаний)
Возможные атрибуты файла
Базовый набор
Базовый набор
всё, что придет в голову производителям программного обеспечения
Безопасность
нет
нет
да
Сжатие
нет
нет
да
Устойчивость к сбоям
средняя
плохая
полная - автоматическое восстановление системы при любых сбоях
Экономичность
минимальная
улучшена за счет уменьшения размеров максимальна кластеров
Быстродействие
высокое для малого числа файлов, но быстро уменьшается с появлением большого количества файлов в каталогах.
На дисках большого размера (десятки система не очень эффективна для гигабайт) начинаются серьезные малых и простых разделов (до 1 Гбайт), проблемы с общей организацией данных но работа с огромными массивами данных и внушительными каталогами организована как нельзя более эффективно и очень сильно превосходит по скорости другие системы
FAT32 +
1.
Низкое требование к объему 1. оперативной памяти. 2. Эффективная работа с файлами средних 3. и малых размеров. 4. Более низкий износ дисков вследствие 5. меньшего количества передвижений 6. головок чтения/записи.
Быстрая скорость доступа к файлам малого размера. Разграничение прав доступа к файлам и шифрование. Поддержка сжатия Автоматическое восстановление системы при любых сбоях. Эффективное хранение данных. Высокая производительность при работе с крупными массивами данных и большими каталогами.
1. Низкая защита от сбоев системы (средства 1. оптимизации по скорости привели к 2. появлению слабых по надежности мест). 3. 2. Проблемы с общей организацией данных на дисках большого размера (десятки Гб). 4. 3. Сильное снижение быстродействия при фрагментации. 4. Медленная работа с каталогами, содержащими большое количество файлов. 5. Не поддерживаются маленькие размеры кластеров.
Более высокие требования к объему оперативной памяти. Невозможность доступа из DOS, Windows 95/98. Cистема не очень эффективна для малых и простых разделов (до 1 Гб). Алгоритм заполнения кластеров не очень хорош и приводит к фрагментации.
2. 3.
-
NTFS
…