Пользователь также может открывать файл в синхронном режиме, после чего все операции записи в этот файл будут производиться синхронно. Некоторые реализации системы используют демон обновления (в SVR4 это процесс под названием fsflush), который периодически (по умолчанию каждые 30 секунд) вызывает sync для очистки кэша.
Также может иметь смысл заглянуть на сайт sapitorg.ru, ведь именно там можно узнать много нового на тему http://www.sapitorg.ru/catalog/ventilyatsiya/ventilacionnie-reshetki/. Тема вентиляционные решетки может показаться на первый взгляд незначительной и даже не тематичной. Но стоит посетить сайт sapitorg.ru, и тема вентиляционные решетки начинает проявлять себя с неожиданной стороны и вызывает всё больший интерес. Дело в том, что тема вентиляционные решетки очень подробно представлена на сайте sapitorg.ru. Трудно найти более детальное освещение темы вентиляционные решетки чем это сделано на сайте sapitorg.ru. Спасибо сайту sapitorg.ru за такое доскональное преподнесение темы вентиляционные решетки.
При потере метаданных файловая система теряет свою целостность. Изменения в метаданных производят многие файловые операции; если при этом какие-либо из модификаций не будут сохранены на диск при крахе ОС, файловая система может оказаться поврежденной. Например, при добавлении ссылки к файлу происходит запись элемента нового имени в соответствующий каталог и увеличение счетчика ссылок в индексном дескрипторе.
Представьте, что крах системы произошел как раз в тот момент, когда были записаны изменения в каталоге, но внесенные в индексный дескриптор данные не сохранены на диск. После перезагрузки системы мы увидим два элемента каталогов, указывающих на файл, имеющий всего одну ссылку. Если этот файл будет удален, то его индексный дескриптор и занимаемые блоки будут освобождены, так как значение счетчика ссылок уменьшилось теперь до значения «ноль». Второе вхождение будет указывать на незанятый (или указывающий уже на другой файл) индексный дескриптор. Возникновение подобных ситуаций в системе необходимо уметь предупреждать.
Существуют две методики защиты от повреждения файловой системы, применяемые в UNIX. Ядро выбирает определенный порядок записи метаданных, уменьшающий влияние крахов системы. Представьте, что получится, если в предыдущем примере поменять порядок операций записи: после краха системы дескриптор стал уже обновленным, но не произошла запись в каталог. После перезагрузки такой файл будет иметь дополнительную ссылку, но при этом оригинальное вхождение каталога окажется правильным и доступ к файлу может быть продолжен без каких-либо проблем. Если файл будет удален, пропадет элемент каталога, но не освободятся блоки и индексный дескриптор, так как на этот файл останется еще одна ссылка. Такой подход, конечно, не защищает от повреждений, но проводит к меньшей степени вреда, чем в исходном примере.
Порядок записи метаданных должен определяться очень внимательно.
Проблема порядка выполнения остается по-прежнему, потому что дисковый драйвер обслуживает запросы не в порядке их получения. Чтобы указать порядок выполнения запросов, у ядра есть единственное средство — сделать операции синхронными. Следовательно, в описанном примере ядро произведет запись индексного дескриптора на диск, подождет завершения этой операции и затем вызовет запись в каталог. Ядро использует синхронную запись метаданных во многих операциях, требующих изменения нескольких взаимосвязанных объектов
Опубликовал katy
July 11 2015 15:22:37 ·
0 Комментариев ·
2650 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.