Главная страницаОбратная связьКарта сайта

Системные ресурсы.Системная память.Управление прерываниями


Еще одним важным системным ресурсом является память. Некоторым устройствам при установке в компьютер достаточно назначить только три системных ресурса: IRQ, канал DMA и адреса ввода/вывода, но для большинства из них необходимо отводить еще и некоторый диапазон адресов памяти. Эти участки памяти используются для размещения программного обеспечения (BIOS), встроенного, например, в SCSI-контроллеры, сетевые платы, видеокарты, модемы и т.п. Технически это означает, что установленному на плате того или иного адаптера постоянному запоминающему устройству (ПЗУ) присваиваются адреса, «позаимствованные» из общего адресного пространства. Никаким двум микросхемам ПЗУ не должны назначаться одинаковые адреса — в противном случае возникнет конфликт. В табл. 10.4 приведено типичное распределение памяти в современных компьютерах.

Общие представления о технологии Plug-and-Play (PnP)

Устанавливавшиеся в старые компьютеры устройства нужно было конфигурировать вручную — назначать с помощью перемычек номера линий прерывания и каналов DMA, а также адреса ввода/вывода и выделяемой области памяти. Если двум или более устройствам ошибочно назначались одинаковые ресурсы, то возникал конфликт. Для его разрешения необходимо было отыскать конфликтующие устройства, найти для них свободные ресурсы и переконфигурировать их. Все эти операции занимали достаточно много времени и требовали определенных усилий и знаний.

В начале 1990-х годов разработчики пришли к выводу, что распределение ресурсов можно осуществлять автоматически при каждой инициализации компьютера. Это означает, что устройство достаточно установить в компьютер, после чего система настроит его и назначит ему доступные ресурсы без вашего вмешательства. Эта концепция получила наименование технологии Plug-and-Play (включай и работай) или для краткости — РпР. Такой подход к проектированию систем и периферийных устройств является общепризнанным на протяжении многих лет. Для реализации принципа РпР определенным стандартам должны соответствовать:

■     устройство (видеокарта, модем, контроллер и т.п.);

■     BIOS (PnP-совместимыми являются практически все BIOS в компьютерах класса Pentium);

■     операционная система (например, Windows).

В нормально работающем РпР-компьютере соответствующее этому стандарту устройство может быть установлено влюбой свободный слот расширения системной платы. При запуске Windows новое устройство распознается, ему назначаются системные ресурсы, после чего предпринимается попытка инсталлировать необходимый драйвер защищенного режима (он может быть установлен либо с прилагаемой кустройству дискеты, либосус-тановочного компакт-диска ОС Windows). После этого компьютер запоминает настройку нового устройства и восстанавливает ее при каждом запуске системы. Теоретически, в случае демонтажа этого устройства Windows должна автоматически «вычеркнуть» его из системы и освободить занимавшиеся им ресурсы для других устройств (однако это происходит, увы, не всегда).

Если одно из перечисленных выше условий не соблюдается, то устройства не будут конфигурироваться автоматически. Например, принцип РпР не реализуется в среде DOS (хотя существуют драйверы, разработанные под DOS, которые могут использоваться для инициализации PnP-устройств). Старые, настраиваемые с помощью перемычек устройства (так называемое «наследство» — legacy), не соответствуют стандартам РпР, поэтому ресурсы им нужно назначать вручную — в противном случае они будут просто проигнорированы РпР-системой.


Информация об автоматической настройке PnP-компьютера хранится в области ESCD памяти CMOS и теряется при ее очистке или потере (выходе из строя) микросхемы.

Проверка распределения ресурсов

Пытаясь устранить возникшие в системе неполадки, или просто изучая настройку своего компьютера, вы можете просмотреть распределение ресурсов, назначенных различным устройствам. В былые времена вам пришлось бы для этого обложиться описаниями адаптеров, системной платы и т.д. и проверять положения множества перемычек и переключателей. Сегодня, работая под управлением Windows, вы можете в любой момент просмотреть состояние ресурсов при помощи Диспетчера устройств. Его легко запустить при помощи одноименной кнопки на закладке «Оборудование» (Hardware) в окне свойств значка «Мой компьютер» (My computer). В результате вы увидите список групп устройств, подобный показанному на рис. 10.1.

В список включаются все устройства, которые обнаружены операционной системой, и, кроме того, в нем же обычно отображаются возникшие в системе проблемы. Чтобы просмотреть сводку назначений системных ресурсов, в меню Диспетчера выберите пункт «Вид | Ресурсы по типу» (View | Resource by type). В окне будут показаны все четыре типа системных ресурсов, при необходимости можно просмотреть назначение каждого из них, например, запросов на прерывание IRQ (рис. 10.2).

