Управление устройствами ввода-вывода Тема 4. Управление вводом-выводом.

Презентация:



Advertisements
Похожие презентации
Операционные системы и среды. Схема устройства жесткого диска Дорожка N Сектор (блок) Пластина 1 Пластина 2 Цилиндр 0 сторона Диск – одна или несколько.
Advertisements

Операционные системы. Проверка д / з В чем состоит магистрально - модульный принцип построения компьютера ? Изобразите схему архитектуры компьютера. В.
Учебный курс Операционные среды, системы и оболочки Лекция 11 Лекции читает доктор технических наук, профессор Назаров Станислав Викторович.
Операционные системы, среды и оболочки Ввод-вывод. Файловая система.
Форматирование – создание физической и логической структуры диска Формирование физической структуры диска состоит в создании на диске концентрических дорожек,
Каждая наука лишь тогда достигает своего совершенства, когда породнится с математикой. Кант СИСТЕМНОЕ И ПРИКЛАДНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ Тема лекции:
Логическая структура носителя информации. ЛОГИЧЕСКАЯ СТРУКТУРА НОСИТЕЛЯ ИНФОРМАЦИИ Логическая структура носителя информации в файловой системе FAT имеет.
Лекция 11 Файловые системы. FAT32 File Allocation Table «таблица размещения файлов» Максимально возможное число кластеров в FAT32 равно кластеров,
Учебный курс Операционные среды, системы и оболочки Лекция 12 Лекции читает доктор технических наук, профессор Назаров Станислав Викторович.
Организация данных на жестком диске компьютера Макаренков Д.Е.
Операционные системы Файловые системы (часть 2). Организация ФС UNIX. Виды файлов Обычный файл (regular file) Каталог (directory) Специальный файл устройств.
1 ПОНЯТИЕ ФАЙЛОВОЙ СИСТЕМЫ. 2 ЛОГИЧЕСКАЯ ОРГАНИЗАЦИЯ ФАЙЛОВОЙ СИСТЕМЫ.ЛОГИЧЕСКАЯ ОРГАНИЗАЦИЯ ФАЙЛОВОЙ СИСТЕМЫ 3 ФИЗИЧЕСКАЯ ОРГАНИЗАЦИЯ ФАЙЛОВОЙ СИСТЕМЫ.ФИЗИЧЕСКАЯ.
Файлы и файловая система Шинкаренко Евгений Александрович МОУ Гимназия 2 г. Черняховск Калининградской области.
1 Структура диска Файловые системы ОС Windows NT/2000/XP/7 - FAT (File Allocation Table) - NTFS (New Technology File System) Повторение.
1 БАЗЫ ДАННЫХ ФАЙЛЫ И ФАЙЛОВЫЕ СИСТЕМЫ. 2 ДО ФАЙЛОВЫХ СИСТЕМ Данные Управление ПРОГРАММА 2 Данные Управление ПРОГРАММА 3 Данные Управление ПРОГРАММА 1.
Логическая структура дисков Физическая структура – совокупность созданных концентрических дорожек на поверхности диска, разделенных на сектора.
Форматирование и дефрагментация диска.. Форматирование – создание физической и логической структуры диска Формирование физической структуры диска состоит.
Основные характеристики операционных систем. Операционная система базовый комплекс программ, обеспечивающий управление аппаратными средствами компьютера,
Операционная система. Базовые понятия Операционная система – это комплекс программ, обеспечивающий контроль за существованием, распределением и использованием.
Логическая структура носителя информации. ЛОГИЧЕСКАЯ СТРУКТУРА НОСИТЕЛЯ ИНФОРМАЦИИ Логическая структура носителя информации в файловой системе FAT имеет.
Транксрипт:

Управление устройствами ввода-вывода Тема 4

Управление вводом-выводом

Основные функции подсистемы ввода-вывода 1.Организация параллельной работы устройств ввода- вывода и процессора. 2. Согласование скоростей обмена и кэширование данных. 3. Разделение устройств и данных между процессами. 4. Обеспечение удобного логического интерфейса между устройствами и остальной частью системы. 5. Поддержка широкого спектра драйверов с возможностью простого включения в систему нового драйвера. 6. Динамическая загрузка и выгрузка драйверов. 7. Поддержка нескольких файловых систем. 8. Поддержка синхронных и асинхронных операций ввода-вывода.

