- •Вопрос 1. Логическая организация файлов. Атрибуты и данные файла. Типы файлов. Операции с файлами.
- •Файл представляет собой последовательность логических записей разной длины.
- •Rename (переименование).
- •Вопрос 2.Модели хранения информации в файловых системах. Надежность и непротиворечивость файловой системы. Решение проблемы непротиворечивости файловых систем.
- •1.Традиционные фс.
- •3.Транзакционная файловая система.
- •Вопрос 3. Методы физической реализации хранения атрибутов и данных файлов.
- •1. Непрерывные файлы
- •2. Связные списки.
- •3. Связный список при помощи таблицы в памяти
- •Вопрос 4. Концепция файловой системы fat. Структура логического диска с файловой системой fat.
- •Вопрос 5. Основные характеристики файловой системы ntfs.
- •Вопрос 6. Структура раздела с файловой системой ntfs.
- •Вопрос 7. Главная файловая таблица mft файловой системы ntfs. Структура таблицы mft.
- •Вопрос 8. Атрибуты файлов в файловой системе ntfs. Структура записи mft.
- •Вопрос 9. Хранение данных в файловой системе ntfs. Потоки данных.
- •Вопрос 10. Структура файловой системы unix. Типы файлов ос unix.
- •Вопрос 11. Жесткая и символическая связь имен с данными файла в файловой системе unix.
- •Вопрос 12. Структура индексного узла файловой системы unix. Адресация блоков данных.
- •Вопрос 13. Архитектура Windows 2000/xp. Компоненты исполнительной системы.
- •Вопрос 14. Объектная модель Windows 2000/xp и менеджер объектов.
- •Вопрос 15. Управление оперативной и виртуальной памятью в Microsoft Windows 2000/xp.
- •Вопрос 16. Управление процессами и потоками в Windows 2000/xp.
- •Вопрос 17. Состояния потока в Windows 2000/xp.
- •Вопрос 18. Общая архитектура системы unix. Модули ядра.
- •Вопрос 19.Системные вызовы и выполнение кода ядра ос unix.
- •Вопрос 20.Управлене процессами в ос unix.
- •Вопрос 21. Состояния процесса в ос Unix.
- •Вопрос 22.Распределение памяти процессов в unix.
1.Традиционные фс.
Традиционные файловые системы перезаписывают данные на физическом носителе. Поэтому, например, при снижении производительности между временем выделения блока данных и его присвоением каталогу файловая система остается в противоречивом состоянии. Исторически эта проблема решалась с помощью команды fsck, которая использовалась для просмотра и проверки состояния файловой системы с попыткой устранения всех противоречий. Эта задача была особенно сложной для администраторов и всегда вызывала сопутствующие затруднения.
2.Журналирование.
В процессе журналирования операции регистрируются в отдельном журнале, который при необходимости может быть безопасно воспроизведен в случае полного отказа системы. Этот процесс влечет за собой дополнительные расходы, поскольку запись данных выполняется дважды и часто ведет к появлению новых проблем, например, когда не удается корректно воспроизвести журнал.
3.Транзакционная файловая система.
В транзакционной файловой системе любая последовательность операций либо полностью выполняется, либо полностью игнорируется. Этот механизм обеспечивает невозможность повреждения файловой системы в результате непредвиденного отключения электропитания или полного отказа системы. Поэтому в этой системе эквивалент команды fsck отсутствует. Несмотря на то, что последние записанные элементы данных могут быть потеряны, сама файловая система всегда остается целостной. Это означает, что ее состояние на диске всегда является непротиворечивым.
Вопрос 3. Методы физической реализации хранения атрибутов и данных файлов.
Физическая реализация хранения файлов = хранение атрибутов файла + хранение данных файла
Вероятно, наиболее важным моментом в реализации хранения файлов является учет соответствия блоков диска файлам.
Для определения того, какой блок какому файлу принадлежит, в различных операционных системах применяются различные методы.
1. Непрерывные файлы
Простейшей схемой выделения файлам определенных блоков на диске является система, в которой файлы представляют собой непрерывные наборы соседних блоков диска. У непрерывных файлов есть два существенных преимущества.
Во-первых, такую систему легко реализовать, так как системе, чтобы определить, какие блоки принадлежат тому или иному файлу, нужно следить всего лишь за двумя числами: номером первого блока файла и числом блоков в файле.
Во-вторых, при работе с непрерывными файлами производительность просто превосходна, так как весь файл может быть прочитан с диска за одну операцию. Требуется только одна операция поиска (для первого блока).
К сожалению, у такого способа распределения дискового пространства имеется серьезный недостаток: со временем диск становится фрагментированным.
Вначале эта фрагментация не представляет проблемы, так как каждый новый файл может быть записан в конец диска, вслед за предыдущим файлом.
Однако в конце концов диск заполнится и либо потребуется специальная операция по уплотнению используемого пространства диска, либо надо будет изыскать способ использовать свободное пространство на месте удаленных файлов. Для повторного использования освободившегося пространства потребуется содержать список пустых участков, что в принципе выполнимо. Однако при создании нового файла будет необходимо знать его окончательный размер, чтобы выбрать для него участок подходящего размера.