Классификация, структура, характеристики файловых систем!!! Структура файловой системы

Структура файловой системы зависит от операционной системы. Одной из первых в компьютерах применялась файловая система FAT (File Allocation Table), которая использовалась в операционной системе MS DOS.

FAT была предназначена для работы с гибкими дисками размером менее 1 Мбайта͵ и вначале не предусматривала поддержки жестких дисков. В последующем FAT стала поддерживать файлы и разделы размеров до 2 Гбайт.

В FAT применяются следующие соглашения по именам файлов: имя должно начинаться с буквы или цифры и может содержать любой символ ASCII, за исключением пробела и символов "/\ : ; | = , ^ * ? Длина имени не превышает 8 символов, за ним следует точка и необязательное расширение длиной до 3 символов. регистр символов в именах файлов не различается и не сохраняется.

Файловая система FAT не может контролировать отдельно каждый сектор, в связи с этим она объединяет смежные секторы в кластеры. Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, уменьшается общее количество единиц хранения, за которыми должна следить файловая система. Размер кластера в FAT является степенью двух и определяется размером тома при форматировании диска. Кластер представляет собой минимальное пространство, ĸᴏᴛᴏᴩᴏᴇ может занимать файл. Это приводит к тому, что часть пространства диска расходуется впустую.

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

Доступ - процедура установления связи с памятью и размещенным в ней файлом длязаписи и чтенияданных.

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

c:\Papka1\papka2\uchebnik.doc

Такая запись принято называть маршрут, или путь.

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

Каталог- справочник файлов с указанием месторасположения на диске.

В операционной системе WINDOWS понятию каталог соответствует понятие папка.

Различают два состояния каталога - текущее (активное) и пассивное.

Текущий (активный) каталог- каталог, в котором в данный момент времени работает пользователь.

Пассивный каталог- каталог, с которым в данный момент времени не имеется связи.

В операционной системе принята иерархическая структура организации каталогов.На каждом диске всœегда имеется единственный главный (корневой) каталоᴦ. Он находится на нулевом уровне иерархической структуры и обозначается символом "\" – обратный слэш. Корневой каталог создается при форматировании (инициализации, разметке) диска, имеет ограниченный размер. В главный каталог могут входить другие каталоги и файлы, которые создаются командами операционной системы и бывают удалены соответствующими командами.

Родительский каталог- каталог, имеющий подкаталоги.

Подкаталог - каталог, который входит в другой каталог.

Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, любой каталог, содержащий каталоги нижнего уровня, может быть, с одной стороны, по отношению к ним родительским, а с другой стороны, подчинœенным по отношению к каталогу верхнего уровня.

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

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

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

Файловая система FAT имеет существенное ограничение по поддержке больших объемов дискового пространства, предел равен 2 Гб.

Новые поколения жестких дисков, имеющие большие объемы дискового пространства потребовали более совершенной файловой системы.

Операционная система Windows содержит файловую систему FAT32, которая поддерживает жесткие диски объемом до двух терабайт. В FAT32 были расширены атрибуты файлов, позволяющие теперь хранить время и дату создания, модификации и последнего доступа к файлу или каталогу. Система допускает длинные имена файлов и пробелы в именах. Файловая система FAT32 поддерживается в операционных системах Windows XP и Windows Vista.

Стоит сказать, что для названных операционных систем была разработана еще одна файловая система: NTFS (New Technology File System)

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

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

Каждый файл на томе NTFS представлен записью в специальном файле – главной файловой таблице MFT (Master File Table). NTFS резервирует первые 16 записей таблицы размером около 1 Мб для специальной информации. Записи обеспечивают резервирование главной файловой таблицы, восстановление файлов, контролируют состояние кластеров, определяют атрибуты файлов.

Для уменьшения фрагментации NTFS всœегда пытается сохранить файлы в непрерывных блоках. Она обеспечивает эффективный поиск файлов в каталоге.

NTFS была разработана как восстанавливаемая файловая система, использующая модель обработки транзакций. Каждая операция ввода-вывода, изменяющая файл на томе NTFS, рассматривается системой как транзакция и может выполняться как неделимый блок. При модификации файла пользователœем сервис файла регистрации фиксирует всю информацию необходимую для повторения или отката транзакции.

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

Вопросы для самопроверки.

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

2. Что такое «файл»?

3. Основные составляющие файловой структуры.

4. Что такое кластер?

5.Назовите основные параметры, характеризующие файл.

6.Как образуется имя файла?

7.Правила присваивания имен файлам в системе FAT.

8.Почему возникает крайне важность дефрагментации диска?

9. Что такое каталог?

10. Объясните понятия «маршрут», «путь».

11.Для чего в именах файлов применяется расширение?

12.Основное назначение файловой системы.

13.Какие файловые системы поддерживаются операционными системами Windows XP, Windows Vista?

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

Кластер

2. Минимальная единица пространства диска, ĸᴏᴛᴏᴩᴏᴇ может быть отведено файлу

3. Полное имяфайла содержит

Собственно имя

Расширение

4. Файлы, имеющие расширения.ZIP,ARJ, относятся к

Системным

Графическим

Архивным

Временным

5. Файловая система FAT поддерживает дисковое пространство в объеме

6. Шаблон имени файла, который служит для замены одного символа

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

8. Справочник файлов с указанием их месторасположения на диске

Каталог

Таблица размещения файлов

Кластер

Драйвер

9.Процедура установления связи с размещенным в памяти файлом

Дефрагментация

Считывание

10. Файлы, имеющие расширения.COM,EXE, относятся к

Системным

Графическим

Исполняемым

Временным

РАЗДЕЛ 3. Программные средства реализации информационных процессов

