Файловые системы: Файловая система – Типы файловых систем — в чем разница между FAT32, NTFS и exFAT

Содержание

Файловая система NTFS

Операционные системы Microsoft семейства Windows NT нельзя представить без файловой системы NTFS — одной из самых сложных и удачных из существующих на данный момент файловых систем. Данная статья расскажет вам, в чем особенности и недостатки этой системы, на каких принципах основана организация информации, и как поддерживать систему в стабильном состоянии, какие возможности предлагает NTFS и как их можно использовать обычному пользователю.
Часть 1. Физическая структура NTFS

Начнем с общих фактов. Раздел NTFS, теоретически, может быть почти какого угодно размера. Предел, конечно, есть, но я даже не буду указывать его, так как его с запасом хватит на последующие сто лет развития вычислительной техники — при любых темпах роста. Как обстоит с этим дело на практике? Почти так же. Максимальный размер раздела NTFS в данный момент ограничен лишь размерами жестких дисков. NT4, правда, будет испытывать проблемы при попытке установки на раздел, если хоть какая-нибудь его часть отступает более чем на 8 Гб от физического начала диска, но эта проблема касается лишь загрузочного раздела.

Лирическое отступление. Метод инсталляции NT4.0 на пустой диск довольно оригинален и может навести на неправильные мысли о возможностях NTFS. Если вы укажете программе установки, что желаете отформатировать диск в NTFS, максимальный размер, который она вам предложит, будет всего 4 Гб. Почему так мало, если размер раздела NTFS на самом деле практически неограничен? Дело в том, что установочная секция просто не знает этой файловой системы 🙂 Программа установки форматирует этот диск в обычный FAT, максимальный размер которого в NT составляет 4 Гбайт (с использованием не совсем стандартного огромного кластера 64 Кбайта), и на этот FAT устанавливает NT. А вот уже в процессе первой загрузки самой операционной системы (еще в установочной фазе) производится быстрое преобразование раздела в NTFS; так что пользователь ничего и не замечает, кроме странного «ограничения» на размер NTFS при установке. 🙂

Структура раздела — общий взгляд

Как и любая другая система, NTFS делит все полезное место на кластеры — блоки данных, используемые единовременно. NTFS поддерживает почти любые размеры кластеров — от 512 байт до 64 Кбайт, неким стандартом же считается кластер размером 4 Кбайт. Никаких аномалий кластерной структуры NTFS не имеет, поэтому на эту, в общем-то, довольно банальную тему, сказать особо нечего.

Диск NTFS условно делится на две части. Первые 12% диска отводятся под так называемую MFT зону — пространство, в которое растет метафайл MFT (об этом ниже). Запись каких-либо данных в эту область невозможна. MFT-зона всегда держится пустой — это делается для того, чтобы самый главный, служебный файл (MFT) не фрагментировался при своем росте. Остальные 88% диска представляют собой обычное пространство для хранения файлов.

Свободное место диска, однако, включает в себя всё физически свободное место — незаполненные куски MFT-зоны туда тоже включаются. Механизм использования MFT-зоны таков: когда файлы уже нельзя записывать в обычное пространство, MFT-зона просто сокращается (в текущих версиях операционных систем ровно в два раза), освобождая таким образом место для записи файлов. При освобождении места в обычной области MFT зона может снова расширится. При этом не исключена ситуация, когда в этой зоне остались и обычные файлы: никакой аномалии тут нет. Что ж, система старалась оставить её свободной, но ничего не получилось. Жизнь продолжается… Метафайл MFT все-таки может фрагментироваться, хоть это и было бы нежелательно.

MFT и его структура

Файловая система NTFS представляет собой выдающееся достижение структуризации: каждый элемент системы представляет собой файл — даже служебная информация. Самый главный файл на NTFS называется MFT, или Master File Table — общая таблица файлов. Именно он размещается в MFT зоне и представляет собой централизованный каталог всех остальных файлов диска, и, как не парадоксально, себя самого. MFT поделен на записи фиксированного размера (обычно 1 Кбайт), и каждая запись соответствует какому либо файлу (в общем смысле этого слова). Первые 16 файлов носят служебный характер и недоступны операционной системе — они называются метафайлами, причем самый первый метафайл — сам MFT. Эти первые 16 элементов MFT — единственная часть диска, имеющая фиксированное положение. Интересно, что вторая копия первых трех записей, для надежности — они очень важны — хранится ровно посередине диска. Остальной MFT-файл может располагаться, как и любой другой файл, в произвольных местах диска — восстановить его положение можно с помощью его самого, «зацепившись» за самую основу — за первый элемент MFT.

Метафайлы

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

Метафайлы находятся корневом каталоге NTFS диска — они начинаются с символа имени «$», хотя получить какую-либо информацию о них стандартными средствами сложно. Любопытно, что и для этих файлов указан вполне реальный размер — можно узнать, например, сколько операционная система тратит на каталогизацию всего вашего диска, посмотрев размер файла $MFT. В следующей таблице приведены используемые в данный момент метафайлы и их назначение.

$MFTсам MFT
$MFTmirrкопия первых 16 записей MFT, размещенная посередине диска
$LogFileфайл поддержки журналирования (см. ниже)
$Volumeслужебная информация — метка тома, версия файловой системы, т. д.
$AttrDefсписок стандартных атрибутов файлов на томе
$.корневой каталог
$Bitmapкарта свободного места тома
$Bootзагрузочный сектор (если раздел загрузочный)
$Quotaфайл, в котором записаны права пользователей на использование дискового пространства (начал работать лишь в NT5)
$Upcaseфайл — таблица соответствия заглавных и прописных букв в имен файлов на текущем томе. Нужен в основном потому, что в NTFS имена файлов записываются в Unicode, что составляет 65 тысяч различных символов, искать большие и малые эквиваленты которых очень нетривиально.

Файлы и потоки

Итак, у системы есть файлы — и ничего кроме файлов. Что включает в себя это понятие на NTFS?

  • Прежде всего, обязательный элемент — запись в MFT, ведь, как было сказано ранее, все файлы диска упоминаются в MFT. В этом месте хранится вся информация о файле, за исключением собственно данных. Имя файла, размер, положение на диске отдельных фрагментов, и т. д. Если для информации не хватает одной записи MFT, то используются несколько, причем не обязательно подряд.
  • Опциональный элемент — потоки данных файла. Может показаться странным определение «опциональный», но, тем не менее, ничего странного тут нет. Во-первых, файл может не иметь данных — в таком случае на него не расходуется свободное место самого диска. Во-вторых, файл может иметь не очень большой размер. Тогда идет в ход довольно удачное решение: данные файла хранятся прямо в MFT, в оставшемся от основных данных месте в пределах одной записи MFT. Файлы, занимающие сотни байт, обычно не имеют своего «физического» воплощения в основной файловой области — все данные такого файла хранятся в одном месте — в MFT.

Довольно интересно обстоит дело и с данными файла. Каждый файл на NTFS, в общем-то, имеет несколько абстрактное строение — у него нет как таковых данных, а есть потоки (streams). Один из потоков и носит привычный нам смысл — данные файла. Но большинство атрибутов файла — тоже потоки! Таким образом, получается, что базовая сущность у файла только одна — номер в MFT, а всё остальное опционально. Данная абстракция может использоваться для создания довольно удобных вещей — например, файлу можно «прилепить» еще один поток, записав в него любые данные — например, информацию об авторе и содержании файла, как это сделано в Windows 2000 (самая правая закладка в свойствах файла, просматриваемых из проводника). Интересно, что эти дополнительные потоки не видны стандартными средствами: наблюдаемый размер файла — это лишь размер основного потока, который содержит традиционные данные. Можно, к примеру, иметь файл нулевой длинны, при стирании которого освободится 1 Гбайт свободного места — просто потому, что какая-нибудь хитрая программа или технология прилепила в нему дополнительный поток (альтернативные данные) гигабайтового размера. Но на самом деле в текущий момент потоки практически не используются, так что опасаться подобных ситуаций не следует, хотя гипотетически они возможны. Просто имейте в виду, что файл на NTFS — это более глубокое и глобальное понятие, чем можно себе вообразить просто просматривая каталоги диска. Ну и напоследок: имя файла может содержать любые символы, включая полый набор национальных алфавитов, так как данные представлены в Unicode — 16-битном представлении, которое дает 65535 разных символов. Максимальная длина имени файла — 255 символов.

Каталоги

Каталог на NTFS представляет собой специфический файл, хранящий ссылки на другие файлы и каталоги, создавая иерархическое строение данных на диске. Файл каталога поделен на блоки, каждый из которых содержит имя файла, базовые атрибуты и ссылку на элемент MFT, который уже предоставляет полную информацию об элементе каталога. Внутренняя структура каталога представляет собой бинарное дерево. Вот что это означает: для поиска файла с данным именем в линейном каталоге, таком, например, как у FAT-а, операционной системе приходится просматривать все элементы каталога, пока она не найдет нужный. Бинарное же дерево располагает имена файлов таким образом, чтобы поиск файла осуществлялся более быстрым способом — с помощью получения двухзначных ответов на вопросы о положении файла. Вопрос, на который бинарное дерево способно дать ответ, таков: в какой группе, относительно данного элемента, находится искомое имя — выше или ниже? Мы начинаем с такого вопроса к среднему элементу, и каждый ответ сужает зону поиска в среднем в два раза. Файлы, скажем, просто отсортированы по алфавиту, и ответ на вопрос осуществляется очевидным способом — сравнением начальных букв. Область поиска, суженная в два раза, начинает исследоваться аналогичным образом, начиная опять же со среднего элемента.

