Преобразование пользовательского адреса в аппаратный и обратно осуществляется с помощью файловой системы ОС.
Возможны следующие действия с файлами:
- создание: за файлом закрепляется название и выделяется место на диске;
- открытие: поиск файла на диске и выделение памяти в ОЗУ для обмена данными с файлом;
- закрытие: сохранение текущего состояния файла после действий с ним;
- изменение: модификация содержимого файла;
- копированиеи перемещение файла;
- переименование: закрепление за файлом нового имени;
- удаление: освобождение места на диске, занимаемого файлом.
На любом диске обязательно присутствует корневой каталог. Корневой каталог представляет собой совокупность записей о файлах и других каталогах, которые он содержит.
Каждая запись содержит следующие параметры:
- имя файла;
- расширение файла;
- объем файла в байтах;
- дата и время создания файла;
- дата и время последнего открытия (доступа) файла;
- атрибуты файла: только для чтения; скрытый файл; системный файл; архивированный файл.
Корневой каталог имеет фиксированное место на диске и размер. Все остальные каталоги имеют такую же структуру, но могут храниться в любом месте области данных диска, как и файлы. Каталоги необходимы для упорядоченного хранения файлов.
В ОС Windows каталоги называются папками.
В ОС Windows имя файла не может превышать 255 символов и может содержать латинские и русские буквы, знаки пунктуации. В одном каталоге не может находиться двух файлов с одинаковыми именами.
Расширения файлов используются ОС, чтобы определить какую программу необходимо запустить для обработки файла с данным расширением. Расширение определяет тип файла, но не тип – расширение. Основные расширения файлов приведены в таблице.
Тип | Назначение |
EXE, COM | Исполняемые файлы – программы |
DOC, RTF, TXT | Документы |
LNK | Файл ярлыка |
DLL, SYS | Системные файлы |
BMP, JPG, GIF, PNG | Файлы изображений |
MID, MP3, WAV, WMA | Звуковые файлы |
ASF, AVI, MOV, MP4, MPG | Видеофайлы |
От файловой системы требуется выполнение следующих действий:
- определение по имени файла физического расположения его частей;
- определение наличия свободного места и выделение его для вновь создаваемых файлов.
Скорость выполнения этих операций напрямую зависит от самой файловой системы. Разные файловые системы используют различные механизмы для реализации указанных задач и имеют свои преимущества и недостатки.
Файловая система FAT(File Allocation Table – таблица размещения файлов), использующихся в ОС MS-DOS и Windows, представляют собой образ носителя в миниатюре, где детализация ведется до кластерного уровня. Поэтому операция поиска физических координат файла при его большой фрагментации будет затруднительна. Еще хуже обстоит дело с поиском свободного места для больших файлов. Приходится просматривать практически всю таблицу, поэтому быстродействие падает.
Современная файловая система NTFS (New Technology File System – файловая система нового типа) в ОС Windows XP / Vista / 7 использует более компактную форму записи, что ускоряет поиск файла. Поэтому операции с выделением места под файл проходят быстрее. Ключевое преимущество файловой системы NTFS – возможность ограничения доступа к файлам и каталогам.
Microsoft реализовала в Windows 8 новую файловую систему - ReFS (Resilient File System - отказоустойчивая файловая система). Считается, что ReFS обеспечивает лучшую защиту данных на ёмких и быстрых жестких дисках.
В динамичном мире софта есть нечто, что не меняется порой десятилетиями. Я говорю про файловые системы. Актуальная сейчас NTFS (New Technology File System) появилась почти 20 лет назад, в 1993-м, вместе с принципиально новой ОС - Windows NT 3.1. И с тех пор NTFS добросовестно трудится на сотнях миллионов Windows-ПК по всему миру. Но теперь для нее появилась замена: ReFS.
20 лет спустя
Однако у всего есть предел, и у возможностей файловых систем - тоже. Сегодня возможности NTFS подошли к своим границам: проверка ёмких носителей данных занимает слишком много времени, "Журнал" тормозит доступ, а максимальный размер файлов уже практически достигнут. Понимая это, Microsoft реализовала в Windows 8 новую файловую систему - ReFS (Resilient File System - отказоустойчивая файловая система). Считается, что ReFS обеспечивает лучшую защиту данных на ёмких и быстрых жестких дисках. Наверняка у нее есть и свои недостатки, но до начала по-настоящему массового использования в Windows 8 говорить о них трудно. Так что пока попробуем разобраться во внутреннем устройстве и преимуществах ReFS.
Изначально ReFS была известна под кодовым названием "Protogon". Впервые о ней широкой публике примерно год назад рассказал Стивен Синофски - президент подразделения Windows в Microsoft, отвечающий за разработку и маркетинг Windows и Internet Explorer.
Рассказал такими словами: "Сегодня система NTFS является наиболее широко используемой, передовой и функционально богатой файловой системой. Но переосмысливая Windows, а мы в данный момент разрабатываем Windows 8, - мы не останавливаемся на достигнутом. Поэтому вместе с Windows 8 мы также внедряем совершенно новую файловую систему. ReFS создана на основе NTFS, поэтому в ней сохранились важнейшие возможности совместимости, в то же время она разработана и спроектирована с учетом нужд нового поколения технологий и сценариев хранения данных. В Windows 8, ReFS будет введена только как часть Windows Server 8, такой же подход мы использовали для внедрения всех предыдущих файловых систем. Конечно же, на прикладном уровне клиентам будет предоставляться доступ к данным ReFS такой же, как к данным NTFS. Нельзя забывать о том, что NTFS все еще является ведущей технологией в индустрии среди файловых систем для ПК".
Действительно, впервые ReFS мы увидели в серверной ОС Windows Server 8. Новая файловая система разработана все же не с нуля. Например для открытия, закрытия, чтения и записи файлов ReFS использует те же интерфейсы доступа API, что и NTFS. Также из NTFS перекочевали многие хорошо знакомые возможности - например, шифрование диска Bitlocker и символьные ссылки для библиотек. Зато исчезло, например, сжатие данных и ряд прочих функций.
Основные инновации ReFS сосредоточены в области создания структур файлов и папок, а также управления ими. Их задача - обеспечить автоматическое исправление ошибок, максимальное масштабирование и работу в режиме постоянной подключенности (Always Online).
Архитектура ReFS
Дисковая реализация структур ReFS кардинально отличается от других файловых систем Microsoft. Реализовать свои идеи разработчики Microsoft смогли, применив в ReFS концепцию B+-деревьев, знакомую по базам данных. Папки в файловой системе структурированы в виде таблиц с файлами в качестве записей. Они, в свою очередь, получают определенные атрибуты, добавляемые в качестве подтаблиц, создавая иерархическую древовидную структуру. Даже свободное место на диске организовано в виде таблиц.
Наряду с реальной 64-битной нумерацией всех элементов системы это исключает появление "узких мест" при дальнейшем ее масштабировании.
Как результат, ядром системы в ReFS стала таблица объектов - центральный каталог, в котором перечислены все таблицы в системе. Есть у такого подхода важное преимущество: ReFS отказалась от сложного управления журналом и фиксирует новую информацию о файле в свободном месте - это предотвращает ее перезаписывание.
"Листьями Каталога" являются типизированные записи. Для объекта-папки существуют три основных типа записей: описатель каталога, индексная запись и описатель вложенного объекта. Все такие записи упакованы в виде отдельного B+-дерева, имеющего идентификатор папки; корень этого дерева является листом B+-дерева "Каталога", что позволяет упаковать в папку практически любое количество записей. На нижнем уровне в листах B+-дерева папки находится в первую очередь запись описателя каталога, содержащая основные данные о папке (имя, "стандартная информация", атрибут имени файла и т.д.).
Далее в каталоге помещены индексные записи: короткие структуры, содержащие данные об элементах, содержащихся в папке. Эти записи значительно короче, чем в NTFS, - это в меньшей степени перегружает том метаданными.
В конце помещены записи элементов каталога. Для папок эти элементы содержат имя паки, идентификатор папки в "Каталоге" и структуру "стандартной информации". Для файлов идентификатор отсутствует - вместо этого структура содержит все основные данные о файле, включая корень B+-дерева фрагментов файла. Соответственно, файл может состоять практически из любого числа фрагментов.
Подобно NTFS, в ReFS принципиально различается информация о файле (метаданные) и содержимое файла (пользовательские данные). Однако защитные функции предоставляются и тем, и другим одинаково. Метаданные по умолчанию предохраняются с помощью контрольных сумм - такую же защиту (по желанию) можно дать и пользовательским данным. Эти контрольные суммы располагаются на диске на безопасном удалении друг от друга - так будет проще восстановить данные в случае возникновения ошибки.
Размер метаданных пустой файловой системы составляет порядка 0.1% от размера самой файловой системы (т.е. около 2 Гб на том 2 Тб). Некоторые основные метаданные дублируются для большей устойчивости от сбоев.
Вариант ReFS, который мы увидели в Windows Server 8 Beta, имеет поддержку кластеров данных размером только 64 Кб и кластеров метаданных размером 16 Кб. Пока параметр "Размер кластера" при создании тома ReFS игнорируется и всегда принимается умалчиваемым. При форматированиифайловой системы единственным доступным вариантом для выбора размера кластера также является 64 Кб.
Признаем: такого размера кластера более чем хватит для организации файловых систем любого размера. Побочным эффектом, правда, становится ощутимая избыточность при хранении данных (файл размером в 1 байт на диске займет полный блок 64 Кб).
Во второй части статьи мы рассмотрим защищенность файловой системы ReFS от сбоев (включая сбои оборудования) и преднамеренных атак.
Согласно предложению МЭК, назвать 260 байт "эксабайт" общепринято, но формально неверно, как приставка экса-, означает умножение на 1018, а не 260. Правильной для 260 является двоичная приставка эксби-.
Таким образом, 1 ЭБ = 1018 Б, а 1 ЭиБ = 260 Б.
Папки в файловой системе структурированы в виде таблиц с файлами. Они, в свою очередь, получают определенные атрибуты, добавляемые в качестве подтаблиц, создавая иерархическую древовидную структуру. Даже свободное место на диске организовано в виде таблиц.
Наряду с реальной 64-битной нумерацией всех элементов системы это исключает появление "узких мест" при дальнейшем ее масштабировании.
Дата добавления: 2015-10-19; просмотров: 712;