Аналитическая часть.
Обеспечение целостности файловой системы в современных операционных системах
В первом случае список дефектных блоков хранится в контроллере диска, при инициализации, контроллер считывает его и замещает эти блоки на резервные, и все запросы будут идти к резервным блокам. Обычно резервные блоки располагаются на внешних цилиндрах дискового накопителя. Если сбойный блок находится на внутреннем цилиндре, то при обращении к нему, считывающая головка будет перемещаться к внешним… Читать ещё >
Аналитическая часть. Обеспечение целостности файловой системы в современных операционных системах (реферат, курсовая, диплом, контрольная)
Поясните, что понимается под целостностью файловой структуры.
Файловая структура — это совокупность файлов и взаимосвязей между ними.
Принципы размещения файлов, каталогов и системной информации на реальном устройстве описываются физической организацией файловой системы.
Основные критерии эффективности физической организации файлов являются:
- · Скорость доступа к данным.
- · Объем адресной информации файла.
- · Степень фрагментированности дискового пространства.
- · Максимально возможный размер файла.
Система управления файлами должна иметь всю информацию о расположении и структуре файлов. Эту информацию она получает из основных структур данных: каталога и файловой информационной таблицы.
Основа файловой структуры:
- · Справочники (Directory) — таблица идентификаторов и ссылок к соответствующим элементам данных.
- · Списки (Lists) — структура данных представляет собой логические связи последовательных записей — элементов списка (файловой информационной таблицы).
В простейшем случае на диске создается справочник всех содержащихся на нем файлов для обеспечения доступа к нему (иначе пришлось бы просматривать весь диск). Развитые файловые структуры поддерживают древовидную (иерархическую) файловую структуру.
Запись справочника (каталога), в общем виде, содержит:
- · Символическое имя файла.
- · Местонахождение файла.
- · Уникальный идентификатор файла (один для всех пользователей).
- · Тип доступа.
- · Дату последнего изменения.
В файловой информационной таблице содержится информация о расположении файла на диске.
Разрушение файловой системы зачастую более опасно, чем разрушение компьютера. Поэтому файловые системы должны разрабатываться с учетом подобной возможности.
Важный аспект надежной работы файловой системы — контроль ее целостности. В результате файловых операций блоки диска могут считываться в память, модифицироваться и затем записываться на диск.
Причем многие файловые операции затрагивают сразу несколько объектов файловой системы. Например, копирование файла предполагает выделение ему блоков диска, изменение содержимого каталога и т. д. В течение короткого периода времени между этими шагами информация в файловой системе оказывается непредсказуемой. И если вследствие непредсказуемой остановки системы на диске будут сохранены изменения только для части этих объектов, файловая система на диске может быть остановлена в несовместимом состоянии.
В результате могут возникнуть нарушения логики работы с данными, например, появиться «потерянные» блоки диска, которые не принадлежат ни одному файлу и в то же время помечены как занятые.
М.б. и другие нарушения, например, может появиться блок, принадлежащий одновременно нескольким файлам — «пересекающиеся» блоки.
В современных ОС предусмотрены меры, которые позволяют свести к минимуму ущерб от порчи файловой системы и затем полностью или частично восстановить ее целостность.
Если нарушение произошло, то для устранения проблемы несовместимости можно прибегнуть к специальным утилитам ОС (chkdsk, scandisk и др.) которые проверяют целостность файловой системы.
Они могут запускаться вручную или в автоматическом режиме после сбоя и осуществляют многократное сканирование структуры файловой системы в поисках ошибок и противоречий.
В реальной файловой системе эта процедура может занимать очень длительное время, это зависит от разных факторов: количества ошибок, объема дискового пространства и т. д.
Необходимо уточнить, что дефектные блоки после лечения не могут изменить свое месторасположение. В каждом блоке данных хранится контрольная сумма этих данных.
Под «плохими» блоками обычно понимают блоки диска, в которых вычисленная контрольная сумма передаваемых данных, не совпадает с хранимой контрольной суммой этих данных. Дефектные блоки обычно появляются в процессе работы по разным причинам: сбои в работе ОС, отключение электроснабжения, физический износ и другие.
Есть два способа решения этой проблемы: на аппаратном уровне и на уровне файловой системы.
В первом случае список дефектных блоков хранится в контроллере диска, при инициализации, контроллер считывает его и замещает эти блоки на резервные, и все запросы будут идти к резервным блокам. Обычно резервные блоки располагаются на внешних цилиндрах дискового накопителя. Если сбойный блок находится на внутреннем цилиндре, то при обращении к нему, считывающая головка будет перемещаться к внешним цилиндрам для чтения резервного блока, что накладывает дополнительную нагрузку на дисковую систему и является минусом этого способа.
В случае решения проблемы на уровне файловой системы, такой проблемы нет. Создается файл, в котором содержится список дефектных блоков, и они становятся недоступны прикладным программам и при записи данных игнорируются.
Еще одним способом подержания целостности является способ, заимствованный из СУБД который называется — журнализация или журналирование. Все действия с объектами при файловых операциях протоколируются, и если происходит сбой, то имея протокол, можно осуществить откат к предыдущему, исправному состоянию.
К сожалению, необходимо принять тот факт, что не существует никаких средств, гарантирующих полную сохранность информации в файлах, и в тех случаях, когда целостность данных нужно гарантировать с высокой степенью надежности, применяют дорогостоящие системы дублирования (например RAID системы).
Таким образом, исправное состояние файловой системы (как физическое, так и логическое) и совокупность мер (утилиты для проверки диска, резервное копирование, и другие) для поддержания его в должном виде и отвечает за целостность файловой структуры в целом.