Вывод — для поиска одного файла среди 1000, например, FAT придется осуществить в среднем 500 сравнений (наиболее вероятно, что файл будет найден на середине поиска), а системе на основе дерева — всего около 12-ти (2^10 = 1024). Экономия времени поиска налицо. Не стоит, однако думать, что в традиционных системах (FAT) всё так запущено: во-первых, поддержание списка файлов в виде бинарного дерева довольно трудоемко, а во-вторых — даже FAT в исполнении современной системы (Windows2000 или Windows98) использует сходную оптимизацию поиска. Это просто еще один факт в вашу копилку знаний. Хочется также развеять распространенное заблуждение (которое я сам разделял совсем еще недавно) о том, что добавлять файл в каталог в виде дерева труднее, чем в линейный каталог: это достаточно сравнимые по времени операции — дело в том, что для того, чтобы добавить файл в каталог, нужно сначала убедится, что файла с таким именем там еще нет 🙂 — и вот тут-то в линейной системе у нас будут трудности с поиском файла, описанные выше, которые с лихвой компенсируют саму простоту добавления файла в каталог.

Какую информацию можно получить, просто прочитав файл каталога? Ровно то, что выдает команда dir. Для выполнения простейшей навигации по диску не нужно лазить в MFT за каждым файлом, надо лишь читать самую общую информацию о файлах из файлов каталогов. Главный каталог диска — корневой — ничем не отличается об обычных каталогов, кроме специальной ссылки на него из начала метафайла MFT.

Журналирование

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

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

Пример 2: более сложный случай — идет запись данных на диск. Вдруг, бах — отключается питание и система перезагружается. На какой фазе остановилась запись, где есть данные, а где чушь? На помощь приходит другой механизм системы — журнал транзакций. Дело в том, что система, осознав свое желание писать на диск, пометила в метафайле $LogFile это свое состояние. При перезагрузке это файл изучается на предмет наличия незавершенных транзакций, которые были прерваны аварией и результат которых непредсказуем — все эти транзакции отменяются: место, в которое осуществлялась запись, помечается снова как свободное, индексы и элементы MFT приводятся в с состояние, в котором они были до сбоя, и система в целом остается стабильна. Ну а если ошибка произошла при записи в журнал? Тоже ничего страшного: транзакция либо еще и не начиналась (идет только попытка записать намерения её произвести), либо уже закончилась — то есть идет попытка записать, что транзакция на самом деле уже выполнена. В последнем случае при следующей загрузке система сама вполне разберется, что на самом деле всё и так записано корректно, и не обратит внимания на «незаконченную» транзакцию.

И все-таки помните, что журналирование — не абсолютная панацея, а лишь средство существенно сократить число ошибок и сбоев системы. Вряд ли рядовой пользователь NTFS хоть когда-нибудь заметит ошибку системы или вынужден будет запускать chkdsk — опыт показывает, что NTFS восстанавливается в полностью корректное состояние даже при сбоях в очень загруженные дисковой активностью моменты. Вы можете даже оптимизировать диск и в самый разгар этого процесса нажать reset — вероятность потерь данных даже в этом случае будет очень низка. Важно понимать, однако, что система восстановления NTFS гарантирует корректность файловой системы, а не ваших данных. Если вы производили запись на диск и получили аварию — ваши данные могут и не записаться. Чудес не бывает.

Сжатие

Файлы NTFS имеют один довольно полезный атрибут — «сжатый». Дело в том, что NTFS имеет встроенную поддержку сжатия дисков — то, для чего раньше приходилось использовать Stacker или DoubleSpace. Любой файл или каталог в индивидуальном порядке может хранится на диске в сжатом виде — этот процесс совершенно прозрачен для приложений. Сжатие файлов имеет очень высокую скорость и только одно большое отрицательное свойство — огромная виртуальная фрагментация сжатых файлов, которая, правда, никому особо не мешает. Сжатие осуществляется блоками по 16 кластеров и использует так называемые «виртуальные кластеры» — опять же предельно гибкое решение, позволяющее добиться интересных эффектов — например, половина файла может быть сжата, а половина — нет. Это достигается благодаря тому, что хранение информации о компрессированности определенных фрагментов очень похоже на обычную фрагментацию файлов: например, типичная запись физической раскладки для реального, несжатого, файла:

кластеры файла с 1 по 43-й хранятся в кластерах диска начиная с 400-го

кластеры файла с 44 по 52-й хранятся в кластерах диска начиная с 8530-го…

Физическая раскладка типичного сжатого файла:

кластеры файла с 1 по 9-й хранятся в кластерах диска начиная с 400-го

кластеры файла с 10 по 16-й нигде не хранятся

кластеры файла с 17 по 18-й хранятся в кластерах диска начиная с 409-го

кластеры файла с 19 по 36-й нигде не хранятся

Видно, что сжатый файл имеет «виртуальные» кластеры, реальной информации в которых нет. Как только система видит такие виртуальные кластеры, она тут же понимает, что данные предыдущего блока, кратного 16-ти, должны быть разжаты, а получившиеся данные как раз заполнят виртуальные кластеры — вот, по сути, и весь алгоритм.

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

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

Права файловой системы NTFS неразрывно связаны с самой системой — то есть они, вообще говоря, необязательны к соблюдению другой системой, если ей дать физический доступ к диску. Для предотвращения физического доступа в Windows2000 (NT5) всё же ввели стандартную возможность — об этом см. ниже. Система прав в своем текущем состоянии достаточно сложна, и я сомневаюсь, что смогу сказать широкому читателю что-нибудь интересное и полезное ему в обычной жизни. Если вас интересует эта тема — вы найдете множество книг по сетевой архитектуре NT, в которых это описано более чем подробно.

На этом описание строение файловой системы можно закончить, осталось описать лишь некоторое количество просто практичных или оригинальных вещей.

Hard Links

Эта штука была в NTFS с незапамятных времен, но использовалась очень редко — и тем не менее: Hard Link — это когда один и тот же файл имеет два имени (несколько указателей файла-каталога или разных каталогов указывают на одну и ту же MFT запись). Допустим, один и тот же файл имеет имена 1.txt и 2.txt: если пользователь сотрет файл 1, останется файл 2. Если сотрет 2 — останется файл 1, то есть оба имени, с момента создания, совершенно равноправны. Файл физически стирается лишь тогда, когда будет удалено его последнее имя.

Symbolic Links (NT5)

Гораздо более практичная возможность, позволяющая делать виртуальные каталоги — ровно так же, как и виртуальные диски командой subst в DOSе. Применения достаточно разнообразны: во-первых, упрощение системы каталогов. Если вам не нравится каталог Documents and settingsAdministratorDocuments, вы можете прилинковать его в корневой каталог — система будет по прежнему общаться с каталогом с дремучим путем, а вы — с гораздо более коротким именем, полностью ему эквивалентным. Для создания таких связей можно воспользоваться программой junction (junction.zip, 15 Кб), которую написал известный специалист Mark Russinovich. Программа работает только в NT5 (Windows 2000), как и сама возможность.

Для удаления связи можно воспользоваться стандартной командой rd.
ВНИМАНИЕ: Попытка уделения связи с помощью проводника или других файловых менеджеров, не понимающих виртуальную природу каталога (например, FAR), приведет к удалению данных, на которые ссылается ссылка! Будьте осторожны.

Шифрование (NT5)

Полезная возможность для людей, которые беспокоятся за свои секреты — каждый файл или каталог может также быть зашифрован, что не даст возможность прочесть его другой инсталляцией NT. В сочетании со стандартным и практически непрошибаемым паролем на загрузку самой системы, эта возможность обеспечивает достаточную для большинства применений безопасность избранных вами важных данных.Часть 2. Особенности дефрагментации NTFS

Вернемся к одному достаточно интересному и важному моменту — фрагментации и дефрагментации NTFS. Дело в том, что ситуация, сложившаяся с этими двумя понятиями в настоящий момент, никак не может быть названа удовлетворительной. В самом начале утверждалось, что NTFS не подвержена фрагментации файлов. Это оказалось не совсем так, и утверждение сменили — NTFS препятствует фрагментации. Оказалось, что и это не совсем так. То есть она, конечно, препятствует, но толк от этого близок к нулю… Сейчас уже понятно, что NTFS — система, которая как никакая другая предрасположена к фрагментации, что бы ни утверждалось официально. Единственное что — логически она не очень от этого страдает. Все внутренние структуры построены таким образом, что фрагментация не мешает быстро находить фрагменты данных. Но от физического последствия фрагментации — лишних движений головок — она, конечно, не спасает. И поэтому — вперед и с песней.

К истокам проблемы

Как известно, система сильнее всего фрагментирует файлы когда свободное место кончается, когда приходится использовать мелкие дырки, оставшиеся от других файлов. Тут возникает первое свойство NTFS, которое прямо способствует серьезной фрагментации.

Диск NTFS поделен на две зоны. В начала диска идет MFT зона — зона, куда растет MFT, Master File Table. Зона занимает минимум 12% диска, и запись данных в эту зону невозможна. Это сделано для того, чтобы не фрагментировался хотя бы MFT. Но когда весь остальной диск заполняется — зона сокращается ровно в два раза :). И так далее. Таким образом мы имеем не один заход окончания диска, а несколько. В результате если NTFS работает при диске, заполненном на около 90% — фрагментация растет как бешенная.

Попутное следствие — диск, заполненный более чем на 88%, дефрагментировать почти невозможно — даже API дефрагментации не может перемещать данные в MFT зону. Может оказаться так, что у нас не будет свободного места для маневра.

