Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Способ. Одно адресное пространство




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

При этом каждому управляющему регистру назначается уникальный адрес в памяти. Иногда такую схему называют отображаемым на адресное пространство памяти ввод-вывододом. Обычно для регистров устройств отводятся адреса на вершине адресного пространства.

Существуют разные гибридные схемы отображения ввод-вывод.

 

Способ. Гибридный

Один из возможных вариантов третьего, гибридного подхода.

Эта схема широко используется в платформах на базе Интел, Пентиум, в которых помимо портов ввод-вывод с адресами от 0 до 64 Кб используется адресное адресное пространство ОЗУ от 640 Кб до 1 Мб для буферов устройств ввод-вывод. Во всех случаях, когда ЦП хочет прочитать слово данных либо из памяти, либо из порта ввод-вывод, он сначала выставляет нужный адрес на адресную шину, после чего выставляет <read> (считать) на управляющую шину. Сигнальная линия при этом позволяет отличить обращение к памяти от обращения к порту. В зависимости от состояния той линии на запрос процессора реагирует либо устройство ввод-вывод (контроллер), либо память. Если пространство адресов общее (Вариант 2), то каждый модуль памяти и каждое устройство ввод-вывод сравнивает выставленный на шину адрес с обслуживаемым им диапазоном адресов. Если адрес попадает в этот диапазон, то соответствующее устройство реагирует на запрос процессора. Поскольку выделенные внешним устройством адреса удаляются из памяти, внешние устройства не реагируют на них и конфликта не происходит. Схема 1 и 2 имеет свои достоинства и недостатки.

Достоинства:

1. При отображение на адресное пространство памяти ввод-вывод не требуются специальные команда процессора <in> и <out>. В результате программу можно написать целиком на языке С, без вставок на Ассемблере и обращений к подпрограммам.

2. При отображении регистров ввод-вывод на память не требуется специального механизма защиты от пользовательских процессов, пытающихся обращаться к внешним устройствам. Все, что нужно сделать – это исключить ту часть адресного пространства, на которую отображаются управляющие регистры ввод-вывод из адресного пространства пользователя. В результате такая схема позволяет разместить драйверы различных устройств в различных адресных пространствах, тем самым не только уменьшив размер ядра, но и исключив вмешательства драйверов в дела друг друга.

Недостатки:

1. В большинстве современных ПК применяется КЭШирование памяти. КЭШирование управляющих регистров привело бы к катастрофе. Чтобы не допустить такой ситуации, необходима специальная аппаратура, способная выборочно запрещать КЭШирование. Например, в зависимости от номера страницы памяти, к которой обращается процессор. Т.о. отображение регистров ввод-вывод на память увеличивает сложность аппаратуры и самой ОС, которой приходится управлять избирательным КЭШированием.

2. При едином адресном пространстве все модули памяти и устройства ввод-вывод должны изучать все обращения процессора к памяти, чтобы определить, на какие следует реагировать. Если у компьютера одна общая шина, реализовать подобный просмотр обращений не сложно.





Поделиться с друзьями:


Дата добавления: 2016-04-03; Мы поможем в написании ваших работ!; просмотров: 570 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Люди избавились бы от половины своих неприятностей, если бы договорились о значении слов. © Рене Декарт
==> читать все изречения...

2504 - | 2303 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.