Рис. 10.1

Список установленного оборудования в Диспетчере устройств



 

Рис. 10.2 Распределение ресурсов среди устройств компьютера
 




Вместо сводного списка вы можете просмотреть ресурсы, назначенные конкретным устройствам. Выберите в Диспетчере какое-либо устройство и откройте его свойства (в контекстном меню по правой клавише мыши). На закладке «Ресурсы» (Resources) в центральной части окна появится список всех назначенных устройству ресурсов (рис. 10.3). Просмотреть его целиком можно, воспользовавшись полосой прокрутки. В принципе, при желании с помощью этого диалогового окна вы можете перенастроить адаптер, отключив режим «Автоматическая настройка» (Use Automatic Settings), пометив какой-либо ресурс и щелкнув по кнопке «Изменить настройку» (Change Setting). Но делать это без крайней необходимости не стоит, к тому же не все устройства допускают ручную настройку.



Рис. 10.3

Системные ресурсы, назначенные определенному устройству


Управление прерываниями

Главное требование, которое необходимо соблюдать при распределении системных ресурсов, заключается в том, что их совместное использование недопустимо — попытка нарушить его неизбежно приводит к конфликту. На протяжении более чем 20 лет и специалисты, и рядовые пользователи неукоснительно следовали этому правилу. Однако количество различных устройств, которые можно установить в современные компьютеры, выросло настолько, что на повестку дня встал вопрос о расширении возможностей использования ограниченных системных ресурсов (в первую очередь прерываний). Если бы одну и ту же линию прерывания удалось бы использовать для обслуживания нескольких устройств, то количество плат расширения в компьютере можно было бы существенно увеличить. В рамках архитектуры шины ISA этот подход реализовать невозможно, однако шина PCI построена таким образом, что прерывания отдельным устройствам можно назначать динамически. Метод динамического присвоения прерываний получил название управления прерываниями (PCIbus fRQsteering). Его поддержка предусмотрена eWindows 95 OSR2 и выше. Учтите, что в исходной версии Windows 95 и версии Windows 95 OSR1 управление прерываниями в шине PCI не предусмотрено.

Назначение прерываний устройствам, подключаемым к шине PCI

Управление прерываниями позволяет при работе под Windows 98/SE и выше достаточно быстро перепрограммировать IRQ в рамках шины PCI втех ситуациях, когда нужно перераспределить ресурсы устройств РпР, подключаемых к шинам ISA и PCI, во избежание их конфликтов с устройствами ISA, несоответствующими стандарту РпР. В результате многие конфликты из-за прерываний устраняются автоматически, без непосредственного вмешательства пользователя или технического специалиста. Если в Windows управление прерываниями отключено, то они назначаются устройствам PCI в BIOS. В противном случае IRQ, назначенные в Windows, перекрывают распределение, сделанное в BIOS.

Если в системе предусмотрено управление прерываниями, то для операционной системы Windows 9x/Me в списке присвоенных IRQ (рис. 10.4) будут присутствовать несколько строк, которые соответствуют устройствам и драйверам, использующим прерывание шины PCI (IRQ holder). Например, наличие строки «Поддержка IRQ для управления PCI»

(IRQ Holder for PCI IRQ Steering) означает, что соответствующее прерывание запрограммировано на использование шиной РС1 и недоступно для устройств ISA даже в тех случаях, когда нет реальных устройств PCI, использующих эту линию. В Windows XP вместо такого сообщения выводится тип шины, которая использует данное прерывание — ISA или PCI, см. рис. 10.2.





Рис. 10.4 Список назначенных прерываний в Windows 9x/Me


Настройка режима управления прерываниями

В подавляющем большинстве современных компьютеров управление прерываниями шины PCI должно быть включено. В операционной системе Windows XP управление прерываниями осуществляется автоматически. В Windows 9x/Me имеется возможность проверить это, просмотрев распределение IRQ (рис. 10.4). Если хотя бы в одной строке списка вы увидите слова вида «Поддержка IRQ для управления PCI» (IRQ Holder), то это означает, что управление прерываниями включено. Вы можете выяснить это и другим способом

1.   Выберите пункт «Пуск | Настройка | Панель управления | Система» (Start | Settings | Control Panel | System).

2.   Выберите вкладку «Устройства» (Device Manager).