Далее. NTFS работает себе и работает, и всё таки фрагментируется — даже в том случае, если свободное место далеко от истощения. Этому способствует странный алгоритм нахождения свободного места для записи файлов — второе серьезное упущение. Алгоритм действий при любой записи такой: берется какой-то определенный объем диска и заполняется файлом до упора. Причем по очень интересному алгоритму: сначала заполняются большие дырки, потом маленькие. Т.е. типичное распределение фрагментов файла по размеру на фрагментированной NTFS выглядит так (размеры фрагментов):

16 — 16 — 16 — 16 — 16 — [скачек назад] — 15 — 15 — 15 — [назад] — 14 — 14 — 14 …. 1 — 1 — 1 -1 — 1…

Так процесс идет до самых мелких дырок в 1 кластер, несмотря на то, что на диске наверняка есть и гораздо более большие куски свободного места.

Вспомните сжатые файлы — при активной перезаписи больших объемов сжатой информации на NTFS образуется гигантское количество «дырок» из-за перераспределения на диске сжатых объемов — если какой-либо участок файла стал сжиматься лучше или хуже, его приходится либо изымать из непрерывной цепочки и размещать в другом месте, либо стягивать в объеме, оставляя за собой дырку.

Смысл в сего этого вступления в пояснении того простого факта, что никак нельзя сказать, что NTFS препятствует фрагментации файлов. Наоборот, она с радостью их фрагментирует. Фрагментация NTFS через пол года работы доведет до искреннего удивления любого человека, знакомого с работой файловой системой. Поэтому приходится запускать дефрагментатор. Но на этом все наши проблемы не заканчиваются, а, увы, только начинаются.

Средства решения?

В NT существует стандартное API дефрагментации. Обладающее интересным ограничением для перемещения блоков файлов: за один раз можно перемещать не менее 16 кластеров (!), причем начинаться эти кластеры должны с позиции, кратной 16 кластерам в файле. В общем, операция осуществляется исключительно по 16 кластеров. Следствия:

  1. В дырку свободного места менее 16 кластеров нельзя ничего переместить (кроме сжатых файлов, но это неинтересные в данный момент тонкости).
  2. Файл, будучи перемещенный в другое место, оставляет после себя (на новом месте) «временно занятое место», дополняющее его по размеру до кратности 16 кластерам.
  3. При попытке как-то неправильно (»не кратно 16») переместить файл результат часто непредсказуем. Что-то округляется, что-то просто не перемещается… Тем не менее, всё место действия щедро рассыпается «временно занятым местом».

«Временно занятое место» служит для облегчения восстановления системы в случае аппаратного сбоя и освобождается через некоторое время, обычно где-то пол минуты.

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

  • Вынимание файлов из MFT зоны. Не специально — просто обратно туда их положить не представляется возможным 🙂 Безобидная фаза, и даже в чем то полезная.
  • Дефрагментация файлов. Безусловно, полезный процесс, несколько, правда, осложняемый ограничениями кратности перемещений — файлы часто приходится перекладывать сильнее, чем это было бы логично сделать по уму.
  • Дефрагментация MFT, виртуалки (pagefile.sys) и каталогов. Возможна через API только в Windows2000, иначе — при перезагрузке, отдельным процессом, как в старом Diskeeper-е.
  • Складывание файлов ближе к началу — так называемая дефрагментация свободного места. Вот это — воистину страшный процесс.

Допустим, мы хотим положить файлы подряд в начало диска. Кладем один файл. Он оставляет хвост занятости дополнения до кратности 16. Кладем следующий — после хвоста, естественно. Через некоторое время, по освобождению хвоста, имеем дырку Таким образом, имеется два примерно равнозначных варианта. Первый — часто оптимизировать диск таким дефрагментатором, смиряясь при этом с дикой фрагментацией заново созданных файлов. Второй вариант — вообще ничего не трогать, и смириться с равномерной, но гораздо более слабой фрагментацией всех файлов на диске.

Пока есть всего один дефрагментатор, который игнорирует API дефрагментации и работает как-то более напрямую — Norton Speeddisk 5.0 для NT. Когда его пытаются сравнить со всеми остальными — Diskeeper, O&O defrag, т. д. — не упоминают этого главного, самого принципиального, отличия. Просто потому, что эта проблема тщательно скрывается, по крайней мере уж точно не афишируется на каждом шагу. Speeddisk — единственная на сегодняшний день программа, которая может оптимизировать диск полностью, не создавая маленьких незаполненных фрагментов свободного места. Стоит добавить также, что при помощи стандартного API невозможно дефрагментировать тома NTFS с кластером более 4 Кбайт, а SpeedDisk и это может.

К сожалению, в Windows 2000 поместили дефрагментатор, который работает через API, и, соответственно, плодит дырки Как некоторый вывод из всего этого: все остальные дефрагментаторы при одноразовом применении просто вредны. Если вы запускали его хоть раз — нужно запускать его потом хотя бы раз в месяц, чтобы избавится от фрагментации новоприбывающих файлов. В этом основная суть сложности дефрагментации NTFS теми средствами, которые сложились исторически.Часть 3. Что выбрать?

Любая из представленных ныне файловых систем уходит своими корнями в глубокое прошлое — еще к 80-м годам. Да, NTFS, как это не странно — очень старая система! Дело в том, что долгое время персональные компьютеры пользовались лишь операционной системой DOS, которой и обязана своим появлением FAT. Но параллельно разрабатывались и тихо существовали системы, нацеленные на будущее. Две таких системы, получившие всё же широкое признание — NTFS, созданная для операционной системы Windows NT 3.1 еще в незапамятные времена, и HPFS — верная спутница OS/2.

Внедрение новых систем шло трудно — еще в 95м году, с выходом Windows95, ни у кого не было и мыслей о том, что что-то нужно менять — FAT получил второе дыхание посредством налепленной сверху заплатки «длинные имена», реализация которых там хоть и близка к идеально возможной без изменения системы, но всё же довольно бестолкова. Но в последующие годы необходимость перемен назрела окончательно, поскольку естественные ограничения FAT стали давать о себе знать. FAT32, появившаяся в Windows 95 OSR2, просто сдвинула рамки — не изменив сути системы, которая просто не дает возможности организовать эффективную работу с большим количеством данных.

HPFS (High Performance File System), активно применяемая до сих пор пользователями OS/2, показала себя достаточно удачной системой, но и она имела существенные недостатки — полное отсутствие средств автоматической восстанавливаемости, излишнюю сложность организации данных и невысокую гибкость.

NTFS же долго не могла завоевать персональные компьютеры из-за того, что для организации эффективной работы с её структурами данных требовались значительные объемы памяти. Системы с 4 или 8 Мбайт (стандарт 95-96 годов) были просто неспособны получить хоть какой-либо плюс от NTFS, поэтому за ней закрепилась не очень правильная репутация медленной и громоздкой системы. На самом деле это не соответствует действительности — современные компьютерные системы с памятью более 64 Мб получают просто огромный прирост производительности от использования NTFS.

В данной таблице сведены воедино все существенные плюсы и минусы распространенных в наше время систем, таких как FAT32, FAT и NTFS. Вряд ли разумно обсуждать другие системы, так как в настоящее время 97% пользователей делают выбор между Windows98, Windows NT4.0 и Windows 2000 (NT5.0), а других вариантов там просто нет.

FAT

FAT32

NTFS

Системы, её поддерживающиеDOS, Windows9Х, NT всех версийWindows98, NT5NT4, NT5
Максимальный размер тома2 Гбайтпрактически неограниченпрактически неограничен
Макс. число файлов на томепримерно 65 тысячпрактически не ограниченопрактически не ограничено
Имя файлас поддержкой длинных имен — 255 символов, системный набор символовс поддержкой длинных имен — 255 символов, системный набор символов255 символов, любые символы любых алфавитов (65 тысяч разных начертаний)
Возможные атрибуты файлаБазовый наборБазовый наборвсё, что придет в голову производителям программного обеспечения
Безопасностьнетнетда (начиная с NT5.0 встроена возможность физически шифровать данные)
Сжатиенетнетда
Устойчивость к сбоямсредняя (система слишком проста и поэтому ломаться особо нечему :))плохая (средства оптимизации по скорости привели к появлению слабых по надежности мест)полная — автоматическое восстановление системы при любых сбоях (не считая физические ошибки записи, когда пишется одно, а на самом деле записывается другое)
Экономичностьминимальная (огромные размеры кластеров на больших дисках)улучшена за счет уменьшения размеров кластеровмаксимальна. Очень эффективная и разнообразная система хранения данных
Быстродействиевысокое для малого числа файлов, но быстро уменьшается с появлением большого количества файлов в каталогах. результат — для слабо заполненных дисков — максимальное, для заполненных — плохоеполностью аналогично FAT, но на дисках большого размера (десятки гигабайт) начинаются серьезные проблемы с общей организацией данныхсистема не очень эффективна для малых и простых разделов (до 1 Гбайт), но работа с огромными массивами данных и внушительными каталогами организована как нельзя более эффективно и очень сильно превосходит по скорости другие системы

Хотелось бы сказать, что если ваша операционная система — NT (Windows 2000), то использовать какую-либо файловую систему, отличную от NTFS — значит существенно ограничивать свое удобство и гибкость работы самой операционной системы. NT, а особенно Windows 2000, составляет с NTFS как бы две части единого целого — множество полезных возможностей NT напрямую завязано на физическую и логическую структуру файловой системы, и использовать там FAT или FAT32 имеет смысл лишь для совместимости — если у вас стоит задача читать эти диски из каких-либо других систем.

