История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Топ:
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного...
Марксистская теория происхождения государства: По мнению Маркса и Энгельса, в основе развития общества, происходящих в нем изменений лежит...
Установка замедленного коксования: Чем выше температура и ниже давление, тем место разрыва углеродной цепи всё больше смещается к её концу и значительно возрастает...
Интересное:
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
2017-11-16 | 282 |
5.00
из
|
Заказать работу |
|
|
При изучении данного раздела Вы должны проработать следующие темы:
· задачи системы ввода/вывода; способы обмена данными;
· менеджер ввода/вывода;
· типы файловых систем; организация файлов, контроль доступа к файлам;
· обеспечение целостности файловой системы.
Для проверки усвоения материала тем Вам предстоит ответить на вопросы для самопроверки (темы 5.1, 5.2, 5.3 и 5.4).
Работа с разделом 5 завершается сдачей контрольного теста № 5, выполнением лабораторных работ № 2, 3 и 4. Каждый правильный ответ контрольного теста оценивается в три балла, следовательно, в сумме с учетом успешно выполненных лабораторных работ можно получить 30 баллов.
Задачи системы ввода/вывода. Способы обмена данными
Одной из важнейших задач ОС является обеспечение обмена данными между приложениями и внешними устройствами ВС. В современных ОС эту функцию обмена данными выполняет специализированная система ввода/вывода. Эта система обслуживает не только приложения, но и запросы ОС (например, при смене активного процесса необходимо записать на HDD контекст приостанавливаемого процесса и считать с HDD контекст активируемого процесса).
К основным задачам, которые решает система ввода/вывода, относят:
· организацию параллельной работы устройств ввода/вывода и процессора;
· согласование скоростей обмена и кэширование данных;
· разделение устройств и данных между процессами;
· обеспечение удобного интерфейса между внешними устройствами и остальной частью ОС;
· поддержка широкого спектра драйверов с возможностью подключения к системе новых драйверов;
· динамическая загрузка и выгрузка драйверов;
· поддержка файловых систем;
|
· поддержка операций ввода/вывода.
Различают два основных режима ввода/вывода: режим обмена с опросом готовности устройства ввода/вывода и режим обмена с прерываниями.
В первом случае выполнение операций ввода/вывода осуществляется под управлением процессора.Такой способ взаимодействия получил название polling или программируемого ввода/вывода.
Если скорости работы ЦП и ВУ примерно равны, то такая организация процесса обмена не приводит к потерям рабочего времени у обоих устройств.
Если же скорость работы ВУ ниже скорости работы ЦП, то рассмотренный способ взаимодействия резко снижает эффективность работы ЦП. Для устранения указанного недостатка используют механизм оповещения ЦП о завершении выполнения команды ввода/вывода. Такой способ получил название ввода/вывода по прерыванию. В этом случае по завершении выполнения команды контроллер выставляет ЦП сигнал требования прерывания. По этому сигналу ЦП переходит в режим обработки прерывания, определяет ВУ и выполняет необходимые действия для подачи следующей порции данных на ВУ. Такой ввод/вывод намного эффективнее, чем программируемый. Однако затраты процессорного времени здесь тоже достаточно велики, так как каждое слово, которое передается из ОП в ВУ, должно проходить через ЦП.
В современных ВС используется механизм взаимодействия ВУ и ОП, при котором ЦП вообще не участвует в операциях последовательного ввода/вывода. Такой механизм получил название прямого доступа ВУ к ОП (ПДП, или DirectMemoryAccess – DMA). Все управление обменом данными между ОП и ВУ реализуется контроллером прямого доступа. ЦП посылает запрос на передачу блока данных контроллеру DMA, а прерывание (как сигнал об окончании операции) происходит только после передачи всего блока данных.
Вопросы для самопроверки по теме 5.1
1. Какие запросы ОС может выполнять система ввода/вывода?
2. Чем отличается программируемый ввод/вывод от ввода/вывода по прерыванию?
3. Какой способ ввода/вывода позволяет освободить ЦП от управления вводом/выводом?
|
4. Какой из режимов ввода/вывода производительней – программируемый, по прерыванию или прямого доступа?
Менеджер ввода/вывода
В системе ввода/вывода наряду с модулями, отражающими специфику внешних устройств и образующими вертикальные подсистемы, существуют модули универсального назначения. Эти модули организуют согласованную работу всех остальных компонентов системы ввода/вывода и взаимодействие с пользовательскими процессами и другими подсистемами ОС. Эти организующие функции распределены по всем уровням системы ввода/вывода, образуя оболочку. Эта оболочка называется менеджером ввода/вывода.
Верхний слой менеджера составляют блоки обработки системных вызовов ввода/вывода, которые принимают от пользовательских процессов запросы на ввод/вывод и переадресуют их отвечающим за определенный класс устройств модулям и драйверам, а также возвращают процессам результаты операций ввода/вывода. Таким образом, этот слой поддерживает пользовательский интерфейс ввода/вывода, создавая для прикладных программистов максимум удобств при манипулировании внешними устройствами и расположенными на них данными.
Нижний слой менеджера реализует непосредственное взаимодействие с контроллерами внешних устройств, экранируя драйверы от особенностей аппаратной платформы компьютера — шины ввода/вывода, системы прерываний и т. п. Этот слой принимает от драйверов запросы на обмен данными с регистрами контроллеров в некоторой обобщенной форме с использованием независимых от шины ввода/вывода адресации и формата, а затем преобразует эти запросы в зависящий от аппаратной платформы формат. Менеджер ввода/вывода выполняет первичную обработку запросов прерываний и передает их диспетчеру прерываний.
Важной функцией менеджера ввода/вывода является создание среды для остальных компонентов подсистемы, которая бы облегчала их взаимодействие друг с другом. Эта задача решается за счет создания некоторого стандартного внутреннего интерфейса взаимодействия модулей ввода/вывода между собой, с прикладными процессами, другими модулями ядра и аппаратурой. Наличие такого интерфейса существенно облегчает включение новых драйверов и файловых систем в состав ОС. Кроме того, разработчики драйверов и других программных компонентов освобождаются от написания общих процедур, таких как буферизация данных и синхронизация нескольких модулей между собой при обмене данными. Все эти функции берет на себя менеджер ввода/вывода.
|
Примерами подобного менеджера являются менеджер ввода/вывода ОС Windows NT, а также среда STREAMS, существующая во многих версиях операционной системы UNIX. Менеджер ввода/вывода Windows NT организует взаимодействие между модулями с помощью пакетов запросов ввода/вывода — IRP (I/O RequestPacket). Получив запрос от процедуры системного вызова, менеджер формирует IRP и передает его нужному драйверу. Драйвер после выполнения запрошенной операции возвращает ответ в виде другого IRP менеджеру, а тот в свою очередь может при необходимости передать этот IRP другому драйверу. Менеджер позволяет драйверам задавать взаимосвязи (bindings) между собой, и на основании информации о взаимосвязях и происходит передача пакетов IRP. Кроме того, менеджер Windows NT поддерживает динамическую загрузку-выгрузку драйверов без остановки системы.
Наличие стандартного внутреннего межмодульного интерфейса повышает устойчивость и улучшает расширяемость подсистемы ввода/вывода, хотя может несколько замедлить ее работу, так как любое разделение на слои и части приводит к дополнительным операциям при взаимодействии по сравнению с монолитной организацией с прямыми передачами управления.
Вопросы для самопроверки по теме 5.2
1. Назовите основные задачи, решаемые менеджером ввода/вывода.
2. Каков состав и функции верхнего слоя менеджера ввода/вывода?
3. Каков состав и функции нижнего слоя менеджера ввода/вывода?
4. Почему улучшение расширяемости приводит к замедлению работы системы ввода/вывода?
|
|
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!