Системный вызов для выполнения операции ввода-вывода Запрос состояния контроллера ввода-вывода Проверка состояния Не готов Готов Ошибка Получить слово от контроллера ввода-вывода Записать слово в память Все выполнено ? Вызов драйвера Текущая команда программы НетДа Следующая команда 1.Программируемый ввод-вывод без прерываний Процессор посылает необходимые команды контроллеру ввода-вывода и переводит процесс в состояние ожидания завершения операции ввода-вывода.

Системный вызов для выполнения операции ввода-вывода Запрос состояния контроллера ввода-вывода Проверка состояния Не готов Готов Ошибка Получить слово от контроллера ввода-вывода Записать слово в память Все выполнено ? Вызов драйвера. Передача команды контроллеру. Текущая команда программы НетДа Следующая команда 2. Ввод-вывод, управляемый прерываниями. Процессор посылает необходимые команды контроллеру ввода- вывода и продолжает выполнять процесс, если нет необходимости в ожидании выполнения операции. В противном случае процесс приостанавливается до получения прерывания, а процессор переключается на выполнение другого процесса. Выполнение других действий ПРЕРЫВАНИЕ

Жесткий диск Контроллер диска Регистры контроллера Контроллер прерываний Центральный процессор 1 Драйвер программирует контроллер и переходит в состояние ожидания 2 Контроллер запускает устройство 3 Контроллер завершил операцию 3 4 Возбуждение сигнала прерывания 5 5 Обработка прерывания, перемещение данных в область программы, передача управления программе

Запрос состояния контроллера ввода-вывода Проверка состояния Не готов Готов Ошибка Запуск контроллера. Перенос данных в буфер. Сигнал в DMA. Запрос от DMA на перенос данных. Запись слова в память контроллером. Сигнал в DMA. Все выполнено ? Системный вызов для выполнения операции ввода-вывода. Вызов драйвера. Программирование DMA Нет Да Прерывание Выполнение других действий 3. Прямой доступ к памяти. Модуль прямого доступа к памяти управляет обменом данных между основной памятью и контроллером ввода-вывода. Процессор посылает запрос на передачу блока данных модулю прямого доступа к памяти, а прерывание происходит только после передачи всего блока данных. Прямой доступ к памяти (англ. Direct Memory Access, DMA) режим обмена данными между устройствами или же между устройством и основной памятью (RAM), без участия ЦП. В результате скорость передачи увеличивается. DMA увеличивает адрес памяти и уменьшает счетчик байтов

1 Адрес Счетчик Управляющий регистр Центральный процессор Прерывание после выполнения 1 1 Центральный процессор программирует DMA 1 3 DMA запрашивает перенос данных 5 45 Подтверждение Буфер Диск DMA Перенос данных Оперативная память Контроллер Шина Работа DMA-контроллера 2

Операционная система Драйвер Контроллер Внешнее устройство Интерфейс драйвер – устройство (Driver Device Interface, DDI) Интерфейс драйвер – ядро (Driver Kernel Interface, DKI) Аппаратный низкоуровневый интерфейс контроллер - устройство

Функции драйвера 1.Обработка запросов записи-чтения от программного обеспечения управления устройствами. Постановка запросов в очередь 2.Проверка входных параметров запросов и обработка ошибок 3.Инициализация устройства и проверка статуса устройства 4.Управление энергопотреблением устройства. 5.Регистрация событий в устройстве 6.Выдача команд устройству и ожидание их выполнения возможно в блокированном состоянии до поступления прерывания от устройства 7.Проверка правильности завершения операции 8.Передача запрошенных данных и статуса завершенной операции 9.Обработка нового запроса при незавершенном предыдущем запросе (для реентерабельных драйверов)

Многослойная модель подсистемы ввода-вывода

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

Один файл – одно полное имя Корневой каталог Файлы Корневой каталог User 1User 2 User 3 ДЕРЕВО Корневой каталог User 1 User 2 User 3 СЕТЬ Один файл – много полных имен Файловый каталог является связующим звеном между системой управления файлами и набором файлов