Хотелось бы выразить искреннюю признательность Андрею Шабалину, без которого эта статья просто не была бы написана, а даже будучи написанной, содержала бы много досадных неточностей

Продолжение читайте в статье «Надежность дисковой системы NT»

Виртуальная файловая система — Википедия

Материал из Википедии — свободной энциклопедии

Виртуальная файловая система (англ. virtual file system — VFS) или виртуальный коммутатор файловой системы (англ. virtual filesystem switch) — уровень абстракции поверх конкретной реализации файловой системы. Целью VFS является обеспечение единообразного доступа клиентских приложений к различным типам файловых систем. VFS может быть использована для доступа к локальным устройствам и файлам (fat32, ext4, ntfs), сетевым устройствам и файлам на них (nfs), а также к устройствам, не предназначенным для хранения данных (procfs[1]). VFS декларирует программный интерфейс между ядром и конкретной файловой системой, таким образом, для добавления поддержки новой файловой системы не требуется вносить изменений в ядро операционной системы.

Одна из первых виртуальных файловых систем в Unix-подобных ОС была реализована Sun Microsystems в SunOS 2.0 в 1985 году. Это позволило системным вызовам Unix получить прозрачный доступ к локальной UFS и удалённой NFS. По этой причине вендоры Unix-систем, получившие лицензию на код NFS, часто копировали дизайн VFS от Sun. Другие файловые системы могут быть подключены так же: появилась реализация файловой системы MS-DOS FAT, разработанная в Sun, использовавшая SunOS VFS, хотя она не поставлялась в качестве продукта до SunOS 4.1. Реализация SunOS лежит в основе механизма VFS в System V Release 4.

Джон Хейдеманн (John Heidemann) разработал стековую VFS под SunOS 4.0 для экспериментальной файловой системы Ficus. Этот проект предусматривал повторное использование кода в файловых системах с различной, но похожей семантикой (например, шифрованная файловая система может использовать систему имён и код для хранения данных нешифрованной файловой системы). В своей диссертации Хейдеманн адаптировал эту работу для использования в 4.4BSD. Наследники этого кода лежат в основе реализаций современных файловых систем в операционных системах, производных от BSD, включая Mac OS X.

Как было указано ранее, основное предназначение современных VFS — организация единого интерфейса доступа пользователя к различным файловым системам, драйверы которых загружены в память компьютера. Для реализации этой цели от ядра операционной системы требуется создание единого программного интерфейса внутренних вызовов ядра. Данный интерфейс должен быть достаточно широким в плане функциональности, поскольку он будет использоваться для доступа к очень большому числу различных (в плане свойств и функционала) файловых систем. Помимо стандартных для файлов вызовов на открытие/закрытие и чтение/запись, от VFS требуется иметь интерфейс для ревалидации (от англ. revalidation) данных, работы с кэшами, посылки специальных запросов (IOCTL — Input/Output Control), а также для организации текущей сессии работы с открытым файлом.

Для работы с VFS драйверу файловой системы необходимо реализовать обозначенные программные вызовы с учётом специфики работы данной файловой системы. Драйвер может поддерживать лишь часть вызовов API VFS, в этом случае ядро ОС должно корректно «заглушить» соответствующие необрабатываемые запросы от пользователя.

Фактически, интерфейс VFS, предоставляемый драйверам файловых систем, может является определением к самому понятию файловой системы. Любой драйвер, реализующий функционал API VFS и загруженный в ядро правильным образом, становится драйвером файловой системы, безотносительно того, используется ли он для доступа к файлам или нет. Более того, сама функциональность файловой системы может быть даже не в драйвере, а в пространстве пользователя. Ярким примером такого подхода является файловая система в пользовательском пространстве (Filesystem in Userspace — FUSE).

В OS/2 и Microsoft Windows механизм виртуальной файловой системы называется устанавливаемой файловой системой

(Installable File System).

В Linux механизм VFS, как и весь код ядра, является открытым. Это позволяет разработчикам файловых систем писать их драйвера максимально эффективно. Как результат — Linux поддерживает монтирование подавляющего большинства современных файловых систем.

В Unix файловые системы включают File System Switch в System V Release 3 и в Ultrix.

  • 9P — протокол файловой системы Plan 9

Э. Таненбаум, Х. Бос Современные операционные системы. — 4 изд. — СПб.: Питер, 2018.

Файловая система — что такое? Файловая система NTFS, FAT, RAW, UDF

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

Описание общих характеристик файловой системы

ФС — это, как уже указано выше, часть операционной системы, которая связана непосредственно с размещением, удалением, перемещением электронной информации на определенном носителе, а также безопасностью ее дальнейшего использования в будущем. Именно это ресурс также применим в случаях, когда требуется восстановление утерянной информации по причине программного сбоя, как такового. То есть это основной инструмент работы с электронными файлами.

Виды файловой системы

На каждом компьютерном устройстве применим особый тип ФС. Особо распространенные следующие ее типы:

— предназначенная для жестких дисков;
— предназначенная для магнитных лент;
— предназначенная для оптических носителей;
— виртуальная;
— сетевая.

Естественно, что основной логической единицей работы с электронными данными является файл, под которым подразумевается документ с систематизированной в нем информацией определенного характера, который имеет свое наименование, что облегчает работу пользователя с большим потоком электронных документов.
Итак, абсолютно вся, используемая операционкой инфа, трансформируется в файлы, независимо от того текст это или изображения, или звук, или видео, или фото. Помимо всего прочего драйвера и программные библиотеки, тоже имеют транскрипцию оных.

У каждой информационной единицы есть имя, определенное расширение, размер, свойственные характеристики, тип. А вот ФС – это их совокупность, а также принципы работы со всеми ними.

В зависимости от того какие свойственные особенности присущи системе, с такими данными она и будет эффективно работать. А это и есть предпосылкой классификации ее на типы и виды.

Взгляд на файловую систему с точки зрения программирования

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

У современных приложений, которые имеют стандарт работы клиент-сервер, требования к ФС очень высоки. Ведь современные системы просто обязаны обеспечивать самый эффективнейший доступ ко всем имеющимся типам электронных единиц, а также оказывать колоссальную поддержку носителей больших объемов, а также устанавливать защиту всех данных от нежелательного доступа иными пользователями, а также обеспечивать целостность информации, хранимой в электронном формате.

Ниже мы рассмотрим все существующие на сегодня ФС и их достоинства и недостатки.

ФС — FAT

Это самый древний тип файловой системы, который был разработан еще в далеком 1977 году. Она работала с операционкой ОС 86-DOS и не способна работать с жесткими носителями информации, и рассчитана на гибкие их типы и хранение информации до одного мегабайта. Если ограничение размера инфы сегодня не актуально, то иные показатели остались востребованными в неизменном виде.

Эта файловая система использовалась ведущей компанией разработчиком программных приложений – Майкрософт для такой операционки, как ОС MS-DOS 1.0.

Файлы этой системы имеют ряд характерных свойств:

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

С самого начала разработки файловая система FAT была направлена на работу с операционкой ОС DOS, она не была заинтересована в сохранении данных о пользователе или владельце информации.

Благодаря всевозможным модификациям этой ФС, она стала самой востребованной в современное время и на ее основе работают самые инновационные операционные системы.

Именно данная файловая система способна сохранять файлы в неизменном виде, если компьютерная техника выключилась неверно в силу, например, отсутствия зарядки батареи или выключения света.

Во многих операционных системах, с которыми работает FAT, лежат определенные программные утилиты, корректирующие и проверяющие само дерево содержания ФС и файлы.

ФС — NTFS

С операционкой ОС Windows NT работает современная файловая система NTFS, в принципе на нее она и была нацелена. В ее составе действует утилита convert, которая отвечает за конвертацию томов с формата HPFS или FAT, в формат томов NTFS.

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

Эта файловая система позволяет создавать информационные файлы с именами длинной в 255 символов.

Если операционка, которая работает с данной файловой системой, дает сбой, то не нужно переживать за сохранность всех файлов. Они остаются в целостности и невредимости, поскольку этот тип файловой системы имеет свойство самовосстанавливаться.

Особенностью ФС NTFS является ее структура, которая представлена в виде определенной таблицы. Первые шестнадцать записей в реестре — это содержание самой файловой системы. Каждая отдельная электронная единица тоже имеет вид таблицы, которая содержит информацию о таблице, зеркальный файл в формате MFT, файл регистрации, используемый при необходимости восстановления информации и последующие данные – это информация о самом файле и его данные, которые были сохранены непосредственно на жестком диске.

Все выполняемые команды с файлами имеют свойство сохраняться, что помогает впоследствии восстанавливаться системе самостоятельно после сбоя операционной системы, с которой она работает.

ФС — EFS

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

ФС – RAW

Файловые элементы – это самые уязвимые единицы программирования. Ведь именно они и являются информацией, которая хранится на дисках компьютерной техники. Они могут повреждаться, удаляться, скрываться. В общем, работа пользователя только и нацелена на создание, сохранение и перемещение оных.
Операционная система не всегда показывает идеальные свойства своей работы и имеет характерность выходить из строя. Происходит это по многим причинам. Но сейчас не об этом.

Очень многие пользователи сталкиваются с уведомлением о том, что повреждена система RAW. Это действительно ФС или нет? Таким вопросом задаются многие. Оказывается, это не совсем так. Если объяснять на уровне языка программирования, то RAW – это ошибка, а именно логическая ошибка, которая внедрена уже в операционку Windows в целях обезопасить ее от выхода из строя. Если техника выдает какие-то сообщения по поводу RAW, значит нужно иметь в виду, что под угрозой структура файловой системы, которая работает неверно либо ей грозит постепенное разрушение.