3.   Раскройте список «Системные устройства» (System Devices) — соответствующая строка располагается в конце общего списка.

4.   Найдите строку «Шина PCI» (PCI Bus) и дважды щелкните по ней. Выберите вкладку «Управление IRQ» (IRQ Steering) (рис. 10.5). В разделе «Переадресация IRQ» (IRQ Routing Status) отображается текущее состояние системы: Управление IRQ включено (IRQ Steering Enabled) или Управление IRQ отключено (IRQ Steering Disabled).

По умолчанию в Windbws 95 OSR2 управление прерываниями .отключено,. Чтобы его включить, используйте в поле «Использовать управление IRQ» (Ose IRQ Steering);


В зависимости от выбранных настроек, Windows будет использовать различные таблицы переадресации при программировании режима управления прерываниями.


Рис. 10.5 Проверка состояния управления прерываниями в Windows 9x/Me


Таблица IRQ из ACPI BIOS (Get IRQ table using ACPI BIOS). При выборе этого режима первой таблицей, которой попытается воспользоваться Windows, будет таблица переадресации IRQ из ACPI BIOS. Если какое-либо из устройств PCI работает некорректно, снимите флажок в этом поле.

Таблица IRQ из таблицы спецификации MS(Get IRQ table using MS Specification table). При установке этого режима второй таблицей, которой попытается воспользоваться Windows, будет таблица переадресации Microsoft (Microsoft Specification routing table).

Таблица IRQ от PCIBIOS 2.1 в защищенном режиме (Get IRQ table from Protected Mode PCIBIOS 2.1 call). При установке этого режима третьей таблицей, которой попытается воспользоваться Windows, будет таблица переадресации, полученная от PCIBIOS 2.1 защищенного режима (Protected Mode PCIBIOS 2.1).

Таблица IRQ от PCIBIOS 2.1 в реальном режиме ( Get IRQ table from Real Mode PCIBIOS 2.1 call). При установке этого режима четвертой таблицей, которой попытается воспользоваться Windows, будет таблица переадресации, полученная от PCIBIOS 2.1 реального режима (Real Mode PCIBIOS 2.1).

По умолчанию режим «Таб^и^а U%oj PCIBIOS 2;1 в защищенном режиме» (Get IRQ taple^rqrnPrptecteri,1v|^% PGIBIQS 2.1 call) отключен. Выбирать этот режим слеЙуёгтЬлйсо в томШучае; еоШ какое-либо из устройств PC! работает некорректно.

В большинстве современных компьютеров управление прерываниями включено, однако может отображаться на вкладке «Устройства» (Device Manager) как отключенное. Происходить это может по следующим причинам.

■ Таблица переадресации, которая должна передаваться из BIOS операционной системе, отсутствует или ошибочна. В ней содержатся сведения отом, как на системной плате формируются прерывания в шине PCI. В большинстве случаев решить эту проблему удается путем обновления версии BIOS.

■     Не включен режим «Использовать управление IRQ» (Use IRQ Steering).

■     He включен режим в поле «Таблица IRQ от PCIBIOS 2.1 в защищенном режиме» (Get IRQ table from Protected Mode PCIBIOS 2.1 call).

■     В системной BIOS не предусмотрена поддержка управления прерываниями шины PCI. Свяжитесь с фирмой-производителем вашей системной платы или компьютера и выясните, не появились ли для них новые версии BIOS.

Чтобы отключить управление прерываниями, сделайте следующее.

1.   Выберите пункт «Пуск | Настройка | Панель управления | Система» (Start | Settings | Control Panel | System).

2.   Выберите вкладку «Устройства» (Device Manager).

3.   Раскройте список «Системные устройства» (System Devices).

4.   Найдите строку «Шина PCI» (PCI Bus) и дважды щелкните по ней. Выберите вкладку «Управление IRQ» (IRQ Steering).

5.   Отключите режим «Использоватьуправление IRQ» (Use IRQ Steering). Закройте все окна при помощи кнопки «ОК» и перезагрузите компьютер.

Если вы по каким-либо причинам вынуждены отказаться от управления прерываниями, то вам, возможно, придется отключить этот режим и в BIOS (запустив программу настройки ее параметров).


Обсудить статью на форуме


Если прочитаная статья из нашей обширной энциклопедия компьютера - "Системные ресурсы.Системная память.Управление прерываниями", оказалась полезной или интересной, Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу:

Так же Вы можете задать вопрос по статье через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!
   


Copyright © 2008 - 2021 Дискета.info