- •2 "Кратчайшая задача - первая"
- •1 Пренебрежением проблемой в целом (страусовый алгоритм)
- •2 Обнаружение и устранение взаимоблокировок
- •3 Динамическое избежание взаимоблокировок
- •4 Предотвращение четырех условий, необходимых для взаимоблокировок
- •Страничная организация памяти
- •1 Однозадачная система без подкачки на диск
- •2 Распределение памяти с фиксированными разделами.
- •3 Распределение памяти динамическими разделами
- •1 Свопинг (подкачка)
- •2 Виртуальная память
- •1. Политика распределения памяти
- •2 Размеры страниц
- •3 Совместно используемые страницы
- •4 Политика очистки страниц
- •1 Обработчики прерываний
- •2 Драйвера устройств
- •3 Независимое от устройств программное обеспечение ввода-вывода
- •4 Программное обеспечение ввода-вывода пространства пользователя
- •1 Устройства ввода-вывода
- •2 Контроллеры устройств
- •3 Отображаемый на адресное пространство памяти ввод-вывод
- •1 Задачи программного обеспечения ввода-вывода
- •2 Программный ввод-вывод
- •3 Управляемый прерываниями ввод-вывод
- •4 Ввод-вывод с использованием dma
- •1 Одноуровневые каталоговые системы.
- •2 Двухуровневые каталоговые системы.
- •3 Иерархические каталоговые системы.
- •11.2.5 Операции с каталогами
- •1 Непрерывные файлы
- •2 Связные списки
- •3 Связные списки при помощи таблиц в памяти
- •1 Размер блока
- •2 Учет свободных блоков
- •3 Дисковые квоты
- •Редактор RegEdit и структура реестра
11.2.5 Операции с каталогами
Основные системные вызовы для работы с каталогами:
Create - создать каталог
Delete - удалить каталог
OpenDir - закрыть каталог
CloseDir - закрыть каталог
ReadDir - прочитать следующий элемент открытого каталога
Rename - переименование каталога
Link - создание жесткой ссылки, позволяет файлу присутствовать сразу в нескольких каталогах.
Unlink - удаление ссылки из каталога
Шифрование файлов
Шифрование файлов в NTFS
Любую информацию, если она не зашифрована, можно прочитать, получив доступ. Поэтому самая надежная защита информации от несанкционированного доступа - шифрование.
Даже если у вас украдут винчестер, прочесть данные не смогут, (большинство не сможет).
Если файл помечен как шифрованный, то система автоматически шифрует при записи, а при чтении происходит дешифрация.
Шифрование и дешифрование выполняет не сама NTFS, а специальный драйверEFS(EncryptingFileSystem).
Каждый блок шифруется отдельно.
В Windows2000 используется случайно сгенерированный 128-разрядный ключ для каждого файла. Этот ключ шифруется открытым ключом пользователя и сохраняется на диске.
Реализация файловой системы.
Структура файловой системы
Суперблок - содержит ключевые параметры файловой системы.
Реализация файлов
Основная проблема - сколько, и какие блоки диска принадлежат тому или иному файлу.
1 Непрерывные файлы
Выделяется каждому файлу последовательность соседних блоков.
5 непрерывных файлов на диске и состояние после удаления двух файлов
Преимущества такой системы:
Простота - нужно знать всего два числа, это номер первого блока и число блоков.
Высокая производительность - требуется только одна операция поиска, и файл может быть прочитан за одну операцию
Недостатки: Диск сильно фрагментируется
2 Связные списки
Файлы хранятся в разных не последовательных блоках, и с помощью связных списков можно собрать последовательно файл.
Преимущества:
Нет потерь дискового пространства на фрагментацию
Нужно хранить информацию только о первом блоке
Недостатки:
Уменьшение быстродействия - для того чтобы получить информацию о всех блоках надо перебрать все блоки.
Уменьшается размер блока из-за хранения служебной информации
3 Связные списки при помощи таблиц в памяти
Чтобы избежать два предыдущих недостатка, стали хранить всю информацию о блоках в специальной таблице загружаемой в память. FAT (File Allocation Table)- таблица размещения файлов загружаемая в память.
Здесь тоже надо собирать блоки по указателям, но работает быстрее, т.к. таблица загружена в память.
Основной не достаток этого метода - всю таблицу надо хранить в памяти. Например, для 20Гбайт диска, с блоком 1Кбайт (20 млн. блоков), потребовалась бы таблица в 80 Мбайт (при записи в таблице в 4 байта).
Реализация каталогов
При открытии файла используется имя пути, чтобы найти запись в каталоге. Запись в каталоге указывает на адреса блоков диска.
В зависимости от системы это может быть:
дисковый адрес всего файла (для непрерывных файлов)
номер первого блока (связные списки)
номер i-узла
Одна из основных задач каталоговой системы преобразование ASCII-имени в информацию, необходимую для нахождения данных.
Файлы. Организация дискового пространства