АтрибутЗначение Тип файла Обычный, каталог, специальный и т. д. Владелец файла Текущий владелец Создатель файла Идентификатор пользователя, создавшего файл Пароль Пароль для получения доступа к файлу Время Создания, последнего доступа, последнего изменения Текущий размер файла Количество байтов в записи Максимальный размер Количество байтов, до которого можно увеличивать размер Флаг «только чтение» 0 – чтение-запись, 1 – только чтение Флаг «скрытый» 0 – нормальный, 1 – не показывать в перечне файлов каталога Флаг «системный» 0 – нормальный, 1 – системный Флаг «архивный» 0 – заархивирован, 1- требуется архивация Флаг ASCII/двоичный 0 – ASCII, 1 – двоичный Флаг произвольного доступа 0 – только последовательный доступ, 1 – произвольный доступ Флаг «временный» 0 – нормальный, 1 – удаление после окончания работы процесса

Файловая система 1 Файловая система 2 Общая файловая система после монтирования Обычный файл Каталог Специальный файл-устройство Монтирование / (root) dev t t t r r user home bin man loc man1 man2 f1 f2

Физическая организация файловой системы Структура диска: пластины, дорожки, цилиндры, секторы, кластеры. Низкоуровневое форматирование – создание дорожек и секторов. Высокоуровневое форматирование – создание разделов и кластеров для определенной файловой системы или нескольких файловых систем. Р А З Д Е Л Ы (первичные и расширенные) Загрузочный блок MBR Таблица разделов С:С:D:E: Суперблок – таблица параметров Карта дискового пространства i-узлы Каталоги и файлы Корневой каталог Системная область Область данных ЗС NSB NSB (Non –System Bootstrap) – внесистемный загрузчик

файл непрерывное размещение # размещение в виде связанного списка кластеров Достоинства: высокая скорость доступа, минимальный объем адресной информации, нет ограничений на размер файла. Недостатки: нет возможностей для изменения размера файла, высокая степень возможной внешней фрагментации Область применения – компакт-диски Достоинства: минимальная адресная информация, отсутствие внешней фрагментации, возможность изменения размеров файла. Недостатки: медленный доступ, сложность доступа к произвольному блоку файла, некратность блока файла степени двойки.

Область индексов Связный список индексов Перечень номеров кластеров Файл 2, 4, 5 Все достоинства варианта А), быстрый доступ к произвольному кластеру файла, полное заполнение кластера, кратное степени двойки Достоинства: высокая скорость доступа к произвольному кластеру благодаря прямой адресации, отсутствие внешней фрагментации. Недостаток: длина адреса зависит от размера файла и может быть значительной. Недостаток: рост адресной информации с увеличением емкости диска Файл 1, 3, 5, 6

перечисление номеров блоков, занимаемых этим файлом адрес Прямая адресация ………………………. … Косвенная адресация ……1128 двойная адресация тройная адресация

Корневой каталог FAT 2 (копия) FAT 1 Загрузочный сектор- 512 б Элементы FAT 32 бита – одна запись каталога Кластеры данных

Структура записи каталога FAT 8 байт Имя файла 3 байт Расширение файла 1 байт Атрибуты файла 1 байт Зарезервировано 3 байт Время создания 2 байт Дата создания 2 байт Дата последнего доступа 2 байт Зарезервировано 2 байт Время последней модификации 2 байт Дата последней модификации 2 байт Начальный кластер 4 байт Размер файла Длина поля Описание

Основные характеристики файловых систем FAT Разрядность Число Максимальный Максимальный Имя файла указателя кластеров объем кластера размер раздела FAT Кбайт 16 Мбайт 8.3 FAT Кбайт 4 Гбайт FAT Г 32 Кбайт 2 32 по 32 Кбайт NTFS Кбайт 2 64 по 4 Кбайт Программа Fdisk автоматически определяет размер кластера на основе выбранной файловой системы и размера раздела. Существует недокументированный параметр команды Format, позволяющий явно указать размер кластера: Format /z:n, где n – размер кластера в байтах, кратный 512.

Основные свойства файловой системы NTFS: 1. Поддержка больших файлов и больших дисков (объем до 2 64 байт). 2. Восстанавливаемость после сбоев и отказов программ и аппаратуры управления дисками. 3. Высокая скорость операций, в том числе для больших дисков. 4. Низкий уровень фрагментации, в том числе для больших дисков. 5. Гибкая структура, допускающая развитие за счет добавления новых типов записей и атрибутов файлов с сохранением совместимости с предыдущими версиями ФС. 6. Устойчивость к отказам дисковых накопителей. 7. Поддержка длинных символьных имен. 8. Контроль доступа к каталогам и отдельным файлам. Файл NTFS – не просто линейная последовательность байтов, характерная для FAT-систем и Unix, а множество атрибутов, представляемых в виде потока байтов. Файл имеет несколько коротких потоков (имя, идентификатор и др.) и один или несколько длинных потоков с данными (ff:stream1, ff:stream2 и др.).

