Uploaded by sushkova_yulia

лекция9: Операционные системы. Управление вводом-выводом

advertisement
Цели занятия:
• дать представление о подсистеме управления
вводом-выводом ПК;
• развивать логическое мышление, понятие роли
информационных процессов и цифровых
технологий в современном мире;
• мотивация стремления к использованию
информационных ресурсов общества.
План занятия:
1. Структура и функции подсистемы вводавывода.
2. Физические принципы организации вводавывода.
3. Уровни организации ввода-вывода.
1. Структура и
функции подсистемы
ввода-вывода
ВВОД-ВЫВОД
ИНФОРМАЦИИ
ОБРАБОТКА
ИНФОРМАЦИИ
Вспоминаем Структуру ОС
Подсистема ввода-вывода
Функции ОС по управлению вводомвыводом в мультипрограммной системе:
АДРЕСОВАТЬ УСТРОЙСТВА;
ВЫДАВАТЬ КОМАНДЫ УСТРОЙСТВАМ;
ПЕРЕХВАТ И ОБРАБОТКА ПРЕРЫВАНИЙ
УСТРОЙСТВ;
ВЫПОЛНЯТЬ ЧТЕНИЕ/ЗАПИСЬ С УСТРОЙСТВА;
ПРЕДОСТАВЛЯТЬ УНИФИЦИРОВАННЫЙ
ИНТЕРФЕЙС ДЛЯ РАБОТЫ С ПЕРИФЕРИЙНЫМИ
УТРОЙСТВАМИ.
2. Физические
принципы
организации вводавывода
Классификация УВВ
УВВ
Блочные
Символьные
Блочные
К блочным относятся такие устройства, которые
хранят информацию в блоках фиксированной
длины, у каждого из которых есть собственный
адрес. Обычно размеры блоков варьируются от
512 до 65 536 байт. Вся передача данных ведется
пакетами из одного или нескольких целых
(последовательных) блоков. Важным свойством
блочного устройства является то, что оно
способно читать или записывать каждый блок
независимо от всех других блоков. Среди
наиболее распространенных блочных устройств
жесткие диски, приводы Blu-ray-дисков и
флешнакопители USB.
Символьные
Символьные устройства выдают или
воспринимают поток символов, не
относящийся ни к какой блочной структуре.
Они не являются адресуемыми и не имеют
никакой операции позиционирования. В
качестве символьных устройств могут
рассматриваться принтеры, сетевые
интерфейсы, мыши (в качестве устройствауказателя).
Контроллер –
специализированное
техническое устройство,
предназначенное для
управления другими
устройствами путем
получения/передачи
информации в виде
цифровых данных
Устройства ввода-вывода обычно
состоят из двух частей:
• механическая (собственно само устройство) диск, принтер, монитор
• электронная - контроллер или адаптер.
Операционная система обычно имеет дело не с
устройством, а с контроллером. Контроллер, как
правило, выполняет простые функции, например,
при считывании с диска, преобразует поток бит в
блоки, состоящие из байт, и осуществляют
контроль и исправление ошибок, проверяется
контрольная сумма блока, если она совпадает с
указанной в заголовке сектора, то блок считан без
ошибок, если нет, то считывается заново.
Ввод-вывод, отображаемый на
пространство памяти
У каждого контроллера для связи с центральным
процессором имеется несколько регистров.
Путем записи в эти регистры операционная система
может давать устройству команды на:
предоставление данных,
принятие данных,
включение,
выключение,
Считывая данные из этих регистров, операционная
система может узнать о текущем состоянии
устройства, о том, готово ли оно принять новую
команду, и т. д. В дополнение к регистрам управления
у многих устройств имеется буфер данных, из
которого операционная система может считывать
данные и в который она может их записывать.
Существует два способа обмена
данными между ЦП и устройством:
Без
контроллера
ПДП
С
контроллером
ПДП
ПДП –прямой доступ к памяти
Без контроллера происходит следующее:
1. Процессор дает команду контроллеру
прочитать данные в буфер
2. Считываются данные в буфер,
контроллер проверяет контрольную
сумму считанных данных (проверка на
ошибки). Процессор, до прерывания,
переключается на другие задания.
3. Контроллер устройства инициирует
прерывание
4. Операционная система начинает
работать и может считывать из буфера
данные в память
Работа ПДП – контроллера:
1. Процессор инициирует работу контроллера ПДП
(какие данные и куда переместить)
2. Процессор дает команду контроллеру устройства
прочитать данные в буфер
3. Считываются данные в буфер
4. Контроллер ПДП посылает запрос на чтение
контроллеру устройства
5. Контроллер устройства поставляет данные на шину,
адрес памяти на шине адреса, происходит запись
данных в память
6. Когда запись закончена, контроллер устройства
посылает подтверждение ПДП контроллеру
7. ПДП контроллер увеличивает используемый адрес и
уменьшает значение счетчика байтов
8. Все повторяется с пункта 4, пока значение счетчика
байтов не станет равным нулю.
3. Уровни
организации
ввода-вывода
Для решения задач ввода/вывода целесообразно
разделить ПО на четыре слоя:
Драйвер –
программное
обеспечение, с помощью
которого операционная
система получает
доступ к аппаратному
обеспечению некоторого
устройства.
Подсистема ввода-вывода ОС
осуществляет согласование скоростей
работы процессора и внешних устройств
за счет использования:
буферизации (одинарной, двойной,
циклической) данных в оперативной
памяти,
спул-файлов,
буферной (кэш) памяти в контроллерах
внешних устройств.
Спулинг – способ организации
вычислительного процесса, при
котором данные сначала
буферизируются, а только потом
передаются устройству для их
обработки. По окончании
обработки данных, на
устройство посылается
следующая порция данных,
стоящая в очереди первой.
Управление устройствами из уровня
пользователя выполняется в диспетчере
устройств ( WIN+R → devmgmt.msc)
ИТОГИ:
С вводом-выводом связана довольно существенная часть любой
операционной системы.
Ввод-вывод может осуществляться одним из двух способов:
 ввод-вывод, управляемый прерываниями, при котором
центральный процессор инициирует передачу символа или
слова на внешнее устройство и переходит к решению какихнибудь других задач, пока не поступит прерывание,
сигнализирующее о завершении ввода-вывода.
 прямой доступ к памяти — DMA, при котором отдельная
микросхема (контроллер) полностью управляет передачей
блока данных, выдавая прерывание только тогда, когда будет
передан весь блок.
Структура ввода-вывода может состоять из четырех уровней:
 процедур обработки прерываний,
 драйверов устройств,
 программ ввода-вывода, не зависящих от конкретных
устройств и библиотек ввода-вывода,
Download