Билет.Управление внешними устройствами. Архитектура.
Непосредственноеуправление Внешними устройствами ЦП. В основном требуется переместить данные из ВУ в ОЗУ (и наоборот). ЦП по своей инициативе почти никогда не обращается к ОЗУ.
Историческая модель основана на том, что управление осуществлялось с помощью ЦП.
Когда говорится о том, что организовано управление внешним устройством, то подразумевается, что реализуется два потока информации: поток управляющей информации (команды) ; поток данных, т.е. поток той информации, которая начинает двигаться от ОП к внешнему устройству, за счет потока управляющей информации.
Поток управляющей информации обеспечивает управление ВУ, поток данных начинает двигаться от ВУ к ОЗУ в результате выполнения 1ого потока. Оба потока обрабатывает ЦП, что «отвлекает» его от других задач пользователя.
Синхронное управление внешними устройствами с использованием контроллеров внешних устройств: ОЗУ–ЦП–Контроллер внешнего устройства–Внешние устройства
В результате развития аппаратной части компьютера появляются контролеры внешнего устройства. Он упростил жизнь ЦП. Все равно поток команд идет через ЦП, контролер взял некоторые функции: Обнаружение ошибок ; Обеспечение более высокоуровнего интерфейса по управлению ВУ ; Позволяет использовать команды типа «вывести головку на нужный сектор», «…на нужный цилиндр» ; Появилось разделение функций синхронизации. ЦП подавал сигнал и ждал.
Асинхронноеуправление внешними устройствами с использованием контроллеров внешних устройств: ОЗУ–DMA контроллер+контроллер или процессор ввода/вывода= внешнее устройство, ЦП.
Появление контролеров прямого доступа позволяет вывести поток данных, который появляется при обмене с ВУ из ЦП. Это имеет смысл для блокориентированных устройств, подразумевающих большой поток информации. Поток управляющей информации остается в ведении ЦП.
Управление внешними устройствами с использованием процессора или канала ввода/вывода.
Наличее процессоров ввода-вывода позволяет обеспечить высокоуровневый интерфейс для ЦП при управлении внешними устройствами. ЦП предоставляются различные макрокоманды. (например «записать на диск … начиная с …места»)
Билет. Программное управление внешними устройствами
Цели, которые стоят перед программным обеспечением:
1. унификация программных интерфейсов доступа к внешним устройствам (унификация именования, абстрагирование от свойств
конкретных устройств);
2. обеспечение конкретной модели синхронизации при выполнении обмена (синхронный, асинхронный обмен);
3. обработка возникающих ошибок (индикация ошибки, локализация ошибки, попытка исправления ситуации);
корректно обработать эту ситуацию, минимизировать негативные последствия.
4. буферизация обмена – в системе очень многоуровневая, применяется на всех этапах:
- развитые канала ввода-вывода могут иметь встроенный КЭШ, который управляется внутри этих каналов. Эта функция
остается на уровне ОС, этот КЭШ ОС полностью программноориентирован.
5. обеспечение стратегии доступа к устройству (распределенный доступ, монопольный доступ);
6. планирование выполнения операций обмена – возникает, когда возникает конкуренция за доступ к ресурсу.
Схемы буферизации ввода-вывода
а) Без буферизации
Если обмен проходит без буферизации, то совокупное время выполнения программы будет складываться из времени обмена и времени выполнения программы между обменами.
б) Одинарная буферизация
При использовании одиночной буферизации подавляется заказ на обмен с ОП, и процесс может в этом случае не ожидать. Целесообразно использовать, когда идет интенсивный поток заказов на обмен.
в) Двойная буферизация
Модель использования двойной буферизации следующая: в один буфер помещаются данные по обмену, в другой ОС готовит данные за предыдущий обмен.
г) Циклическая буферизация
Возможна ситуация, когда поток заказов на обмен > пропускной способности системы в некоторые моменты.
Тогда есть несколько вариантов действий:
1.Принимаем решения о порядке обработки запросов
2. начинаем учитывать приоритеты
3. осуществляем случайный выбор.
Проблема: Обмены могут быть зависимы друг от друга. В таком случае некоторые варианты не подходят.
Билет. RAID системы.
RAID система представляет собой набор независимых дисков, которые рассматриваются ОС как единое дисковое устройство, где данные представляются в виде последовательности записей, которые называются полосы. /*Полосы цилиндрически распределены по дисковому устройству. */
Семь уровней RAID систем.
RAID 0 (без избыточности)
Не является настоящим RAIDуровнем, поскольку не использует избыточность для повышения эффективности.
Пользовательские и системные данные распределяются по всем дискам массива.
RAID 1 (зеркалирование) Предполагает наличие массивов устройств. 1ая группа – циклическое распределение устройств по уровням 2ая группа-копия первой. Запись идет параллельно и независимо.
RAID 2 избыточность с кодами Хэмминга. Также используется разделение на полосы. Обмен с синхронизацией головок чтения записи. Часть дисковых устройств предназначены для хранения содержательной части информации. При считывании осуществляется одновременный доступ ко всем дискам. Данные запроса и код коррекции ошибок передаются контролеру массива. При наличии однобитовой ошибки контролер способен быстро ее откорректировать, так что доступ для чтения в этой схеме не замедляется. При записи происходит одновременное обращение ко всем дискам массива.
RAID 3 (четность с чередующимися битами) 4 диска содержательные – для размещения логических данных. 5ый – контрольная избыточная информация.
Суть: Если представить, что модель RAID состоит из 5 дисков. В этих 5 дисках 4 диска содержательные, т.е. для размещения логического диска с соответствующими полосками. 5-й диск – это контрольная избыточная информация. Содержимое пятого диска выражается по формулам через содержимое первых 4.То есть определенный разряд 5-го диска представляется как «исключающее или» для соответствующих ему содержательных разрядов. В случае гибели какого-нибудь из устройств утверждается, что информацию на этом устройстве можно восстановить по другой формуле.
RAID 4Он не синхронизированный. Схема примерно та же самая: имеется 4 устройства для логического диска, на которых располагаются полосы, и 5-е устройство, в котором находятся контрольные суммы. Контрольная сумма вычисляется по той же самой формуле, что и в RAID 3.
RAID 5 (распределенная четность – циклическое распределение «четности») Это использование циклического распределения контрольного диска. Суть: в RAID 3 и RAID 4 есть некоторая диспропорция в распределении потока обмена, т.о. контрольный диск циклически распределен по всем устройствам, т.е. вся работа равномерно распределяется.
RAID 6 (двойная избыточность – циклическое распределение четности с использованием двух схем контроля: N+2 дисков)
RAID 6 – это двойная избыточность. Делается еще одно дополнительное устройство для хранения избыточной информации.