Если такая проблема на лицо, то вы не сможете получить доступ ни к одному файлу в компе, а также он откажется выполнять и иные операционные команды.

ФС – UDF

Это файловая система для оптических дисков, котрая имеет свои особенности:

— наименования файлов не должны превышать 255 символов;
— именной регистр может быть как нижним, так и верхним.

Работает она с операционкой Windows XP.

ФС — EXFAT

И еще одна современная файловая система – EXFAT, которая является неким посредническим звеном между Windows и Linux, обеспечивающим эффективную трансформацию файлов из одной системы в иную, поскольку файлообменники у них разные. Используется она на переносных накопителях информации, таких как флешки.

Из выше написанного, можно сделать верный вывод. Каждая охарактеризованная ФС отличается своими особенностями, создает определенные форматы файлов. Вот почему иногда не получается получить доступ к каким-то файлам, значит они созданы совсем в иной файловой системе, которую ваша распознать не может.
Надеемся, что изложенная в этой статье информация поможет вам избежать многих проблем во время работы с информационными файлами. Теперь вы самостоятельно можете определить, с какой и ФС работает ОС вашего компьютера, и с какими данными вам приходится работать ежедневно в потоке их систематической оперативной обработки.

Файловая система — это… Что такое Файловая система?

Question book-4.svgВ этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена.
Вы можете отредактировать эту статью, добавив ссылки на авторитетные источники.
Эта отметка установлена 15 мая 2011.

Фа́йловая систе́ма (англ. file system) — порядок, определяющий способ организации, хранения и именования данных на носителях информации в компьютерах, а также в другом электронном оборудовании: цифровых фотоаппаратах, мобильных телефонах и т. п. Файловая система определяет формат содержимого и способ физического хранения информации, которую принято группировать в виде файлов. Конкретная файловая система определяет размер имени файла (папки), максимальный возможный размер файла и раздела, набор атрибутов файла. Некоторые файловые системы предоставляют сервисные возможности, например, разграничение доступа или шифрование файлов.

Файловая система связывает носитель информации с одной стороны и API для доступа к файлам — с другой. Когда прикладная программа обращается к файлу, она не имеет никакого представления о том, каким образом расположена информация в конкретном файле, так же, как и на каком физическом типе носителя (CD, жёстком диске, магнитной ленте, блоке флеш-памяти или другом) он записан. Всё, что знает программа — это имя файла, его размер и атрибуты. Эти данные она получает от драйвера файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жёстком диске).

С точки зрения операционной системы (ОС), весь диск представляет собой набор кластеров (как правило, размером 512 байт и больше)[1]. Драйверы файловой системы организуют кластеры в файлы и каталоги (реально являющиеся файлами, содержащими список файлов в этом каталоге). Эти же драйверы отслеживают, какие из кластеров в настоящее время используются, какие свободны, какие помечены как неисправные.

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

Иерархия каталогов

Практически всегда файлы на дисках объединяются в каталоги.

В простейшем случае все файлы на данном диске хранятся в одном каталоге. Такая одноуровневая схема использовалась в CP/M и в первой версии MS-DOS 1.0. Иерархическая файловая система со вложенными друг в друга каталогами впервые появилась в Multics, затем в UNIX.

Wiki.txt
Tornado.jpg
Notepad.exe
(Одноуровневая файловая система)

Каталоги на разных дисках могут образовывать несколько отдельных деревьев, как в DOS/Windows, или же объединяться в одно дерево, общее для всех дисков, как в UNIX-подобных системах.

C:
  \Program files
      \CDEx
           \CDEx.exe
           \CDEx.hlp
           \mppenc.exe
  \Мои документы
      \Wiki.txt
      \Tornado.jpg
D:
  \Music
      \ABBA
           \1974 Waterloo
           \1976 Arrival
               \Money, Money, Money.ogg
           \1977 The Album
(Иерархическая файловая система Windows/DOS)

В UNIX существует только один корневой каталог, а все остальные файлы и каталоги вложены в него. Чтобы получить доступ к файлам и каталогам на каком-нибудь диске, необходимо смонтировать этот диск командой mount. Например, чтобы открыть файлы на CD, нужно, говоря простым языком, сказать операционной системе: «возьми файловую систему на этом компакт-диске и покажи её в каталоге /mnt/cdrom». Все файлы и каталоги, находящиеся на CD, появятся в этом каталоге /mnt/cdrom, который называется точкой монтирования (англ. mount point).[2] В большинстве UNIX-подобных систем съёмные диски (дискеты и CD), флеш-накопители и другие внешние устройства хранения данных монтируют в каталог /mnt, /mount или /media. Unix и UNIX-подобные операционные системы также позволяет автоматически монтировать диски при загрузке операционной системы.

/
    /usr                                  
        /bin                              
            /arch                        
            /ls                         
            /raw                     
        /lib                           
            /libhistory.so.5.2           
            /libgpm.so.1                
    /home                                
        /lost+found                      
            /host.sh                    
        /guest                         
            /Pictures                   
                /example.png        
            /Video                     
                /matrix.avi            
                /news                
                    /lost_ship.mpeg    
(Иерархическая файловая система в Unix и UNIX-подобных операционных системах)

Обратите внимание на использование слешей в файловых системах Windows, UNIX и UNIX-подобных операционных системах (В Windows используется обратный слеш «\», а в UNIX и UNIX-подобных операционных системах простой слеш «/»)

Кроме того, следует отметить, что вышеописанная система позволяет монтировать не только файловые системы физических устройств, но и отдельные каталоги (параметр —bind) или, например, образ ISO (опция loop). Такие надстройки, как FUSE, позволяют также монтировать, например, целый каталог на FTP и ещё очень большое количество различных ресурсов.

Ещё более сложная структура применяется в NTFS и HFS. В этих файловых системах каждый файл представляет собой набор атрибутов. Атрибутами считаются не только традиционные только для чтения, системный, но и имя файла, размер и даже содержимое. Таким образом, для NTFS и HFS то, что хранится в файле, — это всего лишь один из его атрибутов.

Если следовать этой логике, один файл может содержать несколько вариантов содержимого. Таким образом, в одном файле можно хранить несколько версий одного документа, а также дополнительные данные (значок файла, связанная с файлом программа). Такая организация типична для HFS на Macintosh.

Классификация файловых систем

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

  • Для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2 и др. Поскольку доступ к дискам в разы медленнее, чем доступ к оперативной памяти, для прироста производительности во многих файловых системах применяется асинхронная запись изменений на диск. Для этого применяется либо журналирование, например в ext3, ReiserFS, JFS, NTFS, XFS, либо механизм soft updates и др. Журналирование широко распространено в Linux, применяется в NTFS. Soft updates — в BSD системах.
  • Для носителей с последовательным доступом (например, магнитные ленты): QIC и др.
  • Для оптических носителей — CD и DVD: ISO9660, HFS, UDF и др.
  • Виртуальные файловые системы: AEFS и др.
  • Сетевые файловые системы: NFS, CIFS, SSHFS, GmailFS и др.
  • Для флэш-памяти: YAFFS, ExtremeFFS, exFAT.
  • Немного выпадают из общей классификации специализированные файловые системы: ZFS (собственно файловой системой является только часть ZFS), VMFS (т. н. кластерная файловая система, которая предназначена для хранения других файловых систем) и др.

Задачи файловой системы

Основные функции любой файловой системы нацелены на решение следующих задач:

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

В многопользовательских системах появляется ещё одна задача: защита файлов одного пользователя от несанкционированного доступа другого пользователя, а также обеспечение совместной работы с файлами, к примеру, при открытии файла одним из пользователей, для других этот же файл временно будет доступен в режиме «только чтение».

См. также

Примечания

ext — Википедия

Материал из Википедии — свободной энциклопедии

ext
Файловая система Extended file system
Дата представления Апрель 1992 (Linux)
Содержимое папок Table
Размещение файлов битовая карта (свободное пространство), table (метаданные)
Сбойные сектора Table
Права доступа POSIX
Фоновое шифрование Нет

Extended File System (расширенная файловая система), сокращённо ext или extfs — первая файловая система, разработанная специально для ОС на ядре Linux. Представлена в апреле 1992 г. для ядра Linux 0.96c.[1]

Используемая структура метаданных была разработана Реми Кардом (англ.), на создание которой его вдохновила Unix File System (UFS). Целью было преодолеть ограничения файловой системы Minix File System — в новой файловой системе наибольший возможный размер раздела и файла увеличен до 2 Гб,[1] а максимальная длина имени файла — до 255 байт.

ext стала первой файловой системой ОС Linux, расширявшей файловую систему Minix.[2]. В январе 1993 Frank Xia предпринял независимую попытку расширения ФС minix под названием xiafs (автор предлагал также переименовать её в linuxfs), и изначально xiafs казалась более стабильной, чем ext. Однако в xiafs, поддерживающей разделы до 2 ГБ, файлы всё ещё были ограничены объемом в 64 МБ. В отличие от ext с единственной меткой времени, в xiafs поддерживались три метки времени (время создания, модификации и последнего доступа)[3][2][4].

В январе 1993 года на базе ФС ext началось создание расширяемой файловой системы ext2, в которой поддерживались разделы до 2 ТБ и три метки времени. Позже ext2 стала основой для ext3 (2000 год) и ext4 (около 2006 года)[4].

