Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Распределение ресурсов компьютераСодержание книги
Поиск на нашем сайте
Помимо архитектуры аппаратных средств и параметров системной шины специфика любого компьютера определяется принятым стандартным распределением всех его ресурсов. Соблюдать правила, установленные этим распределением, должны и программисты (как системные, так и занимающиеся разработкой прикладных программ), и разработчики дополнительного оборудования, и даже те пользователи, которые просто хотят установить в компьютер новую плату расширения. В случае малейшего нарушения этих правил возможны как непредсказуемые сбои в работе компьютера, невозможность его начальной загрузки, так и полный выход компьютера из строя. Под распределением ресурсов в данном случае понимается:
Понятно, что если программист захочет использовать те адреса памяти, которые отведены для системных нужд (например, для памяти дисплея или системных таблиц), то работоспособность компьютера нарушится. Если выполняемая программа попытается записать какую-либо информацию по тем адресам системной памяти, которые стандартом отведены под постоянную память (ROM), то записываемая информация будет просто потеряна, и программа работать не будет. Если писать информацию по тем адресам памяти, которые отведены под видеопамять, то будет искажаться изображение на экране видеомонитора. Если вставляемая в компьютер плата расширения использует неправильные (занятые другими устройствами) адреса в адресном пространстве памяти, то ее работа будет невозможна, и не исключен даже выход из строя аппаратуры компьютера (так как при циклах чтения из перекрывающихся адресов памяти два устройства будут выставлять свои данные на шину одновременно, что может стать причиной выгорания буферных микросхем). Если разработчик платы расширения с устройством ввода/вывода или пользователь, подключающий новую плату расширения, установят адрес своего устройства так, что он будет совпадать с адресом системного устройства или адресом другой платы расширения, то возможны конфликты при обращении к данному устройству. При этом в цикле записи информация будет записываться не в одно, а в два или более устройств, а в цикле чтения на шину данных будут одновременно выставлять свои данные не одно, а несколько устройств. То есть в цикле записи возможно нарушение установленных режимов работы системных устройств (например, контроллера прерываний или контроллера ПДП) или неправильная работа новой платы расширения, а в цикле чтения — даже выход из строя одного из устройств, выставляющих свои данные на магистраль одновременно. Если при подключении к компьютеру новой платы расширения установить для нее неправильный канал запроса прерывания, это может привести к тому, что данное прерывание просто не будет обслуживаться. Может также перестать обслуживаться прерывание от системного устройства, с которым конфликтует новая плата. В худшем случае это может вызвать выход из строя новой платы расширения или же системного устройства. Точно так же при неправильном выборе номера канала запроса прямого доступа к памяти может перестать обслуживаться запрос ПДП системного устройства, а может выйти из строя системное устройство или новая плата расширения. То есть соблюдение правил стандартного распределения ресурсов компьютера — это не чья-то прихоть, а жизненная необходимость. Правда, в последнее время получила распространение снимающая данные проблемы технология автоматического распределения ресурсов Plug-and-Play (PnP, P&P), что можно перевести как «Вставляй и работай». При этом пользователю достаточно просто подключить свою плату к компьютеру, а все операции по распределению ресурсов компьютер выполнит самостоятельно, и любые конфликты будут автоматически устранены. Но для этого необходимо обязательное выполнение двух условий. Во-первых, технологию PnP должен поддерживать данный компьютер и его программное обеспечение. Во-вторых, эту технологию должно поддерживать подключаемое к компьютеру устройство. Определить это довольно просто: если на плате имеются переставляемые перемычки или механические переключатели для задания параметров платы (адресов портов ввода/вывода, номера используемого прерывания, базового адреса памяти, номера канала ПДП), то можно смело утверждать, что выбор конфигурации, учет стандартного распределения ресурсов компьютера ложится на пользователя. Компьютер здесь не помощник. Конечно же, перед установкой в компьютер новых плат расширения следует внимательно прочитать инструкцию и точно следовать ей. Подробнее о работе режима PnP будет рассказано ниже. А теперь рассмотрим принятое в персональных компьютерах стандартное распределение ресурсов. О стандартном распределении памяти уже говорилось в предыдущей главе. Чуть подробнее распределение адресов памяти описано в табл. 8.3. Из таблицы видно, что для памяти, входящей в состав устройств ввода/вывода, отводится зона всего лишь в 92 Кбайта (адреса С8000…DFFFF). В этом пространстве может располагаться как оперативная память, так и постоянная память устройств ввода/вывода. Иногда память устройств ввода/вывода захватывает также и зону адресов С0000…С7FFF. Таблица 8.3. Распределение адресов памяти (адреса даны в шестнадцатеричном коде). |
||||
Адреса памяти | Назначение | ||||
000000...0003FF | Таблица векторов прерываний | ||||
000000...09FFFF | Память DOS и пользовательских программ | ||||
0А0000...0АFFFF | Память дисплея EGA или VGA | ||||
0B0000...0B7FFF | Память монохромного дисплея MDA | ||||
0B8000...0BFFFF | Память дисплея CGA | ||||
0C0000...0C3FFF | ПЗУ BIOS для EGA/VGA | ||||
0C8000...0DFFFF | Память устройств ввода/вывода | ||||
0E0000...0EFFFF | Резерв ПЗУ ВIOS на материнской плате | ||||
0F0000...0FFFFF | ПЗУ BIOS на материнской плате |
Важно помнить, что помимо этого распределения, общего для любых программных и аппаратных средств, существуют еще и распределения памяти, специфические для каждой операционной системы. Их также необходимо учитывать во избежание отказа при выполнении системных программ. Отметим, что в современных компьютерах, конечно же, не используются давно устаревшие дисплеи стандартов CGA или MDA. Однако в том случае, если требуется универсальность программного обеспечения, надо учитывать и то, что его могут попытаться запустить на компьютерах с подобными дисплеями.
Стандартное распределение адресов в адресном пространстве устройств ввода/вывода персонального компьютера приведено в табл. 8.4.
Как уже отмечалось, стандарт допускает адресацию 64К устройств ввода/вывода (то есть можно использовать 16 разрядов адреса). Однако подавляющее большинство плат расширения для упрощения аппаратуры использует только 10 младших разрядов, что соответствует всего 1К (или 1024) адресов (от 000 до 3FF в шестнадцатеричном коде). При этом 16-разрядные порты ввода/вывода имеют четные адреса, то есть их может быть всего 512.
Таблица 8.4. Распределение адресов устройств ввода/вывода. | |
Адреса | Назначение |
000...01F | Контроллер ПДП 1 |
020...03F | Контроллер прерываний 1 |
040...05F | Программируемый таймер |
060...06F | Контроллер клавиатуры |
070...07F | Часы реального времени |
080...09F | Регистр страницы ПДП |
0A0...0BF | Контроллер прерываний 2 |
0С0...0DF | Контроллер ПДП 2 |
0F0...0FF | Математический сопроцессор |
170...177 | Накопитель на жестком диске (второй) |
1F0...1F7 | Накопитель на жестком диске (первый) |
200...207 | Игровой порт (джойстик) |
278...27F | Параллельный порт LPT2 |
2С0...2DF | Адаптер EGA 2 |
2F8...2FF | Последовательный порт COM2 |
300...31F | Прототипные платы |
320...32F | Накопитель на жестком диске XT |
360...36F | Резервные адреса |
370...377 | Накопитель на гибком диске (второй) |
378...37F | Параллельный порт LPT1 |
380...38F | Контроллер бисинхронного обмена SDLC2 |
3A0...3AF | Контроллер бисинхронного обмена SDLC1 |
3B0...3DF | Адаптер VGA |
3B0...3BF | Адаптер дисплея MDA и принтера |
3C0...3CF | Адаптер EGA 1 |
3D0...3DF | Адаптер СGA |
3F0...3F7 | Накопитель на гибком диске (первый) |
3F8...3FF | Последовательный порт COM1 |
Как видно из таблицы, значительная часть возможных адресов уже занята системными устройствами, свободных адресов не так много. Резервные адреса — это те, которые зарезервированы под дальнейшее расширение системы.
В табл. 8.5 представлено стандартное распределение номеров аппаратных прерываний и соответствующих им номеров в таблице векторов прерываний (INT).
Как видно из таблицы, большинство входов IRQ заняты системными ресурсами компьютера. Свободны (зарезервированы) только четыре канала: 10, 11, 12, 15, причем они находятся на 16-разрядной части разъема магистрали ISA. Правда, иногда в компьютерах применяется только один параллельный порт или (гораздо реже) только один последовательный порт, и тогда свободными оказываются еще IRQ3 и IRQ5. Сигналы IRQ0...IRQ2, IRQ8 и IRQ13 задействованы на системной плате и недоступны платам расширения.
Таблица 8.5. Распределение каналов аппаратных прерываний. | ||
Номер прерывания IRQ | INT | Назначение |
0 | 08 | Программируемый таймер |
1 | 09 | Контроллер клавиатуры |
2 | 0A | Каскадирование второго контроллера |
8 | 70 | Часы реального времени (только АТ) |
9 | 71 | Программно переадресовано на IRQ2 |
10 | 72 | Резерв |
11 | 73 | Резерв |
12 | 74 | Резерв |
13 | 75 | Математический сопроцессор |
14 | 76 | Контроллер жесткого диска |
15 | 77 | Резерв |
3 | 0B | Последовательный порт COM2 |
4 | 0C | Последовательный порт COM1 |
5 | 0D | Параллельный порт LPT2 |
6 | 0E | Контроллер гибкого диска |
7 | 0F | Параллельный порт LPT1 |
В компьютере используются два 8-разрядных контроллера прерываний. Сигналы IRQ0...IRQ7 относятся к первому из них, а IRQ8...IRQ15 — ко второму. Для каскадирования второго контроллера прерываний задействован вход IRQ2 (рис. 8.6). В связи с этим запросы прерывания имеют следующие приоритеты обслуживания в порядке возрастания: IRQ7, IRQ6, IRQ5, IRQ4, IRQ3, IRQ15, IRQ14, IRQ12, IRQ11, IRQ10, IRQ9. Такая схема включения сложилась исторически, так как в компьютере IBM PC XT использовался только один 8-канальный контроллер прерываний, а при переходе на IBM PC AT к нему был добавлен второй контроллер для удвоения количества каналов запросов прерываний. В современных компьютерах оба контроллера прерываний вместе с другими контроллерами могут входить в состав одной и той же микросхемы, но совместимость распределения прерываний по-прежнему обеспечивается.
Рис. 8.6. Включение двух контроллеров прерываний.
Стандартное распределение каналов запроса прямого доступа к памяти представлено в табл. 8.6.
Как и в случае с контроллерами прерываний, здесь применяется два контроллера, причем один из них каскадируется через другой. На каждой линии DRQ должен быть один выход ISA-устройства. Каналы, соответствующие первому контроллеру ПДП (сигналы DRQ0...DRQ3), предназначены только для 8-битного обмена, а соответствующие второму контроллеру (DRQ5...DRQ7) — для 16-битного. Канал DRQ4 используется для каскадирования двух контроллеров ПДП и поэтому недоступен пользователям. Сигнал запроса DRQ0 имеет самый высокий приоритет, сигнал DRQ7 — самый низкий. В IBM PC XT канал DRQ0 использовался для регенерации динамической памяти. Каждый канал ПДП может передавать данные в пределах 16-мегабайтного адресного пространства блоками длиной до 64 Кбайт (каналы 0, 1, 2, 3) или до 128 Кбайт (каналы 5, 6, 7).
Таблица 8.6. Стандартное распределение каналов прямого доступа к памяти. | |
Номер канала ПДП | Назначение |
0 | Резервный |
1 | Контроллер бисинхронного обмена SDLC |
2 | Накопитель на гибком диске |
3 | Резервный |
4 | Каскадирование первого контроллера |
5 | Резервный |
6 | Резервный |
7 | Резервный |
Естественно, обычному пользователю запомнить всю эту информацию о распределении ресурсов довольно сложно, к тому же при малейшей ошибке возможны неприятности. Именно из этих соображений фирмами Compaq Computer, Intel, Microsoft и Phoenix Technologies в 1993 году была предложена технология Plug-and-Play (PnP), возлагающая все заботы о конфигурации компьютера на сам компьютер. Пользователь при этом может даже ничего не знать об адресном пространстве, прерываниях и каналах прямого доступа, он просто подключает плату, и она сразу же начинает работать правильно. Правда, при этом все компоненты компьютера (базовая система ввода/вывода BIOS, операционная система, прикладное программное обеспечение, подключаемые устройства) должны поддерживать режим PnP. В конце концов, технология PnP должна работать на всех используемых интерфейсах компьютера: ISA, PCI, VLB, IDE, RS-232C и т.д. Наиболее же приспособлена для этого системная шина PCI, имеющая специально предусмотренные средства, что еще более увеличивает ее шансы стать единственным стандартом системной шины.
При включении компьютера с PnP его программа начального запуска BIOS определяет устройства, которые необходимы в процессе загрузки. Затем BIOS запрашивает у каждого из этих устройств его уникальный номер (идентификатор), хранящийся в памяти PnP-устройства. После этого BIOS разрешает все конфликты между устройствами. При этом устройства, которые не нужны для загрузки компьютера, не обслуживаются.
После загрузки операционной системы вступает в действие специальный программный драйвер — менеджер конфигурации (configuration manager), который с помощью драйверов-нумераторов шин (bus enumerators) определяет устройства, требующие системных ресурсов. Если подключенное устройство не поддерживает PnP и не может выдать информацию о себе, то такая информация должна быть заложена в формируемую вручную базу данных. Вся собранная информация о текущей конфигурации сохраняется в оперативной памяти, в области hardware tree. Эту информацию в дальнейшем использует программа-арбитр ресурсов (resource arbitrator) при распределении системных ресурсов между устройствами. После этого менеджер конфигурации через нумераторы шин сообщает PnP-устройствам о том, какие ресурсы компьютера им присвоены, и данная информация в дальнейшем хранится в программно доступных регистрах (или flash-EPROM) этих устройств. На этом работа PnP по распределению ресурсов заканчивается, и далее компьютер функционирует как обычно, обращаясь ко всем устройствам стандартным образом.
Отметим также, что в некоторых компьютерах предусмотрена возможность так называемого «горячего подключения» внешних устройств (то есть без выключения питания компьютера). Режим PnP должен поддерживать и эту возможность, распределяя ресурсы не только при начальной загрузке, но и по мере подключения новых устройств.
Литература
Основная
1. Калабеков Б.А. Цифровые устройства и Интерфейсы переферийных устройств. – М.: Горячая линия-Телеком, 2005. – 336 с.: ил.
2. Интерфейсы переферийных устройств / Под ред. Д.В. Пузанкова. – СПб.: Политехника, 2003. – 935 с.: ил.
Дополнительная
1. Бройдо В.Л. Вычислительные системы, сети телекоммуникации. - СПб.: Питер, 2005. – 568 с.
2. Хамахер К. Организация ЭВМ. – СПб.: Питер, 2003. – 848 с.: ил.
Специальность (шифр), форма обучения | Вычислительные машины, комплексы, системы и сети (230101.65), очная |
Название дисциплины | Интерфейсы переферийных устройств |
Курс, семестр | IV, VIII |
Ф.И.О. преподавателя – разработчика материалов | Ткачук И.Ю. |
Лекция 10
| Поделиться: |
Познавательные статьи:
Последнее изменение этой страницы: 2020-12-17; просмотров: 75; Нарушение авторского права страницы; Мы поможем в написании вашей работы!
infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.32.6 (0.011 с.)