русс | укр

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

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

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

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


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

Основные системные таблицы ввода/вывода


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


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

Первая таблица оборудования содержит информацию обо всех устройствах ввода/вывода подключенных к системе.(Unit Control Block). UCB cодержит следующую информацию об устройстве:

1. тип устройства, его модель

2. подключение устройства ( через какой интерфейс, к какому разъёму, какие порты и линии прерывания используются)

3. указание на драйвер (адрес секции запуска)

4. информацию о буфере памяти

5. состояние устройств

6. указатель на дескриптор задачи использующий устройство в данный момент

2 таблица описания виртуальных (логических ) устройств.

Её назначение – устранение связи между виртуальными устройствами, описанными в таблице 1. 2 таблица позволяет ядру операционной системы перенаправлять запрос на ввод/вывод из приложения на те программные модули и страницы данных, которые (или адреса которых) хранятся в соответствующем элементе 1 таблицы.

В многопользовательских системах таких таблиц нет : одна общая и по одной на каждого пользователя.

3 таблица прерывания, которая для всех сигналов прерывания указывает тот или иной элемент 1 таблицы, который описывает устройство выполняющее эту линию прерывания. Эта таблица может в явном виде не присутствовать поскольку может из основной таблицы прерываний попасть на драйвер, именующий связи с элементом UCB.

Наличие связи между таблицами 1 и 3 .

Взаимосвязь изображают так:

           
 
Таблица логических имен
   
Таблица оборудования
 
Таблица прерывания
 
 
 



 

 


Управление вводом/выводом состоит в выполнении следующих действий :

Запрос на операции ввода/вывода от выполняющейся программы поступает в ядро операционной системы . Оно проверяет вызов на правильность и при отсутствии ошибок пересылает его в подсистему ввода/вывода.

Процесс ввода/вывода по логическому имени с помощью таблицы логических имен находит соответствующий элемент UCBтаблицы оборудования. Если устройство занято ,то дескриптор задачи от которой поступил запрос на ввод/вывод помещается в очередь ожидающих устройств. Если устройство свободно, то подсистема определяет по UCB тип устройства и передает управление соответствующему драйверу на секцию запуска. Драйвер инициализирует оптимизацию управления и возвращает управление диспетчеру задач , чтобы он поставил на процессор готовую к исполнению задачу , Когда устройство ввода/вывода обрабатывает команду оно поставляет запрос на прерывание , по которому через таблицу прерывания управление передается на секцию продолжения , получив новую команду устройство начинает её обрабатывать, а управление процессом передается диспетчеру задач и процессор продолжает полезную работу.

Таким образом осуществляется параллельное выполнение задач на фоне которого происходит управление операциями ввода/вывода.



<== предыдущая лекция | следующая лекция ==>
Режимы управления вводом/выводом. | Прямой доступ к памяти.


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


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

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

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


 


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

 
 

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

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