Со временем ext2 вытеснила xiafs и ext благодаря долгосрочной жизнеспособности.

В январе 1997 года поддержка ext и xiafs была окончательно удалена из ядра (с версии 2.1.21)[5][6].

Файловая система — это… Файловые системы: что такое FAT и NTFS. Файловая система Android

Файлы на компьютере создаются и размещаются на базе системных принципов. Благодаря их реализации, пользователь получает возможность комфортно обращаться к нужной информации, не задумываясь о сложных алгоритмах доступа к ней. Каким образом организована работа файловых систем? Какие из них самые популярные сегодня? Каковы различия между файловыми системами, адаптированными для ПК? И теми, что используются в мобильных устройствах — смартфонах или планшетах?

Файловые системы: определение

Согласно распространенному определению, файловая система — это совокупность алгоритмов и стандартов, задействуемых с целью организации эффективного доступа пользователя ПК к данным, размещенным на компьютере. Некоторые специалисты считают ее частью операционной системы. Другие IT-эксперты, признавая тот факт, что она непосредственно связана с ОС, полагают, что файловая система — независимый компонент управления компьютерными данными.

Файловая система это

Каким образом использовались компьютеры до того, как была изобретена файловая система? Информатика — как научная дисциплина — зафиксировала тот факт, что долгое время управление данными осуществлялось посредством структурирования в рамках алгоритмов, заложенных в конкретных программах. Таким образом, один из критериев файловой системы — это наличие стандартов, одинаковых для большинства программ, использующих доступ к данным.

Принципы работы файловых систем

Файловая система — это, прежде всего, механизм, предполагающий задействование аппаратных ресурсов компьютера. Как правило, речь здесь идет о магнитных или лазерных носителях — жестких дисках, CD, DVD, флешках, еще не успевших устареть дискетах. Для того чтобы понять, как соответствующая система работает, определимся с тем, что же такое собственно сам файл.

Согласно общепринятому в среде IT-экспертов определению, это область данных фиксированной величины, выражаемая в базовых единицах измерения информации — байтах. Располагается файл на дисковом носителе, как правило, в виде нескольких связанных между собой блоков, имеющих конкретный «адрес» доступа. Файловая система определяет эти самые координаты и «сообщает» их, в свою очередь, ОС. Которая понятным образом транслирует соответствующие данные пользователю. Происходит обращение к данным с целью считывания их, модифицирования, создания новых. Конкретный алгоритм работы с «координатами» файлов может быть разным. Он зависит от типа компьютера, ОС, специфики хранящихся данных и прочих условий. Потому, есть различные виды файловых систем. Каждая из них оптимизирована для использования в конкретной ОС или для работы с определенными типами данных.

Адаптирование дискового носителя к использованию посредством алгоритмов конкретной файловой системы называется форматированием. Соответствующие аппаратные элементы диска — кластеры — подготавливаются к последующей записи на них файлов, а также чтения их в соответствии со стандартами, заложенными в той или иной системе управления данными. Как поменять файловую систему? В большинстве случаев это можно сделать, только переформатировав носитель данных. Как правило, файлы при этом стираются. Однако есть вариант, при котором, задействуя специальные программы, все же можно, хотя это, как правило, требует большого количества времени, поменять систему управления данными, оставив последние нетронутыми.

Файловые системы работают не без ошибок. Возможны некоторые сбои в организации работы с блоками данных. Но они в большинстве случаев не критичны. Как правило, нет проблем с тем, как исправить файловую систему, устранить ошибки. В ОС Windows для этого, в частности, предусмотрены встроенные программные решения, доступные для любого пользователя. Такие как, например, программа «Проверка диска».

Разновидности

Какие виды файловых систем можно назвать самыми распространенными? Вероятно, в первую очередь те, что используются самой популярной ОС для ПК в мире — Windows. Основные файловые системы Windows — это FAT, FAT32, NTFS и их различные модификации. Наряду с компьютерами популярность обрели смартфоны и планшеты. Большинство из них, если говорить о глобальном рынке и не рассматривать различия в технологических платформах, управляется ОС Android и iOS. Эти ОС задействуют свои алгоритмы работы с данными, отличные от тех, которыми характеризуются файловые системы Windows.

Стандарты, открытые для всех

Отметим, что в последнее время на мировом рынке электроники наблюдается некоторая унификация стандартов в аспекте работы ОС с различными типами данных. Это прослеживается в двух аспектах. Во-первых, на разных устройствах под управлением двух несхожих типов ОС часто используется одна и та же файловая система, в одинаковой степени совместимая с каждой ОС. Во-вторых, современные версии ОС, как правило, способны распознавать не только типичные для себя файловые системы, но и те, что традиционно используются в других ОС — как посредством встроенных алгоритмов, так и с помощью стороннего программного обеспечения. Например, современные версии Linux, как правило, без проблем распознают отмеченные файловые системы для Windows.

Структура файловой системы

Несмотря на то что виды файловых систем представлены в достаточно большом количестве, работают они в целом по очень схожим принципам (общую схему мы изложили выше) и в рамках сходных структурных элементов или объектов. Рассмотрим их. Каковы основные объекты файловой системы?

Один из ключевых — это каталог. Он являет собой изолированную область данных, в которой могут размещаться файлы. Структура каталогов — иерархическая. Что это значит? Один или несколько каталогов могут размещаться в другом. Который, в свою очередь, входит в состав «вышестоящего». Самым «главным» считается корневой каталог. Если говорить о принципах, на базе которых работает файловая система Windows — 7, 8, XP или же другой версии, — корневым каталогом считается логический диск, обозначаемый буквой — как правило, C, D, E (но можно настроить любую, что есть в английском алфавите). Что касается, к примеру, ОС Linux, то там корневым каталогом выступает магнитный носитель в целом. В этой операционной системе и других ОС, основанных на ее принципах — к таковым относится Android — логические диски не используются. Можно ли хранить файлы без каталогов? Да. Но это не очень удобно. Собственно, комфорт в пользовании ПК — одна из причин внедрения в файловых системах принципа распределения данных по каталогам. Называться, кстати, они могут по-разному. В Windows каталоги именуются папками, в Linux — в основном так же. Но традиционное, используемое в течение многих лет название каталогов в этой ОС — «директории». Как и в предшествующих Windows и Linux ОС — DOS, Unix.

Объекты файловой системы

В среде IT-специалистов нет однозначного мнения касательно того, считать ли файл структурным элементом соответствующей системы. Те, кто полагает, что это не совсем корректно, аргументируют свою точку зрения тем, что система вполне может существовать и без файлов. Пусть это с практической точки зрения и бесполезное явление. Даже если на диске никаких файлов не записано, соответствующая система все равно может присутствовать. Как правило, магнитные носители, продаваемые в магазинах, не содержат каких-либо файлов. Но на них уже присутствует соответствующая система. Согласно другой точке зрения, файлы нужно считать неотъемлемой составляющей систем, которыми они управляются. Почему? А потому, что, как считают эксперты, алгоритмы их задействования адаптированы прежде всего под работу именно с файлами в рамках тех или иных стандартов. Ни для чего другого рассматриваемые системы не предназначены.

Еще один элемент, присутствующий в большинстве файловых систем — это ярлык. Он представляет собой область данных, содержащих сведения о размещении конкретного файла в определенном месте. То есть разместить ярлык можно в одном месте диска, однако при этом возможно обеспечение доступа к нужной области данных, которая располагается в другой части носителя. Считать, что ярлыки — это полноценные объекты файловой системы, можно, если условиться, что таковыми являются также и файлы.

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

Имена файлов и каталогов в разных системах

Если условиться, что файлы — это все же составные элементы соответствующих им систем, то стоит рассмотреть их базовую структуру. Что можно отметить в первую очередь? Для удобства организации доступа к ним в большинстве современных систем управления данными предусмотрена двухуровневая структура именования файлов. Первый уровень — это название. Второй — расширение. Возьмем для примера музыкальный файл Dance.mp3. Dance — это название. Mp3 — расширение. Первое призвано раскрывать для пользователя суть содержания файла (а для программы быть ориентиром для быстрого доступа). Второе обозначает тип файла. Если он Mp3, то нетрудно догадаться, что речь идет о музыке. Файлы с расширением Doc — это, как правило, документы, Jpg — картинки, Html — веб-страницы.

Виды файловых систем

Каталоги, в свою очередь, имеют одноуровневую структуру. У них есть только название, расширения нет. Если говорить о различиях между разными видами систем управления данными, то первое, на что следует обратить внимание — это как раз-таки реализуемые в них принципы именования файлов и каталогов. Касательно ОС Windows специфика следующая. В самой популярной в мире операционной системе файлы могут иметь название на любом языке. Максимальная длина, правда, при этом ограничена. Конкретный ее интервал зависит от используемой системы управления данными. Обычно это значения в пределах 200-260 символов.

Общее правило для всех ОС и соответствующих им систем управления данными — в одном каталоге не могут находиться файлы с одинаковыми наименованиями. В Linux при этом присутствует некая «либерализация» этого правила. В одном каталоге могут быть файлы с одинаковыми буквами, но в разном регистре. Например, Dance.mp3 и DANCE.mp3. В ОС Windows это невозможно. Эти же правила установлены также и в аспекте размещения каталогов внутри других.

Адресация файлов и каталогов

