русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

УПРАВЛЕНИЕ ПЕРИФЕРИЙНЫМИ УСТРОЙСТВАМИ.


Дата добавления: 2014-11-28; просмотров: 12122; Нарушение авторских прав


Существует два типа управления периферийными устройствами — прямой и косвенный.

Прямое управление реализует непосредственную связь между процессором и периферийным устройством. Управление осуществ­ляется с помощью последовательности специальных команд. При этом центральный процессор реализует полный алгоритм: инициа­лизацию, проверку готовности, остановку.

При косвенном управлении между процессором и периферий­ным устройством помещается специальный процессор, называемый каналом. Он осуществляет управление операциями ввода/вывода. Центральный процессор инициирует ввод/вывод и переход на выполнение других операций, а канал управляет периферийным устройством по специальной программе, называемой канальной. Для синхронной работы центрального процессора и ка­нала используются флаги занятости или прерывания. Программа управления периферийным устройством — супервизор ввода/выво­да—в ответ на прерывание планирует и организует ввод/вывод, при необходимости организует обновление данных. Для сглажива­ния скоростей в периферийном канале и управляющем устройстве между ними ставится буфер, роль которого выполняет оперативная память. При определении длины буфера должен обеспечиваться компромисс между эффективностью использования оперативной памяти и внешней памяти (чем длиннее буфер, тем больше времени работает канал независимо от центрального процессора).

Для управления используются два вида ввода/вывода:

· байт-ори­ентированный (интерфейс применяется для доступа к печатающим устройствам, каналам связи и реализуется без буферизации)

· блок-ориентированный (интерфейс адресуется к периферийным устрой­ствам как к последовательным блокам по 512 байт).

В состав ОС входят драйверы и специальные таблицы подклю­чения ядра операционной системы к драйверам различных устройств. Каждый драйвер состоит из двух частей:



• набора программных модулей для операций открытия, закры­тия, чтения и записи в файл данных;

модуля обработки прерывания. Для байт-ориентированной передачи прерывание наступает после передачи первого байта, а для блок-ориентированной — после передачи первого блока.

Под драйвером понимался программный модуль, который:

· входит в состав ядра операционной системы, работая в привилегированном режиме;

· непосредственно управляет внешним устройством, взаимодействуя с его кон­троллером с помощью команд ввода-вывода компьютера;

· обрабатывает прерывания от контроллера устройства;

· предоставляет прикладному программисту удобный логический интерфейс работы с устройством, экранируя от него низкоуровневые детали управления устройством и организации его данных;

· взаимодействует с другими модулями ядра ОС с помощью строго оговоренного интерфейса, описывающего формат передаваемых данных, структуру буферов, способы включения драйвера в состав ОС, способы вызова драйвера набор общих процедур подсистемы ввода-вывода, которыми драйвер может пользоваться, и т. п.

Таким образом, последовательность операций:

1)считывание порции (блок) данных с накопителя и помещение его в область в оперативную память;

2)извлечение данных из буфера, их обработка и помещение обратно или в другой (выходной) буфер;

3)после окончания обработки – вывод (запись) результатов на выходной накопитель также в форме одного или несколько блоков.



<== предыдущая лекция | следующая лекция ==>
Понятия «процесс» и «поток» | Менеджер ввода-вывода


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.