Тема 3.1. Классификация программных средств


  • - Реализация файловой системы. Общая структура файловой системы

    Файловые системы хранятся на дисках. Большинство дисков делится на ряд разделов с независимой файловой системой на каждом разделе. Сектор «0» диска называется главной загрузочной записью (MBR, Master Boot Record) и используется для загрузки компьютера. В конце главной загрузочной... [читать подробенее]


  • -

    [читать подробенее]


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

    Рассмотрение методов работы с дисковым пространством дает общее представление о совокупности служебных данных, необходимых для описания файловой системы. Структура служебных данных типовой файловой системы, например Unix, на одном из разделов диска, таким образом, может...

    [читать подробенее]


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

    Реализация файловых систем В данном разделе начнем рассматривать принципы и методы реализации файловых систем, изложение которых продолжено в "Виртуальные файловые системы (VFS). Реализации файловых систем. Сетевая файловая система NFS". В данной и следующей...

  • Балашовский институт (филиал) Саратовского государственного университета им. Н.В. Чернышевского

    Курсовая работа выполнил студент 142 группы Ефанов А.П.

    Балашов 2010

    Введение

    В настоящее время на одном диске в среднем записывается несколько десятков тысяч файлов. Как разобраться во всем этом многообразии с тем, чтобы точно адресоваться к файлу? Назначение файловой системы – эффективное решение указанной задачи.

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

    Эволюция файловой системы была напрямую связана с развитием технологий реляционных баз данных. Файловая система использовала последние достижения, разработанные для применения в СУБД: механизмы транзакций, защиты данных, систему самовосстановления в результате сбоя.

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

    За свою 20 летнюю историю файловая система прошла путь от простой системы, взявшей на себя функции управления файлами, до системы, представляющей собой полноценную СУБД, обладающую встроенным механизмом протоколирования и восстановления данных.

    В отличие от попыток ввести стандарт на протокол, описывающий правила доступа к удаленным файловым системам (CIFS, NFS), не стоит ожидать появления подобного стандарта, описывающего файловые системы для жестких дисков. Это можно объяснить тем, что файловая система жестких дисков все еще продолжает оставаться одной из главных частей операционной системы, влияющей на ее производительность. Поэтому каждый производитель операционных систем будет стремиться использовать файловую систему, "родную" для его ОС.

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

    Файлы идентифицируются именами. Пользователи дают файлам символьные имена, при этом учитываются ограничения ОС как на используемые символы, так и на длину имени. До недавнего времени эти границы были весьма узкими. Так в популярной файловой системе FAT длина имен ограничивается известной схемой 8.3 (8 символов - собственно имя, 3 символа - расширение имени), а в ОС UNIX System V имя не может содержать более 14 символов. Однако пользователю гораздо удобнее работать с длинными именами, поскольку они позволяют дать файлу действительно мнемоническое название, по которому даже через достаточно большой промежуток времени можно будет вспомнить, что содержит этот файл. Поэтому современные файловые системы, как правило, поддерживают длинные символьные имена файлов. Например, Windows NT в своей новой файловой системе NTFS устанавливает, что имя файла может содержать до 255 символов, не считая завершающего нулевого символа.

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

    Длинные имена поддерживаются не только новыми файловыми системами, но и новыми версиями хорошо известных файловых систем. Например, в ОС Windows 95 используется файловая система VFAT, представляющая собой существенно измененный вариант FAT. Среди многих других усовершенствований одним из главных достоинств VFAT является поддержка длинных имен. Кроме проблемы генерации эквивалентных коротких имен, при реализации нового варианта FAT важной задачей была задача хранения длинных имен при условии, что принципиально метод хранения и структура данных на диске не должны были измениться.

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

    Типы файлов. Файлы бывают разных типов: обычные файлы, специальные файлы, файлы-каталоги.

    Обычные файлы в свою очередь подразделяются на текстовые и двоичные. Текстовые файлы состоят из строк символов, представленных в ASCII-коде. Это могут быть документы, исходные тексты программ и т.п. Текстовые файлы можно прочитать на экране и распечатать на принтере. Двоичные файлы не используют ASCII-коды, они часто имеют сложную внутреннюю структуру, например, объектный код программы или архивный файл. Все операционные системы должны уметь распознавать хотя бы один тип файлов - их собственные исполняемые файлы.

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

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

    В разных файловых системах могут использоваться в качестве атрибутов разные характеристики, например:

    информация о разрешенном доступе,

    пароль для доступа к файлу,

    владелец файла,

    создатель файла,

    признак "только для чтения",

    признак "скрытый файл",

    признак "системный файл",

    признак "архивный файл",

    признак "двоичный/символьный",

    признак "временный" (удалить после завершения процесса),

    признак блокировки,

    длина записи,

    указатель на ключевое поле в записи,

    длина ключа,

    времена создания, последнего доступа и последнего изменения,

    текущий размер файла,

    максимальный размер файла.

    Каталоги могут непосредственно содержать значения характеристик файлов, как это сделано в файловой системе MS-DOS, или ссылаться на таблицы, содержащие эти характеристики, как это реализовано в ОС UNIX (рисунок 1). Каталоги могут образовывать иерархическую структуру за счет того, что каталог более низкого уровня может входить в каталог более высокого уровня (рисунок 2).

    Иерархия каталогов может быть деревом или сетью. Каталоги образуют дерево, если файлу разрешено входить только в один каталог, и сеть - если файл может входить сразу в несколько каталогов. В MS-DOS каталоги

    Рисунок. 1 Структура каталогов: а - структура записи каталога MS-DOS (32 байта);

    б - структура записи каталога ОС UNIX

    Рисунок 2 Логическая организация файловой системы

    а - одноуровневая; б - иерархическая (дерево); в - иерархическая (сеть)

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

    Программист имеет дело с логической организацией файла, представляя файл в виде определенным образом организованных логических записей. Логическая запись - это наименьший элемент данных, которым может оперировать программист при обмене с внешним устройством. Даже если физический обмен с устройством осуществляется большими единицами, операционная система обеспечивает программисту доступ к отдельной логической записи. На рисунке 3 показаны несколько схем логической организации файла. Записи могут быть фиксированной длины или переменной длины.

    Рисунок 3 Способы логической организации файлов

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

    организация).

    Для идентификации записи может быть использовано специальное поле записи, называемое ключом. В файловых системах ОС UNIX и MS-DOS файл имеет простейшую логическую структуру - последовательность однобайтовых записей.

    Физическая организация файла описывает правила расположения файла на устройстве внешней памяти, в частности на диске. Файл состоит из физических записей - блоков. Блок - наименьшая единица данных, которой внешнее устройство обменивается с оперативной памятью. Непрерывное размещение - простейший вариант физической организации (рисунок 2.34, а), при котором файлу предоставляется последовательность блоков диска, образующих единый сплошной участок дисковой памяти. Для задания адреса файла в этом случае достаточно указать только номер начального блока. Другое достоинство этого метода - простота. Но имеются и два существенных недостатка. Во-первых, во время создания файла заранее не известна его длина, а значит не известно, сколько памяти надо зарезервировать для этого файла, во-вторых, при таком порядке размещения неизбежно возникает фрагментация, и пространство на диске используется не эффективно, так как отдельные участки маленького размера (минимально 1 блок) могут остаться не используемыми.

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

    Рисунок 4 Физическая организация файла

    а - непрерывное размещение; б - связанный список блоков;

    в - связанный список индексов; г - перечень номеров блоков

    Популярным способом, используемым, например, в файловой системе FAT операционной системы MS-DOS, является использование связанного списка индексов. С каждым блоком связывается некоторый элемент - индекс. Индексы располагаются в отдельной области диска (в MS-DOS это таблица FAT). Если некоторый блок распределен некоторому файлу, то индекс этого блока содержит номер следующего блока данного файла. При такой физической организации сохраняются все достоинства предыдущего способа, но снимаются оба отмеченных недостатка: во-первых, для доступа к произвольному месту файла достаточно прочитать только блок индексов, отсчитать нужное количество блоков файла по цепочке и определить номер нужного блока, и, во-вторых, данные файла занимают блок целиком, а значит имеют объем, равный степени двойки.

    В заключение рассмотрим задание физического расположения файла путем простого перечисления номеров блоков, занимаемых этим файлом. ОС UNIX использует вариант данного способа, позволяющий обеспечить фиксированную длину адреса, независимо от размера файла. Для хранения адреса файла выделено 13 полей. Если размер файла меньше или равен 10 блокам, то номера этих блоков непосредственно перечислены в первых десяти полях адреса. Если размер файла больше 10 блоков, то следующее 11-е поле содержит адрес блока, в котором могут быть расположены еще 128 номеров следующих блоков файла. Если файл больше, чем 10+128 блоков, то используется 12-е поле, в котором находится номер блока, содержащего 128 номеров блоков, которые содержат по 128 номеров блоков данного файла. И, наконец, если файл больше 10+128+128(128, то используется последнее 13-е поле для тройной косвенной адресации, что позволяет задать адрес файла, имеющего размер максимум 10+ 128 + 128(128 + 128(128(128.

    2.Общие понятия файловой системы

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

    Задачей символьного уровня является определение по символьному имени файла его уникального имени. В файловых системах, в которых каждый файл может иметь только одно символьное имя (например, MS-DOS), этот уровень отсутствует, так как символьное имя, присвоенное файлу пользователем, является одновременно уникальным и может быть использовано операционной системой.

    Рисунок 5 Общая модель файловой системы

    В других файловых системах, в которых один и тот же файл может иметь несколько символьных имен, на данном уровне просматривается цепочка каталогов для определения уникального имени файла. В файловой системе UNIX, например, уникальным именем является номер индексного дескриптора файла (i-node).

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

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

    На логическом уровне определяются координаты запрашиваемой логической записи в файле, то есть требуется определить, на каком расстоянии (в байтах) от начала файла находится требуемая логическая запись. При этом абстрагируются от физического расположения файла, он представляется в виде непрерывной последовательности байт. Алгоритм работы данного уровня зависит от логической организации файла. Например, если файл организован как последовательность логических записей фиксированной длины l, то n-ая логическая запись имеет смещение l((n-1) байт. Для определения координат логической записи в файле с индексно-последовательной организацией выполняется чтение таблицы индексов (ключей), в которой непосредственно указывается адрес логической записи.

    Рисунок 6 Функции физического уровня файловой системы

    Исходные данные:

    V - размер блока

    N - номер первого блока файла

    S - смещение логической записи в файле

    Требуется определить на физическом уровне:

    n - номер блока, содержащего требуемую логическую запись

    s - смещение логической записи в пределах блока

    n = N + , где - целая часть числа S/V

    s = R - дробная часть числа S/V

    На физическом уровне файловая система определяет номер физического блока, который содержит требуемую логическую запись, и смещение логической записи в физическом блоке. Для решения этой задачи используются результаты работы логического уровня - смещение логической записи в файле, адрес файла на внешнем устройстве, а также сведения о физической организации файла, включая размер блока. Рисунок 6 иллюстрирует работу физического уровня для простейшей физической организации файла в виде непрерывной последовательности блоков. Подчеркнем, что задача физического уровня решается независимо от того, как был логически организован файл.

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

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

    Новая файловая система имеет многоуровневую структуру (рисунок 7), на верхнем уровне которой располагается так называемый переключатель файловых систем (в Windows 95, например, такой переключатель называется устанавливаемым диспетчером файловой системы - installable filesystem manager, IFS). Он обеспечивает интерфейс между запросами приложения и конкретной файловой системой, к которой обращается это приложение. Переключатель файловых систем преобразует запросы в формат, воспринимаемый следующим уровнем - уровнем файловых систем.

    Рисунок 7 Архитектура современной файловой системы

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

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

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

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

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

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

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

    Большинство существующих на сегодняшний день файловых систем построены на основе таблицы размещения файлов (File Allocation Table - FAT), которая содержит дорожки данных в каждом кластере на диске. Существует несколько типов файловой системы FAT - FAT 12, FAT 16 и FAT 32. Они отличаются количеством цифр, используемых в таблице размещения файлов. Другими словами, в FAT 32 используется 32-разрядное число для хранения дорожки данных в каждом кластере, в FAT 16 - 16-разрядное число и т.д. В настоящее время существуют следующие типы файловой системы FAT:

    FAT 12, используемая в разделах емкостью не более 16 Мбайт (например, дискета);

    FAT 16, используемая в разделах емкостью от 16 Мбайт до 2 Гбайт;

    FAT 32, используемая (необязательно) в разделах емкостью от 512 Мбайт до 2 Тбайт.

    Файловые системы FAT 12 и FAT 16 изначально применяются в DOS и Windows и поддерживаются практически всеми известными на сегодняшний день операционными системами. Большинство персональных компьютеров поставляется с жесткими дисками, на которых установлена одна из файловых систем FAT.

    Файловая система FAT 32 поддерживается операционной системой Windows 95 и более поздними версиями, а также Windows 2000.

    Для обеспечения пользовательским приложениям доступа к файлам независимо от типа используемого диска в операционной системе предусмотрено несколько структур. Эти структуры поддерживаются системами Windows и представлены ниже в порядке расположения на диске:

    загрузочные секторы главного и дополнительного разделов;

    загрузочный сектор логического диска;

    таблицы размещения файлов (FAT);

    корневой каталог;

    область данных;

    цилиндр для выполнения диагностических операций чтения/записи.

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

    Загрузочный сектор главного раздела (или главная загрузочная запись (Master Boot Record - MBR)) является первым сектором на жестком диске (цилиндр 0, головка 0, сектор 1) и состоит из двух элементов.

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

    Главный загрузочный код. Небольшая программа, которая выполняется системой BIOS. Основная функция этого кода - передача управления в раздел, который обозначен как активный (или загрузочный).

    Загрузочный сектор - это первый сектор на любом логическом диске DOS. Например, на дискете или на диске Zip это самый первый физический сектор, так как дискету нельзя разбить на разделы и она имеет только один логический диск. На жестком диске загрузочный сектор (секторы) располагается в начале каждого раздела, не являющегося дополнительным, или в начале любой области диска, распознаваемой как логический диск DOS.

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

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

    Загрузочный код - программа, которая начинает процесс загрузки операционной системы. Для DOS и Windows 9x/Me это файл Io.sys.

    Загрузочный сектор дискеты загружается ROM BIOS, а при загрузке системы с жесткого диска MBR передает управление загрузочному сектору активного раздела. В обоих случаях загрузочный сектор логического диска получает управление. Он выполняет некоторые проверки и затем пытается прочитать с диска первый системный файл (в DOS/Windows это файл Io.sys). Загрузочный сектор не виден, так как находится вне области хранения файлов логического диска.

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

    Имя файла и расширение - восемь символов имени и три символа расширения; точка между именем и расширением файла подразумевается, но не включается в эту запись.

    Байт атрибутов файла, содержащий флаг, который представляет стандартные атрибуты файла.

    Время и дата создания файла или его модификации.

    Информация о расположении файла, т.е. расположении оставшихся кластеров, содержится в FAT.

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

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

    В файловой системе FAT дисковое пространство разбивается не на секторы, а на группы секторов, которые называются кластерами (ячейками размещения). Кластер содержит один или несколько секторов. Размер кластера определяется при делении диска на разделы с помощью программы Fdisk и зависит от размера создаваемого раздела. Наименьший размер диска, который может занимать файл ненулевого размера, - один кластер. Каждый файл использует целое число кластеров. Например, если файл занимает на один байт больше размера кластера, то для его размещения на диске будет выделено два кластера.

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

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

    3.2 Ошибки файловой системы FAT

    Ошибки в файловой системе появляются скорее из-за программных, нежели из-за аппаратных сбоев (например, при неверном завершении работы Windows).

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

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

    Например, программа Chkdsk из цепочек потерянных кластеров создает файлы с именами FILE0001.CHK, FILE0002.CHK и т.д.

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

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

    Неверный файл или каталог. Иногда информация в записи каталога для

    файла или подкаталога не соответствует действительности: запись содержит

    кластер с неверной датой или неправильным форматом. Практически все программы восстановления диска устраняют и эту проблему.

    Команды Chkdsk, Recover и Scandisk - это "реанимационная бригада" DOS, занимающаяся восстановлением поврежденных данных на диске. Эти команды имеют очень простой и не слишком дружественный интерфейс, их применение зачастую оказывает значительное воздействие на систему, но иногда только они и могут помочь.

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

    По сравнению с FAT или FAT32, NTFS предоставляет пользователю целое сочетание достоинств: эффективность, надежность и совместимость. Файловая система NTFS применяется в операционной системе Windows NT/2000/XP.

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

    При установке NTFS, диск разделяется на две неравные части: первая отводиться под MFT (Master File Table - общая таблица файлов), называется MFT - зоной и занимает порядка 12% от общего размера диска, вторую часть занимают собственно ваши данные. Есть еще и третья зона, но о ней позже. MFT лежит в начале диска, каждая запись в MFT соответствует какому-либо файлу и занимает около 1 Kb. По своей сути это каталог всех файлов находящихся на диске. Надо заметить, что любой элемент данных в NTFS рассматривается как файл, даже MFT.

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

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

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

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

    $MFT - не что иное как сам MFT

    $MFTmirr - та самая копия, что по серединке диска

    $LogFile - это файл журналирования

    $Boot - как видно из названия, его величество загрузочный сектор

    $Bitmap - карта свободного места раздела

    Информация о метафайлах находиться в MFT - файле. Такая система придумана для увеличения надежности NTFS и себя оправдывает. NTFS практически не имеет ограничения на размеры диска (во всяком случае при нынешних технологиях производства жестких дисков). Размер кластера может варьироваться от 512 b до 64 Kb, хотя обычный его размер равен 4 Kb.

    Каталог NTFS. Это метафайл с обозначением $. Он разделен на части, в каждой из которых содержится имя файла, его атрибуты и ссылка на MFT - файл. А там уже есть вся остальная информация. Каталог представляет собой бинарное дерево, т.е. в каталоге информация о данных на диске расположена таким образом, что при поиске какого-либо файла каталог разбивался на две части и ответ заключался в том, в какой именно части находиться искомое. Затем та же самая операция повторяется в выбранной половине. И так до тех пор, пока не будет найден нужный файл.

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

    Ко всему прочему, файлы NTFS имеют такой атрибут как сжатый. Любой файл или даже каталог может быть сжат. Сама операция сжатия происходит незаметно, так как скорость ее довольно высока. До кучи, используется так называемое виртуальное сжатие т. е. одна часть файла может быть сжата, а другая нет. Сжатие осуществляется блоками. Каждый блок равен 16 кластерам.

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

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

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

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

    3.4 Сравнительная характеристика FAT 32 и NTFS. Достоинства и недостатки

    Достоинства NTFS:

    1. Быстрая скорость доступа к файлам малого размера;

    2. Размер дискового пространства на сегодняшний день практически не ограничен;

    3. Фрагментация файлов не влияет на саму файловую систему;

    4. Высокая надежность сохранения данных и собственно самой файловой структуры;

    5. Высокая производительность при работе с файлами большого размера;

    Недостатки NTFS:

    1. Более высокие требования к объему оперативной памяти по сравнению с FAT 32;

    2. Работа с каталогами средних размеров затруднена из-за их фрагментации;

    3. Более низкая скорость работы по сравнению с FAT 32;

    Достоинства FAT 32:

    1. Высокая скорость работы;

    2. Низкое требование к объему оперативной памяти;

    3. Эффективная работа с файлами средних и малых размеров;

    4. Более низкий износ дисков, вследствие меньшего количества передвижений головок чтения/записи.

    Недостатки FAT 32:

    1. Низкая защита от сбоев системы;

    2. Не эффективная работа с файлами больших размеров;

    3. Ограничение по максимальному объему раздела и файла;

    4. Снижение быстродействия при фрагментации;

    5. Снижение быстродействия при работе с каталогами, содержащими большое количество файлов.

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

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

    3.5.1 EXT 2 (The Second Extended File System)

    Ext2 - файловая система, создаваемая в Linux по умолчанию. В результате ее создания раздел дискового накопителя будет состоять из множества областей, - групп блоков, которые, в свою очередь, подразделяются на меньшие области.

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

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

    Дескриптор группы - здесь хранится информация о каждой группе блоков. Здесь также находятся указатели на таблицу индексных дескрипторов.

    Битовая карта блоков - массив битов, указывающих на использованные блоки.

    Таблица индексных дескрипторов - таблица реально выделенных для данной группы блоков индексных дескрипторов.

    Блоки данных – блоки, в которых непосредственно находятся данные.

    На рисунке 8 приведена схема файловой системы Linux..

    Рисунок 8 Файловая система Ext2

    Файловая система ext3 по сути является усовершенствованной версией файловой системы ext2. Эти усовершенствования предоставляют следующие преимущества:

    1)Доступность

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

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

    2) Целостность данных

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

    3) Скорость

    Несмотря на то, что некоторые данные записываются неоднократно, в большинстве случаев ext3 работает быстрее, чем ext2, так как журналирование ext3 позволяет оптимизировать перемещение головки жёсткого диска. Вы можете оптимизировать скорость, выбирая из трёх режимов журналирования, но учтите, что это влияет на уровень целостности данных.

    4.Программы для работы с жесткими дисками и файловыми системами

    4.1 Acronis Disk Director Suite 10

    Acronis Disk Director Suite 10 предоставляет такие возможности, как управление жесткими дисками, деление их на разделы без потери данных, перенос операционной системы с диска на диск и многое другое. Это профессиональная программа для работы с жесткими дисками в домашних условиях.

    Для полноценного использования Acronis Disk Director Suite необходимо иметь в распоряжении:

    Операционнуюсистему Microsoft Windows 98 SE/Me/NT4.0/Workstation SP 6/2000 Professional SP 4/XP SP 2;

    Процессор с тактовой частотой 300 МГц или более мощный;

    256 Мб оперативной памяти;

    100 Мб свободного пространства на жёстком диске;

    Пишущий CD/DVD дисковод.

    Установка программы не вызывает проблем. Все интуитивно понятно.

    Интерфейс программы предельно прост и понятен

    Профессиональный подход к работе организован с учетом навыков обыкновенных пользователей. В программу Acronis Disk Director Suite 10 включены обновленные утилиты, ранее доступные только по отдельности. Менеджер разделов (Partition Expert) поможет скопировать, разделить, переместить разделы жестко диска без потери данных. Эта функция одна из самых популярных и полезных. Можно перенести свою операционную систему со всеми файлами на новый жесткий диск, если сломался старый. Это избавляет от необходимости заново переустанавливать операционную систему со всеми программами. Или можно просто разделить жесткий диск на разделы (локальные диски) для удобства в работе. Разрезать диск на несколько разделов без потери данных - проще простого. Для этого понадобится сделать всего несколько движений мышкой: запустить программу, кликнуть на жестком диске правой кнопкой, выбрать «Изменить размер» и, передвигая визуальные границы раздела, задать тот размер, который вам нравится. И все. Да, еще один момент: для завершения любой операции по отдельности или всех сразу нажимайте «Финишный флажок» (рисунок 9).

    Рисунок 9: Изменение размера раздела

    Редактор дисков выполняет специализированные операции по работе с жестким диском: от проверки до исправления ошибок. Можете запустить автоматическую проверку жесткого диска на наличие ошибок, если впервые обращаемся к этой программе или даже воспользоваться шестнадцатеричным редактором. Для выполнения проверки достаточно выбрать жесткий диск или раздел, нажав правой клавишей мышки на нем, и выбрать «Проверка». Утилита приведет жесткий диск в порядок. Утилита восстановления разделов (Recovery Expert) – профессиональный инструмент по возвращению к жизни и восстановлению утраченных или удаленных разделов. Может случиться так, что случайно удалится раздел жесткого диска или это произойдет в результате программной ошибки. Эта утилита может восстановить с высокой точностью данные, которые были удалены даже несколько месяцев назад. Для вызова этой утилиты необходимо кликнуть выкладку «Мастера» и выбрать «Восстановление разделов».

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

    Рисунок 10: Журнал событий программы

    И еще одна полезная функция программы – создание загрузочного диска. Если вдруг Windows «приказала долго жить», а копию своих файлов мы так и не успели сделать, не стоит думать, что драгоценная информация утеряна навсегда. Воспользуемся загрузочным диском: он способен работать с жестким диском без загрузки операционной системы. Мы сможем полноценно работать с содержимым жесткого диска, переносить файлы, протестировать на наличие ошибок и попробовать устранить неполадку с загрузкой операционной системы. Функции и внешний вид программы в этом случае не будут отличаться от тех, которые используются в Windows. Одно маленькое «но»: сделать загрузочный диск нужно заранее, лучше всего сразу после установки программы (рисунок 11).

    Рисунок 11 Создание загрузочного диска

    Создание загрузочного диска занимает несколько минут и не требует никаких навыков. Для этого понадобится чистый диск CD-R. Выбераем «Создание загрузочных дисков» на вкладке «Сервис». Просто нужно нажать везде «Далее» и дождаться записи диска. На этом все. Теперь Acronis Disk Director Suite 10 будет присутствовать на компакт-диске.

    4.2. Power Quest Partition Magic 8.0

    Программа Power Quest Partition Magic 8.0 работает со всеми версиями Windows, желает видеть не менее 32 Мб оперативной памяти и процессор не ниже Пентиум-150. Partition Magic 8.0 понимает файловые системы FAT16, FAT32, NTFS, Linux Ext2/3, а также знает, что такое раздел для Линуксового своп-файла Linux Swap.

    Посмотрим, что же нам обещают разработчики по части умений новой версии программы:

    Создание и удаление разделов на жестком диске, а также изменение размеров этих разделов без потери данных. Как видите, FDISK отдыхает.

    Слияние разделов без потери данных (например, можно соединить в одно целое основной раздел и логический диск).

    Преобразование файловых систем FAT32 в FAT16 и NTFS, а также NTFS в FAT32.

    Изменение размеров кластера для уменьшения потерь дискового пространства.

    После изменения буквы имени диска встроенная утилита DriveMapper проверит пути к программам, и при необходимости внесет изменения в реестр, а также сделает соответствующие исправления в системных ярлыках.

    Проверка жестких дисков на наличие bad-секторов.

    Работа с разделами до 160 Гб.

    Поддержка новых устройств с протоколами обмена данными USB2 и FireWire (IE 1394).

    Входящая в комплект программы Partition Magic 8.0 утилита Boot Magic 8.0 при необходимости создаст удобное меню для выбора загрузки той или иной операционной системы.

    Возможность создания загрузочных дискет для внесения изменений или исправлений в среде DOS. Кстати, эти дискеты (2 штуки) можно создать сразу в процессе установки программы, а можно и после, выбрав в меню Старт > Программы > PartitionMagic 8.0 Tools пункт Create Rescue Diskettes. Не ленитесь выполнить эту операцию, поскольку жизнь – штука непредсказуемая.

    Главное окно программы сразу же наглядно покажет все разделы, имеющиеся на жестких дисках вашего компьютера (рисунок 12).

    Рисунок 12: главное окно "Partition Magic 8.0

    Причем, каждый раздел выделен особым цветом, которым Partition Magic помечает файловые системы – ошибиться будет трудно. Также ясно виден размер свободного места в разделе (незанятое пространство выделено белым цветом). Команды для всех операций с разделами доступны как в меню, так и в контекстном меню. Итак, что мы имеем, глядя на рис.9? Картинка говорит о том, что в системном блоке ПК установлены два физических жестких диска.

    В новой версии появилась Action Panel, которая располагается в левой части главного окна. В разделе Pick a Task представлен набор «Помощников» для основных операций с разделами, которые помогут начинающим пользователям осуществить необходимые манипуляции по созданию нового раздела, перераспределению свободного места и установке новой операционной системы. Каждый «Мастер» состоит из цикла последовательных шагов, которые выполнены в виде вполне понятных окон.

    Попробуем отказаться от услуг этих «Мастеров», и сами сделаем все основные операции. Для начала рассмотрим ситуацию с единственным основным разделом (где установлена Windows), в котором нам нужно создать логический диск.

    Разумеется, для создаваемого дополнительного раздела нам потребуется свободное место, которое мы позаимствуем у раздела основного. Правой кнопкой щелкаем по изображению раздела в окне Partition Magic, и выбираем в контекстном меню команду Resize/Move. В одноименном окне можно сразу задать размер дополнительного раздела в поле New Size, а можно, потянув курсором движок, выбрав нужный размер «на глазок» (рисунок 13).

    Рисунок 13: изменяем размер раздела

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

    После процедуры «честного отъема» дискового пространства у основного раздела, свободное место выделится безликим серым цветом – Unallocated.

    Вот на этой «непаханой целине» мы и будем создавать дополнительный раздел с логическим диском. Снова щелкаем мышью, но уже на сером поле, после чего в контекстном меню выбираем команду Create (рисунок 14):

    Рисунок 14

    Коль скоро мы задались целью создать именно логический диск, то в поле Create as выберем параметр Logical, и файловую систему FAT32, которую понимают все системы от Microsoft.

    Нужды в дополнительном форматировании создаваемого раздела нет, поскольку мы задали тип файловой системы, но при желании отформатировать логический диск, например, в NTFS, к нашим услугам команда Format контекстного меню, или та же команда в меню Partition главного окна. По окончании вышеописанных процедур, новый раздел вместе с новеньким логическим диском D: явит нам свой чистый лик (рисунок 15):

    Рисунок 15: логический диск почти готов

    Как видим, программа сама позаботилась о назначении буквы новому диску. Осталось нажать кнопку Apply в левом нижнем углу главного окна, после чего изменения вступят в силу непосредственно в среде Windows (рисунок 16):

    Рисунок 16: процесс пошел

    Но и это еще не финал: встроенная утилита Drive Mapper тут же попросит разрешения отследить измененные пути к программам, чтобы внести исправления в реестр, понеже таковые найдутся – ведь у нас появился новый диск с буквой D:, а привод CD-ROM стал именоваться буквой Е: (рисунок 17).

    Рисунок 17

    4.2.1 DOS-версия Partitin Magiс

    После загрузки DOS-версии появится окно программы не столь красивое, как в 32-разрядной инкарнации, однако же, позволяющее осуществить практически все операции, подвластные пользователю из-под Windows. Для изменения размера раздела и создания раздела нового, достаточно щелкнуть мышью в поле имеющегося раздела, и в контекстном меню выбрать команду Resize/Move (Изменить/Переместить) – рисунок 18.

    Рисунок 18

    Окно с движком изменения размера нам уже знакомо по Windows-версии, и не представляет никаких сложностей: точно так же перетаскиваем движок до нужного размера нового раздела, или сразу вписываем необходимое количество мега- или гигабайт для нового раздела в поле Free Space After (рисунок 19).

    Рисунок 20

    В списке Create As выбираем нужный параметр: Logical partiton для логического диска, или Primary partiton при создании еще одного первичного (основного) раздела. В списке Partition Type отметим тип файловой системы будущего раздела или логического диска: FAT32, NTFS или на наше усмотрение (рисунок 21).

    Рисунок 21

    После этих манипуляций в окне программы появится ПРОЕКТ новой структуры жесткого диска (рисунок 22).

    Рисунок 22

    Затем, чтобы сохранить сделанные изменения, нажмем кнопку Apply, и ответим Yes на извечный вопрос - быть, али, к примеру, не быть (рисунок 23). По истечении небольшого времени работы программы (рисунок 24) все изменения вступят в силу.

    Рисунок 23

    Рисунок 24

    Как уже говорилось, Partition Magic умеет превращать основные разделы в логические диски, и наоборот, а также конвертировать FAT32 > NTFS и обратно. DOS-версия делает то же самое: при щелчке по нужному разделу следует выбрать знакомую команду Convert, после чего никакого окна не появится, а откроется выпадающее меню с командами, доступными для данного раздела. Например, так выглядят команды для логического диска с файловой системой NTFS: можно превратить оный в основной раздел (Logical to Primary) или преобразовать файловую систему в FAT32 (NTFS to FAT32) – рисунок 25.

    рисунок 25

    А вот что можно сделать с FAT32-разделом (рисунок 26): как видим, доступно превращение основного раздела в логический диск (Primary to Logical) и конвертация файловой системы в…FAT (имеется в виду система FAT16). Почему же недоступна команда для конвертации в NTFS? Открою маленький секрет: в этом разделе не было никаких данных, а, следовательно, нечего было терять, и для превращения файловой системы раздела в NTFS следует выбрать команду Format - только и всего.

    Рисунок 26

    Все команды контекстного меню DOS-версии Partition Magic доступны в меню Operations главного окна (рисунок 27).

    Рисунок 27

    Как видим, программа Partition Magic 8.0 обладает массой возможностей и вспомогательных программ, и сможет решить практически все задачи, которые пользователь собирается решить при работе с дисковыми разделами.

    Заключение

    Файловая система с точки зрения пользователя - это «пространство», в котором размещаются файлы. А как научный термин - это часть операционной системы, назначение которой состоит в том, чтобы обеспечить пользователю удобный интерфейс при работе с данными, хранящимися на диске, и обеспечить совместное использование файлов несколькими пользователями и процессами.

    В широком смысле понятие "файловая система" включает:

    совокупность всех файлов на диске,

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

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

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

    Список литературы

    Гук М. Аппаратные средства IBM PC: Бестселлер - 2-е изд.: Питер, 2005.

    Фигурнов В.Э. «IBM PC для пользователя» - 7е изд., перераб. и доп. – М. ИНФА-М, 1998.

    Организация ЭВМ и систем

    Орлов С., Цилькер Б. Организация ЭВМ и систем: Питер, 2007, 672 с.

    Мелехин В.Ф., Павловский Е. Г. Вычислительные машины, системы и сети, 3-е изд.: М.: Издательский центр «Академия», 2007, 560 с.

    Гордеев А.В. Операционные системы. Учебник для вузов. 2-е изд.: Питер, 2004, 416 с.

    Таненбаум Э.С. Перевод: А. Леонтьев Современные операционные системы: Питер, 2002, 1040 с.

    Гладкий А. А. Windows XP для всех: Питер, 2005, 208 с.

    Электронные ресурсы

    Обзор файловых систем FAT и NTFS http://support.microsoft.com/kb/100108

    www.powerquest.com

    http://www.acronis.ru/homecomputing/products/diskdirector/

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

    Структура файловой системы зависит от операционной системы. Одной из первых в компьютерах применялась файловая система FAT (File Allocation Table), которая использовалась в операционной системе MS DOS.

    FAT была предназначена для работы с гибкими дисками размером менее 1 Мбайта, и вначале не предусматривала поддержки жестких дисков. В последующем FAT стала поддерживать файлы и разделы размеров до 2 Гбайт.

    В FAT применяются следующие соглашения по именам файлов:
    имя должно начинаться с буквы или цифры и может содержать любой символ ASCII, за исключением пробела и символов "/\ : ; | = , ^ * ?
    Длина имени не превышает 8 символов, за ним следует точка и необязательное расширение длиной до 3 символов.
    регистр символов в именах файлов не различается и не сохраняется.

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

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

    Доступ - процедура установления связи с памятью и размещенным в ней файлом длязаписи и чтенияданных.

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

    c:\Papka1\papka2\uchebnik.doc

    Такая запись называется маршрут, или путь.

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

    Каталог- справочник файлов с указанием месторасположения на диске.

    В операционной системе WINDOWS понятию каталог соответствует понятие папка.

    Различают два состояния каталога - текущее (активное) и пассивное.

    Текущий (активный) каталог- каталог, в котором в данный момент времени работает пользователь.

    Пассивный каталог- каталог, с которым в данный момент времени не имеется связи.

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

    Родительский каталог- каталог, имеющий подкаталоги.

    Подкаталог - каталог, который входит в другой каталог.

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

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

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

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

    Файловая система FAT имеет существенное ограничение по поддержке больших объемов дискового пространства, предел равен 2 Гб.

    Новые поколения жестких дисков, имеющие большие объемы дискового пространства потребовали более совершенной файловой системы.

    Операционная система Windows содержит файловую систему FAT32, которая поддерживает жесткие диски объемом до двух терабайт.
    В FAT32 были расширены атрибуты файлов, позволяющие теперь хранить время и дату создания, модификации и последнего доступа к файлу или каталогу.
    Система допускает длинные имена файлов и пробелы в именах.
    Файловая система FAT32 поддерживается в операционных системах Windows XP и Windows Vista.

    Для названных операционных систем была разработана еще одна файловая система: NTFS (New Technology File System)

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

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

    Каждый файл на томе NTFS представлен записью в специальном файле – главной файловой таблице MFT (Master File Table). NTFS резервирует первые 16 записей таблицы размером около 1 Мб для специальной информации. Записи обеспечивают резервирование главной файловой таблицы, восстановление файлов, контролируют состояние кластеров, определяют атрибуты файлов.

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



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

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

    Вопросы для самопроверки.

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

    2. Что такое «файл»?

    3. Основные составляющие файловой структуры.

    4. Что такое кластер?

    5.Назовите основные параметры, характеризующие файл.

    6.Как образуется имя файла?

    7.Правила присваивания имен файлам в системе FAT.

    8.Почему возникает необходимость дефрагментации диска?

    9. Что такое каталог?

    10. Объясните понятия «маршрут», «путь».

    11.Для чего в именах файлов применяется расширение?

    12.Основное назначение файловой системы.

    13.Какие файловые системы поддерживаются операционными системами Windows XP, Windows Vista?

    Рано или поздно начинающий пользователь компьютера сталкивается с таким понятием, как файловая система (ФС). Как правило, впервые знакомство с данным термином происходит при форматировании носителя информации: логические диски и подключаемые носители (флешки, карты памяти, внешний жесткий диск).

    Перед форматированием операционная система Windows предлагает выбрать вид файловой системы на носителе, размер кластера, способ форматирования (быстрое или полное). Давайте разберемся, что же такое файловая система и для чего она нужна?

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

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

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

    Основные функции файловой системы

    Основными функциями файловой системы являются:

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

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

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

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

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

    1. FAT32
    2. ISO9660

    Последние две системы предназначены для работы с компакт дисками. Файловые системы Ext3 и Ext4 работают с операционными системами на основе Linux. NFS Plus – это ФС для операционных систем OS X, используемых в компьютерах фирмы Apple.

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

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

    Файловая система NTFS поддерживает работу с дисками объемом в сотни терабайт и размером одного файла до 16 терабайт.

    Файловая система FAT32 поддерживает диски до 8 терабайт и размер одного файла до 4Гб. Чаще всего данную ФС используют на флешках и картах памяти. Именно в FAT32 форматируют внешние накопители на заводе.

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

    Поделиться.

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

    1.Понятие, структура и работа файловой системы.

    Файловая система - совокупность (порядок, структура и содержание) организации хранения данных на носителях информации, которая непосредственно представляет доступ к хранимым данным, на бытовом уровне это совокупность всех файлов и папок на диске. Основными "единицами" файловой системы принято считать кластер, файл, каталог, раздел, том, диск.
    Совокупность нулей и единиц на носителе информации составляют кластера (минимальный размер места для хранения информации, также их принято называть понятием сектор, размер их кратен 512 байтам).
    Файлы - поименованная совокупность байтов, разделенная на сектора. В зависимости от файловой системы, файл может обладать различным набором свойств. Для удобства в работе с файлами используются их (символьные идентификаторы) имена.
    Для организации строения файловой системы файлы группируются в каталоги .
    Раздел - область диска созданная при его разметке и содержащая один или несколько отформатированных томов.
    Том - область раздела с файловой системой, таблицей файлов и областью данных. Один или несколько разделов составляют диск .
    Вся информация о файлах хранится в особой области раздела - таблице файлов. Таблица файлов позволяет ассоциировать числовые идентификаторы файлов и дополнительную информацию о них (дата изменения, права доступа, имя и т. д.) с непосредственным содержимым файла, хранящимся в другой области раздела.

    MBR (Master Boot Record) специальная область расположенная в начале диска - содержащая необходимую для BIOS информацию для загрузки операционной системы с жесткого диска.
    Таблица разделов (partition table) также расположена в начале диска, ее задача - хранить информацию о разделах: начало, длина, загрузка. На загрузочном разделе расположен загрузочный сектор (boot sector), хранящий программу загрузки операционной системы.

    Отсчет начинается от MBR (от сектора с номером 0) для всех основных (primary) разделов, как для обычных, так и для расширенного, и только для основных.
    Все обычные логические (not extended logical) разделы задаются сдвигом относительно начала того расширенного раздела, в котором они описаны.
    Все расширенные логические (extended logical) разделы задаются сдвигом относительно начала основного расширенного раздела (extended primary).

    Процесс загрузки операционной системы выглядит следующим образом:
    При включении компьютера управление процессором получает BIOS ,идет загрузка (boot) с винчестера, подгружается в оперативную память компьютера первый сектор диска (MBR) и передается ему управление).

    В MBR может быть записан как "стандартный" загрузчик,

    так и загрузчики типа LILO/GRUB.

    Стандартный загрузчик находит в таблице основных разделов первый раздел с флагом bootable (загрузочный), считывает его первый сектор (boot-сектор) и передает управление коду, записанному в этом boot-секторе. Если вместо стандартного загрузчика MBR стоит другой, то он не смотрит на флаг bootable, может загружать с любого раздела (прописанных в его настройках).

    Например для загрузки операционной системы Windows NT/2k/XP/2003 в boot-секторе записывается код, загружающий с текущего раздела в память основной загрузчик (ntloader).
    Для каждой файловой системы FAT16/FAT32/NTFS используется свой загрузчик. В корне раздела обязательно должен присутствовать файл ntldr. Если вы видете при попытке загрузить Windows сообщение "NTLDR is missing", то это как раз тот случай, когда файл ntldr отсутствует. Также для нормальной работы ntldr возможно нужны файлы bootfont.bin, ntbootdd.sys, ntdetect.com и правильно написанный boot.ini.

    Пример boot.ini

    C:\boot.ini

    timeout=8
    default=C:\gentoo.bin

    C:\gentoo.bin="Gentoo Linux"
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP (32-bit)" /fastdetect /NoExecute=OptIn
    multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Windows XP (64-bit)" /fastdetect /usepmtimer

    Пример конфигурационного файла grub.conf

    #grub.conf generated by anaconda
    #
    #Note that you do not have to rerun grub after making changes to this file
    #
    #NOTICE: You have a /boot partition. This means that
    #all kernel and initrd paths are relative to /boot/, eg.
    #root (hdO.O)
    #kernel /vmlinuz-version ro root=/dev/sda2
    #initrd /initrd-version.img
    #boot=/dev/sda default=0 timeout=5
    splashimage=(hdO,0)/grub/splash.xpm.gz
    hiddenmenu
    title Red Hat Enterprise Linux server (2.6.18-53.el 5)
    root (hdO.O)
    kernel /vmlinuz-2.6.18-53.el5 ro root=LABEL=/ rhgb quiet-
    initrd /initrd-2.6.18-53.el5.img

    Структура файла lilo.conf

    # LILO configuration file generated by "liloconfig"
    //Секция описания глобальных параметров
    # Start LILO global section
    //Место, куда записан Lilo. В данном случае это MBR
    boot = /dev/hda
    //Сообщение, которое выводится при загрузке
    message = /boot/boot_message.txt
    //Вывод приглашения
    prompt
    //Time Out на выбор операционной системы
    timeout = 1200
    # Override dangerous defaults that rewrite the partition table:
    change-rules
    reset
    # VESA framebuffer console @ 800x600x256
    //Выбор видеорежима отображения меню
    vga = 771
    # End LILO global section
    //Секция описания параметров загрузки windows
    # DOS bootable partition config begins
    other = /dev/hda1
    label = Windows98
    table = /dev/hda
    # DOS bootable partition config ends
    //Секция описания параметров загрузки QNX
    # QNX bootable partition config begins
    //Путь к операцционной системе
    other = /dev/hda2
    label = QNX
    table = /dev/hda
    # QNX bootable partition config ends
    //Секция описания параметров загрузки Linux
    # Linux bootable partition config begins
    //Путь к образу ядра
    image = /boot/vmlinuz
    root = /dev/hda4
    label = Slackware
    read-only
    # Linux bootable partition config ends


    2.Наиболее известные файловые системы.

    • Advanced Disc Filing System
    • AdvFS
    • Be File System
    • CSI - DOS
    • Encrypting File System
    • Extended File System
    • Second Extended File System
    • Third Extended File System
    • Fourth Extended File System
    • File Allocation Table (FAT)
    • Files - 11
    • Hierarchical File System
    • HFS Plus
    • High Perfomance File System (HPFS)
    • ISO 9660
    • Journaled File System
    • Macintosh File System
    • MINIX file system
    • MicroDOS
    • Next3
    • New Implementation of a Log-structured F (NILFS)
    • Novell Storage Services
    • New Technology File System (NTFS)
    • Protogon
    • ReiserFS
    • Smart File System
    • Squashfs
    • Unix File System
    • Universal Disk Format (UDF)
    • Veritas File System
    • Windows Future Storage (WinFS)
    • Write Anywhere File Layout
    • Zettabyte File System (ZFS)

    3.Основные характеристики файловых систем.

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

    Максимальный (минимальный) размер тома;
    - Максимальное (минимальное) количество файлов в корневом каталоге;
    - Максимальное количество файлов в некорневом каталоге;
    - Безопасность на уровне файлов;
    - Поддержка длинных имен файлов;
    - Самовосстановление;
    - Сжатие на уровне файлов;
    - Ведение журналов транзакций;

    4.Краткое описание наиболее распространенных файловых систем FAT, NTFS, EXT.

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

    FAT (file allocation table) означает «таблица размещения файлов».
    В файловой системе FAT логическое дисковое пространство любого логического диска делится на две области:
    - системную область;
    - область данных.
    Системная область создается при форматировании и обновляется при манипулировании файловой структурой. Область данных содержит файлы и каталоги, подчиненные корневому, и доступна через пользовательский интерфейс. Системная область состоит из следующих компонентов:
    - загрузочной записи;
    - зарезервированных секторов;
    - таблицы размещения файлов (FAT);
    - корневого каталога.
    Таблица размещения файлов представляет собой карту (образ) области данных, в которой описывается состояние каждого участка области данных. Область данных разбивается на кластеры. Кластер – один или несколько смежных секторов в логическом дисковом адресном пространстве (только в области данных). В таблице FAT кластеры, принадлежащие одному файлу (некорневому каталогу), связываются в цепочки. Для указания номера кластера в системе управления файлами FAT16 используется 16-битовое слово, следовательно, можно иметь до 65536 кластеров.
    Кластер – минимальная адресуемая единица дисковой памяти, выделяемая файлу или некорневому каталогу. Файл или каталог занимает целое число кластеров. Последний кластер при этом может быть задействован не полностью, что приведет к заметной потере дискового пространства при большом размере кластера.
    Так как FAT используется при доступе к диску очень интенсивно, она загружается в ОЗУ и находится там максимально долго.
    Корневой каталог отличается от обычного каталога тем, что он размещается в фиксированном месте логического диска и имеет фиксированное число элементов. Для каждого файла и каталога в файловой системе хранится информация в соответствии со следующей структурой:
    - имя файла или каталога – 11 байт;
    - атрибуты файла – 1 байт;
    - резервное поле – 1 байт;
    - время создания – 3 байта;
    - дата создания – 2 байта;
    - дата последнего доступа – 2 байта;
    - зарезервировано – 2 байта;
    - время последней модификации – 2 байта;
    - номер начального кластера в FAT – 2 байта;
    - размер файла – 4 байта.
    Структура системы файлов является иерархической.

    Файловая система FAT32.
    FAT32 является полностью независимой 32-разрядной файловой системой и содержит многочисленные усовершенствования и дополнения по сравнению с FAT16. Принципиальное отличие FAT32 заключается в более эффективном использовании дискового пространства: FAT32 использует кластеры меньшего размера, что приводит к экономии дискового пространства.
    FAT32 может перемещать корневой каталог и использовать резервную копию FAT вместо стандартной. Расширенная загрузочная запись FAT32 позволяет создавать копии критических структур данных, что повышает устойчивость дисков к нарушениям структуры FAT по сравнению с предыдущими версиями. Корневой каталог представляет собой обычную цепочку кластеров, поэтому может находиться в произвольном месте диска, что снимает ограничение на размер корневого каталога.


    Файловая система NTFS.
    Файловая система NTFS (New Technology File System) содержит ряд значительных усовершенствований и изменений, существенно отличающих ее от других файловых систем. С точки зрения пользователей файлы по-прежнему хранятся в каталогах, но работа на дисках большого объема в NTFS происходит намного эффективнее:
    - имеются средства для ограничения доступа к файлам и каталогам;
    - введены механизмы, существенно повышающие надежность файловой системы;
    - сняты многие ограничения на максимальное количество дисковых секторов и/или кластеров.

    Основные характеристики файловой системы NTFS:
    - надежность. Высокопроизводительные компьютеры и системы совместного использования должны обладать повышенной надежностью, для этой цели введен механизм транзакций, при котором ведется журналирование файловых операций;
    - расширенная функциональность. В NTFS введены новые возможности: усовершенствованная отказоустойчивость, эмуляция других файловых систем, мощная модель безопасности, параллельная обработка потоков данных, создание файловых атрибутов, определенных пользователем;
    - поддержка стандарта POSIX. К числу базовых средств относятся необязательное использование имен файлов с учетом регистра, хранение времени последнего обращения к файлу и механизм альтернативных имен, позволяющий ссылаться на один и тот же файл по нескольким именам;
    - гибкость. Распределение дискового пространства отличается большой гибкостью: размер кластера может изменяться от 512 байт до 64 Кбайт.
    NTFS хорошо работает с большими массивами данных и большими томами. Максимальный размер тома (и файла) – 16 Эбайт. (1 Эбайт равен 2**64 или 16000 млрд. гигабайт.) Количество файлов в корневом и некорневом каталогах не ограничено. Поскольку в основу структуры каталогов NTFS заложена эффективная структура данных, называемая «бинарным деревом», время поиска файлов в NTFS не связано линейной зависимостью с их количеством.
    Система NTFS обладает некоторыми средствами для самовосстановления и поддерживает различные механизмы проверки целостности системы, включая ведение журнала транзакций, позволяющий отследить по системному журналу файловые операции записи.
    Файловая система NTFS поддерживает объектную модель безопасности и рассматривает все тома, каталоги и файлы как самостоятельные объекты NTFS. Права доступа к томам, каталогам и файлам зависит от учетной записи пользователя и той группы, к которой он принадлежит.
    Файловая система NTFS обладает встроенными средствами сжатия, которые можно применять к томам, каталогам и файлам.

    Файловая система Ext3.
    Файловая система ext3 может поддерживать файлы размером до 1 ТБ. С Linux-ядром 2.4 объём файловой системы ограничен максимальным размером блочного устройства, что составляет 2 терабайта. В Linux 2.6 (для 32-разрядных процессоров) максимальный размер блочных устройств составляет 16 ТБ, однако ext3 поддерживает только до 4 ТБ.
    Ext3 имеет хорошую совместимость с NFS и не имеет проблемы с производительностью при дефиците свободного дискового пространства.Еще одно достоинство ext3 происходит из того, что она основана на коде ext2. Дисковый формат ext2 и ext3 идентичен; из этого следует, что при необходимости ext3 filesystem можно монтировать как ext2 без каких либо проблем. И это еще не все. Благодаря факту, что ext2 и ext3 используют идентичные метаданные, имеется возможность оперативного обновления ext2 в ext3.
    Надежность Ext3
    В дополнение к ext2-compatible, ext3 наследует другие преимущества общего формата metadata. Пользователи ext3 имеют в своем распоряжении годами проверенный fsck tool. Конечно, основная причина перехода на journaling filesystem - отказ от необходимости периодических и долгих проверок непротиворечивости метаданных на диске. Однако "журналирование" не способно защитить от сбоев ядра или повреждения поверхности диска (или кое-чего подобного). В аварийной ситуации вы оцените факт преемственности ext3 от ext2 с ее fsck.
    Журнализация в ext3.
    Теперь, когда имеется общее понимание проблемы, посмотрим, как ext3 осуществляет journaling. В коде журнализации для ext3 используется специальный API, называемый Journaling Block Device layer или JBD. JBD был разработан для журнализации на любых block device. Ext3 привязана к JBD API. При этом код ext3 filesystem сообщает JBD о необходимости проведения модификации и запрашивает у JBD разрешение на ее проведение. Журналом управляет JBD от имени драйвера ext3 filesystem. Такое соглашение очень удобно, так как JBD развивается как отдельный, универсальный объект и может использоваться в будущем для журналирования в других filesystems.
    Защита данных в Ext3
    Теперь можно поговорить о том, как ext3 filesystem обеспечивает журнализацию и data, и metadata. Фактически в ext3 имеются два метода гарантирования непротиворечивости.
    Первоначально ext3 разрабатывалась для журналирования full data и metadata. В этом режиме (называется "data=journal" mode), JBD журналирует все изменения в filesystem, связанные как с data, так и с metadata. При этом JBD может использовать журнал для отката и восстановления metadata и data. Недостаток "полного" журналирования в достаточно низкой производительности и расходе большого объема дискового пространства под журнал.
    Недавно для ext3 был добавлен новый режим журналирования, который сочетает высокую производительность и гарантию непротиворечивости структуры файловой системы после сбоя (как у "обычных" журналируемых файловых систем). Новый режим работы обслуживает только metadata. Однако драйвер ext3 filesystem по-прежнему отслеживает обработку целых блоков данных (если они связаны с модификацией метаданных), и группирует их в отдельный объект, называемый transaction. Транзакция будет завершена только после записи на диск всех данных. "Побочный" эффект такой "грубой" методики (называемой "data=ordered" mode) - ext3 обеспечивает более высокую вероятность сохранности данных (по сравнению с "продвинутыми" журналируемыми файловыми системами) при гарантии непротиворечивости metadata. При этом происходит журналирование изменений только структуры файловой системы. Ext3 использует этот режим по умолчанию.
    Ext3 имеет множество преимуществ. Она разработана для максимальной простоты развертывания. Она основана на годами проверенном коде ext2 и получила "по наследству" замечательный fsck tool. Ext3 в первую очередь предназначена для приложений, не имеющих встроенных возможностей по гарантированию сохранности данных. В целом, ext3 - замечательная файловая система и достойное продолжение ext2.Есть еще одна характеристика, положительно отличающая ext3 от остальных journaled filesystems под Linux - высокая надежность.

    Файловая система ext4 является достойным эволюционным продолжением системы ext.