Адресация файлов и каталогов — важнейший элемент соответствующей системы. В ОС Windows ее пользовательский формат может выглядеть так: C:/Documents/Music/ — это доступ к каталогу Music. Если нас интересует какой-то конкретный файл, то адрес может выглядеть так: C:/Documents/Music/Dance.mp3. Почему «пользовательский»? Дело в том, что на уровне программно-аппаратного взаимодействия компонентов компьютера структура доступа к файлам гораздо более сложная. Файловая система определяет местоположение файловых блоков и взаимодействует с ОС по большей части в рамках скрытых от пользователя операций. Однако у пользователя ПК крайне редко возникает необходимость пользоваться иными форматами «адресов». Практически всегда доступ к файлам осуществляется в указанном стандарте.

Сравнение файловых систем для Windows

Мы изучили общие принципы функционирования файловых систем. Рассмотрим теперь особенности самых распространенных их видов. В Windows чаще всего используются такие файловые системы, как FAT, FAT32, NTFS, а также exFAT. Первая в этом ряду считается устаревшей. Она, вместе с тем, долгое время была неким флагманом индустрии, но по мере роста технологичности ПК ее возможности перестали удовлетворять запросам пользователей и потребностям в ресурсах со стороны программного обеспечения.

Файловая система определяет

Призванная заменить FAT файловая система — это FAT32. Как считают многие IT-эксперты, сейчас она самая популярная, если говорить о рынке ПК под управлением Windows. Она чаще всего используется при хранении файлов на жестких дисках и флешках. Также можно отметить, что эта система управления данными достаточно регулярно используется в модулях памяти различных цифровых устройств — телефонах, фотоаппаратах. Основное преимущество FAT32, которое выделяют IT-эксперты, таким образом, это универсальность. Несмотря на то что создана была данная файловая система компанией Microsoft, работать с данными в рамках заложенных в ней алгоритмов могут большинство современных ОС, включая те, что инсталлированы на указанные типы цифровой техники.

Есть у системы FAT32 и ряд недостатков. Прежде всего можно отметить ограничение на размер одного взятого файла — он не может быть больше 4 Гб. Также в системе FAT32 нельзя встроенными средствами Windows задать логический диск, размер которого был бы больше 32 Гб. Но это можно сделать, установив дополнительное специализированное ПО.

Другая популярная система управления файлами, что разработана Microsoft — это NTFS. Как считают некоторые IT-эксперты, по большинству параметров она превосходит FAT32. Но этот тезис справедлив, если речь идет о работе компьютера под управлением Windows. Система NTFS не настолько универсальна, как FAT32. Особенности ее функционирования делают использование данной файловой системы не всегда комфортным, в частности, в мобильных устройствах. Одно из ключевых преимуществ NFTS — надежность. Например, в тех случаях, когда у жесткого диска внезапно отключается питание, вероятность того, что файлы повредятся, сводится к минимуму, благодаря предусмотренным в NTFS алгоритмам дублирования доступа к данным.

Одна из новейших файловых систем от Microsoft — exFAT. Наилучшим образом она адаптирована для флешек. Базовые принципы работы в ней те же, что и в FAT32, но присутствует также и значимая модернизация в некоторых аспектах: например, нет никаких ограничений по размеру единичного файла. Вместе с тем система exFAT, как отмечают многие IT-эксперты, в числе тех, что обладают низкой универсальностью. На компьютерах под управлением ОС, отличных от Windows, работа с файлами при использовании exFAT может быть затруднена. Более того, даже в некоторых версиях самой Windows, таких как XP, данные на дисках, отформатированных по алгоритмам exFAT, могут не читаться. Потребуется установка дополнительного драйвера.

Отметим, что по причине задействования достаточно широкого спектра файловых систем в ОС Windows у пользователя могут возникать периодические сложности в аспекте совместимости различных устройств с компьютером. В ряде случаев, например, требуется установить драйвер файловой системы WPD (Windows Portable Devices — технологии, используемой при работе с переносными устройствами). Иногда его может не оказаться под рукой у пользователя, вследствие чего внешний носитель ОС может не распознать. Файловая система WPD может потребовать дополнительных программных средств адаптации к операционной среде на конкретном компьютере. В ряде случаев пользователь будет вынужден обращаться к IT-специалистам для решения проблемы.

Как определить, какая именно файловая система — exFAT или NTFS, а может быть, FAT32 — оптимальна для использования в конкретных случаях? Рекомендации IT-специалистов в целом следующие. Можно задействовать два основных подхода. Согласно первому следует разграничивать типичные файловые системы жестких дисков, а также те, что лучше адаптированы к флеш-накопителям. FAT и FAT32, как считают многие специалисты, лучше подходят для «флешек», NTFS — для винчестеров (в силу технологических особенностей работы с данными).

В рамках второго подхода значение имеет величина носителя. Если речь идет об использовании сравнительно небольшого объема диска или флешки, отформатировать их можно в системе FAT32. Если диск большего размера, то можно попробовать exFAT. Но только в том случае, если не предполагается использование носителей на других компьютерах, особенно тех, где стоят не самые свежие версии Windows. Если речь идет о больших жестких дисках, в том числе и внешних, то их целесообразно форматировать в NTFS. Примерно таковы критерии, по которым может быть выбрана оптимальная файловая система — exFAT или NTFS, FAT32. То есть использовать какую-либо из них следует, учитывая размер носителя, его тип, а также версию ОС, на котором накопитель преимущественно используется.

Файловые системы для Mac

Другая популярная программно-аппаратная платформа на мировом рынке компьютерной техники — Macintosh от Apple. ПК данной линейки работают под управлением операционной системы Mac OS. Каковы особенности организации работы с файлами в компьютерах Mac? В самых современных ПК от Apple используется файловая система Mac OS Extended. Ранее в компьютерах Mac работа с данными управлялась в соответствии со стандартами HFS.

Файловая система Mac OS

Главное, что можно отметить в аспекте ее характеристик: на диске, которым управляет файловая система Mac OS Extended, могут размещаться файлы очень большого объема — речь может идти о нескольких миллионах терабайт.

Файловая система в Android-устройствах

Самая популярная ОС для мобильных устройств — виде электронной техники, не уступающей по популярности ПК, — это Android. Каким образом осуществляется управление файлами на девайсах соответствующего типа? Отметим прежде всего, что данная операционная система — фактически «мобильная» адаптация ОС Linux, которая, благодаря открытому программному коду, может быть модифицирована с перспективой использования на самом широком спектре устройств. Поэтому управление файлами в мобильных девайсах под управлением Android осуществляется в целом по тем же принципам, что и в Linux. Некоторые из них мы отметили выше. В частности, управление файлами в Linux осуществляется без деления носителя на логические диски, как это происходит в Windows. Что еще интересного заключает в себе файловая система Android?

Файловая система Android

Корневым каталогом в Android, как правило, выступает область данных, именуемая /mnt. Соответственно, адрес нужного файла может выглядеть примерно так: /mnt/sd/photo.jpg. Кроме того, есть еще одна особенность системы управления данными, что реализована в данной мобильной ОС. Дело в том, что флеш-память девайса, как правило, классифицирована на несколько разделов, таких как, например, System или Data. При этом, изначально заданный размер каждого из них изменить нельзя. Приблизительную аналогию касательно данного технологического аспекта можно обнаружить, вспомнив, что нельзя (если не использовать специального ПО) менять размер логических дисков в Windows. Он должен быть фиксированным.

Еще одна интересная особенность организации работы с файлами в Android — соответствующая операционная система, как правило, записывает новые данные в конкретную область диска — Data. Работа, к примеру, с разделом System при этом не осуществляется. Поэтому, когда пользователь задействует функцию сброса программных настроек смартфона или планшета до уровня «заводских», то на практике это означает, что те файлы, что записаны в область Data, попросту стираются. Раздел System же, как правило, остается неизменным. Более того, какие-либо корректировки содержимого в System пользователь, не обладая специализированным ПО, осуществлять не может. Процедура, связанная с обновлением системной области носителя в Android-устройстве, называется перепрошивкой. Это не форматирование, хотя обе операции часто осуществляются одновременно. Как правило, перепрошивка применяется с целью установки на мобильное устройство более новой версии ОС Android.

Файловая система exFAT или NTFS

Таким образом, ключевые принципы, на базе которых работает файловая система Android — отсутствие логических дисков, а также жесткое разграничение доступа к системным и пользовательским данным. Нельзя сказать, что данный подход принципиально отличается от того, что реализован в Windows, однако, как считают многие IT-эксперты, в ОС от Microsoft для пользователей присутствует несколько большая свобода в работе с файлами. Впрочем, как полагают некоторые специалисты, это нельзя считать однозначным преимуществом Windows. «Либеральный» режим в аспекте управления файлами задействуют, конечно же, не только пользователи, но и компьютерные вирусы, к которым Windows очень восприимчива (в отличие от Linux и ее «мобильной» реализации в виде Android). В этом, как считают эксперты, заключается одна из причин того, что вирусов для Android-устройств столь немного — чисто с технологической точки зрения они не могут в полной мере функционировать в операционной среде, работающей по принципам строгого контроля доступа к файлам.

Что такое файловая система, их виды и назначение?

Подробности
апреля 29, 2018
Просмотров: 8947

 

Содержание:

В настоящее время компьютерный рынок предлагает множество возможностей хранения огромного количества личной или корпоративной информации в цифровой форме. Устройства хранения включают в себя внутренние и внешние жесткие диски, флэш-накопители USB, карты памяти фото / видеокамер, сложные RAID-системы и т. д. Фактические документы, презентации, изображения, музыка, видео, базы данных, электронные сообщения хранятся в виде файлов, которые могут занимать много места.

В этой статье представлено подробное описание того, как информация хранится на устройстве хранения.

 