Структура тома NTFS Основой структуры тома является главная таблица файлов (Master File Table, MFT), которая содержит одну или несколько записей для каждого файла тома и одну запись для самой себя (размер записи – 1, 2 или 4 Кбайт). Том состоит из последовательности кластеров, порядковый номер кластера в томе – логический номер кластера (Logical Cluster Number, LCN). Файл состоит из последовательности кластеров, порядковый номер кластера внутри файла называется виртуальным номером кластера (Virtual Cluster Number, VCN). Размер кластера от 512 байт до 64 Кбайт. Базовая единица распределения дискового пространства – отрезок – непрерывная область кластеров. Адрес отрезка – (LCN, k), k –количество кластеров в отрезке. Адрес файла (или его части) – (LCN, VCN, k). Файл целиком размещается в записи таблицы MFT (если позволяет размер). В противном случае в записи MFT хранится резидентная часть файла (некоторые его атрибуты), а остальная часть файла хранится в отдельном отрезке тома или нескольких отрезках.

Загрузочный блок Системный файл 1 Системный файл 2 Системный файл n Копия MFT (первые 3 записи) Копия загрузочного блока Файл M MFT Загрузочный блок содержит стандартный блок параметров BIOS, количество блоков в томе, начальный логический номер кластера основной и зеркальной копии MFT. 0. Описание MFT, в том числе адреса всех ее отрезков. 1. Зеркальная копия MFT. 2. Журнал для восстановления файловой системы. 3. Файл тома (имя, версия и др. информация). 4. Таблица определения атрибутов. 5. Индекс корневого каталога. 6. Битовая карта кластеров. 7. Загрузочный сектор раздела. 8. Список дефектных кластеров. 9. Описатели защиты файлов. 10. Таблица квот. 11. Таблица преобразования регистра символов (для Unicode). 12 – 15 – зарезервировано. 1-й отрезок MFT 2-й отрезок MFT 3-й отрезок MFT Файл K MFT Файлы метаданных

Структура файлов NTFS Файлы и каталоги состоят из набора атрибутов. Каждая запись MFT состоит из заголовка, за которым следуют атрибуты. Атрибуты содержат следующие поля: тип, длина, имя (образуют заголовок) и значение. Атрибуты, используемые в записях MFT: 1. Стандартная информация (сведения о владельце, флаговые биты, время создания, время обновления и др.). 2. Имя файла в кодировке Unicode, м.б. повторено для имени MS DOS. 3. Список атрибутов (содержит ссылки на номера записей MFT, где расположены атрибуты), используется для больших файлов. 4. Версия – номер последней версии файла. 5. Дескриптор безопасности – список прав доступа ACL. 6. Версия тома –используется в системных файлах тома. 7. Имя тома. 8. Битовая карта MFT – карта использования блоков тома. 9. Корневой индекс – используется для поиска файлов в каталоге. 10. Размещение индекса – нерезидентная часть индексного списка ( для больших файлов). 11. Идентификатор объекта – 64-разрядный идентификатор файла, уникальный для данного тома. 12. Данные файла. 13. Точка повторного анализа (монтирование и симв. ссылки)

Файлы NTFS в зависимости от способа размещения делятся на небольшие, большие, очень большие и сверхбольшие. Заголово к записи Стандартный информацион ный заголовок Заголовок имени файла Заголово к данных ДАННЫЕ Заголовок ACL Список прав доступа Стандартная информация Имя файл а НЕ использует ся Пример небольшого файла NTFS Стандартная информация Имя файл а ДАННЫЕ Список прав доступа VCNKKKKLCN – 23, 64 – 65, Блоки диска Пример большого файла NTFS Заголовок данных Заголовок ACL

Матрица прав доступа

Разрешения на доступ к каталогам Стандартные разрешения Специальные разрешения

Разрешения на доступ к файлам

Квоты дискового пространства