Что такое файловая система?

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

Как правило, в компьютерных хранилищах используется пара секторов и смещение в секторе для ссылки на любой байт информации в хранилище. Сектор представляет собой группу байтов (обычно 512 байт), минимальную адресуемую единицу физического хранилища. Например, 1040 байт на жестком диске будет упоминаться как сектор № 3 и смещение в секторе 16 байт ([сектор — 512] + [сектор — 512] + [16 байт]). Эта схема применяется для оптимизации адресации хранилища и использования меньшего числа для ссылки на любую часть информации в хранилище.

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

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

В целом файловая система представляет собой структурированное представление данных и набор метаданных, описывающих сохраненные данные. Файловая система служит для хранения всего хранилища, а также является частью изолированного сегмента хранения — раздела диска. Обычно файловая система управляет блоками, а не секторами. Блоки файловой системы представляют собой группы секторов, которые оптимизируют адресацию хранилища. Современные файловые системы обычно используют размеры блоков от 1 до 128 секторов (512-65536 байт). Файлы обычно хранятся в начале блока и занимают целые блоки.

Огромные операции записи / удаления в файловой системе приводят к фрагментации файловой системы. Таким образом, файлы не сохраняются как целые единицы, а делятся на фрагменты. Например, хранилище целиком занимают файлы размером около 4 блоков (например, коллекция изображений). Пользователь хочет сохранить файл, который займет 8 блоков и, следовательно, удалит первый и последний файлы. Делая это, он очищает пространство на 8 блоков, однако первый сегмент близок к началу хранения, а второй — к концу хранилища. В этом случае файл с 8 блоками разбивается на две части (по 4 блока для каждой части) и занимает «дыры» свободного пространства. Информация об обоих фрагментах как части одного файла хранится в файловой системе.

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

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

 

Файловые системы Windows

ОС Microsoft Windows использует две основные файловые системы: FAT, унаследованные от старой DOS с ее более поздним расширением FAT32 и широко используемыми файловыми системами NTFS. Недавно выпущенная файловая система ReFS была разработана Microsoft как файловая система нового поколения для серверов Windows 8, 10.

 

FAT:

FAT (таблица распределения файлов ) — один из простейших типов файловых систем. Он состоит из сектора дескриптора файловой системы (загрузочного сектора или суперблока), таблицы распределения блоков файловой системы (называемой таблицей распределения файлов) и простого пространства для хранения файлов и папок. Файлы в FAT хранятся в каталогах. Каждый каталог представляет собой массив из 32-байтных записей, каждый из которых определяет файлы или расширенные атрибуты файла (например, длинное имя файла). Запись файла присваивает первый блок файла. Любой следующий блок можно найти через таблицу распределения блоков, используя его как связанный список.

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

Числа в FAT12, FAT16, FAT32 обозначают количество бит, используемых для перечисления блока файловой системы. Это означает, что FAT12 может использовать до 4096 различных ссылок на блоки, в то время как FAT16 и FAT32 могут использовать до 65536 и 4294967296 соответственно. Фактическое максимальное количество блоков еще меньше и зависит от реализации драйвера файловой системы.

FAT12 использовался для старых дискет. FAT16 (или просто FAT) и FAT32 широко используются для карт флэш-памяти и USB-флеш-накопителей. Система поддерживается мобильными телефонами, цифровыми камерами и другими портативными устройствами.

 

FAT или FAT32 — это файловая система, которая используется в Windows-совместимых внешних хранилищах или дисковых разделах с размером менее 2 ГБ (для FAT) или 32 ГБ (для FAT32). Windows не может создать файловую систему FAT32 более чем на 32 ГБ (однако Linux поддерживает FAT32 до 2 ТБ).

 

NTFS:

NTFS (новая технологическая файловая система) была представлена ​​в Windows NT и в настоящее время является основной файловой системой для Windows. Это файловая система по умолчанию для дисковых разделов и единственная файловая система, которая поддерживает разделы диска по 32 ГБ. Файловая система довольно расширяема и поддерживает многие свойства файла, включая контроль доступа, шифрование и т. д. Каждый файл в NTFS хранится в виде файлового дескриптора в таблице основных файлов и содержимом файла. Таблица главного файла содержит всю информацию о файле: размер, распределение, имя и т. д. В первом и последнем секторах файловой системы содержатся параметры файловой системы (загрузочная запись или суперблок). Эта файловая система использует 48 и 64-битные значения для ссылок на файлы, тем самым поддерживая дисковые хранилища с большой емкостью.

 

ReFS:

ReFS (Resilient File System) — последняя разработка Microsoft, доступная в настоящее время для серверов Windows 8 и 10. Архитектура файловой системы абсолютно отличается от других файловых систем Windows и в основном организована в виде B + -tree. ReFS обладает высокой устойчивостью к отказам из-за новых функций, включенных в систему, а именно, Copy-on-Write (CoW): никакие метаданные не изменяются без копирования; данные записываются на новое дисковое пространство, а не поверх существующих данных. При любых модификациях файлов новая копия метаданных хранится в свободном пространстве для хранения, а затем система создает ссылку из старых метаданных в более новую. Таким образом, система хранит значительное количество старых резервных копий в разных местах, обеспечивая легкое восстановление файлов, если это место для хранения не перезаписано.

Для получения информации о восстановлении данных из этих файловых систем посетите страницу «Шансы для восстановления».

 

Файловые системы MacOS

Операционная система Apple MacOS применяет две файловые системы: HFS +, расширение к своей собственной файловой системе HFS, используемой на старых компьютерах Macintosh, и недавно выпущенную APFS.

Файловая система HFS + работает под управлением продуктов Apple, включая компьютеры Mac, iPod, а также продукты Apple X Server. В расширенных серверных продуктах также используется файловая система Apple Xsan, кластерная файловая система, созданная из файловых систем StorNext или CentraVision.

Эта файловая система хранит файлы и папки и информацию Finder о просмотре каталогов, положениях окна и т. д.

Для получения информации о восстановлении данных из этих файловых систем посетите страницу «Шансы для восстановления».

 

Файловые системы Linux

ОС Linux с открытым исходным кодом нацелена на внедрение, тестирование и использование различных концепций файловых систем.

Самые популярные файловые системы Linux:

  • Ext2, Ext3, Ext4 — «родная» файловая система Linux. Эта файловая система подпадает под активные разработки и улучшения. Файловая система Ext3 — это просто расширение Ext2, которое использует операции записи транзакций с журналом. Ext4 является дополнительной расширенной разработкой Ext3, с поддержкой оптимизированной информации о распределении файлов (экстентов) и расширенных атрибутов файлов. Эта файловая система часто используется как «корневая» файловая система для большинства установок Linux.
  • ReiserFS — альтернативная файловая система Linux для хранения огромного количества небольших файлов. Она имеет хорошие возможности поиска файлов и позволяет компактно распределять файлы, сохраняя хвосты файлов или небольшие файлы вместе с метаданными, чтобы не использовать большие блоки файловой системы для той же цели.
  • XFS — файловая система, созданная компанией SGI и первоначально использовавшаяся для серверов IRIX компании. Теперь спецификации XFS реализованы в Linux. Файловая система XFS имеет отличную производительность и широко используется для хранения файлов.
  • JFS — файловая система, разработанная IBM для мощных вычислительных систем компании. JFS1 обычно обозначает JFS, JFS2 — вторая версия. В настоящее время эта файловая система является с открытым исходным кодом и реализована в большинстве современных версий Linux.

Концепция «жесткой связи», используемая в таких операционных системах, делает большинство файловых систем Linux одинаковыми, поскольку имя файла не рассматривается как атрибут файла и скорее определяется как псевдоним для файла в определенном каталоге. Объект файла можно связать со многими местоположениями, даже размножаться из одного и того же каталога под разными именами. Это может привести к серьезным и даже непреодолимым трудностям при восстановлении имен файлов после удаления файлов или повреждения файловой системы.

Для получения информации о восстановлении данных из этих файловых систем посетите страницу «Шансы для восстановления».

 

Файловые системы BSD, Solaris, Unix

Наиболее распространенной файловой системой для этих операционных систем является UFS (Unix File System), также часто называемая FFS (Fast File System).

В настоящее время UFS (в разных версиях) поддерживается всеми операционными системами семейства Unix и является основной файловой системой ОС BSD и операционной системы Sun Solaris. Современные компьютерные технологии, как правило, реализуют замены для UFS в разных операционных системах (ZFS для Solaris, JFS и производных файловых систем для Unix и т. д.).

Для получения информации о восстановлении данных из этих файловых систем посетите страницу «Шансы для восстановления».

 

Кластерные файловые системы

Кластерные файловые системы используются в компьютерных кластерных системах. Эти файловые системы поддерживают распределенное хранилище.

Распределенные файловые системы включают:

  • ZFS — «Zettabyte File System» — новая файловая система, разработанная для распределенных хранилищ Sun Solaris OS.
  • Apple Xsan — эволюция компании Apple в CentraVision и более поздних файловых системах StorNext.
  • VMFS — «Файловая система виртуальных машин», разработанная компанией VMware для своего VMware ESX Server.
  • GFS — Red Hat Linux «Глобальная файловая система».
  • JFS1 — оригинальный (устаревший) дизайн файловой системы IBM JFS, используемой в старых системах хранения AIX.

Общие свойства этих файловых систем включают поддержку распределенных хранилищ, расширяемость и модульность.

Для получения дополнительной информации о восстановлении данных из этих файловых систем посетите страницу «Шансы для восстановления».


Читайте также

 

 

 

 

Leave a comment