Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка ВМСиС.doc
Скачиваний:
8
Добавлен:
08.12.2018
Размер:
8.46 Mб
Скачать

3. Краткие теоретические сведения

Распределение системных ресурсов – один из важнейших моментов при загрузке компьютера. От того, как система распределит прерывания и доступ к динамической памяти, сконфигурирует взаимодействие устройств (карт расширения) с шинами и т.д., может в значительной мере зависеть как производительность всей системы в целом, так и работоспособность отдельных устройств (рис.1.).

Рис.1

При установке устройства Plug and Play Windows автоматически настраивает его, обеспечивая его правильную работу с другими установленными на компьютере устройствами. В ходе процесса настройки Windows назначает устанавливаемому устройству уникальный набор системных ресурсов. Эти ресурсы могут включать один или несколько из следующих параметров.

  • Номера строк запроса на прерывание (IRQ).

  • Каналы прямого доступа к памяти (DMA).

  • Адреса портов ввода/вывода (I/O).

  • Диапазоны адресов памяти.

Адрес памяти – часть памяти компьютера, которая может быть выделена устройству или использоваться программой или операционной системой. Устройству обычно выделяется диапазон адресов.

Каждый ресурс, назначаемый устройству, должен быть уникальным. Это необходимо для правильной работы устройства. Для устройств Plug and Play Windows автоматически проверяет правильность настройки ресурсов (рис.2.).

Рис.2 Ресурсы ПК.

Прерывание IRQ (Interrupt Request) – это запрос устройства на обработку данных процессором. При получении прерывания процессор приостанавливает свои операции, сохраняет текущее состояние и предает управление специальной программе (обработчику прерывания), содержащей команды для обработки ситуации, вызвавшей это прерывание. Каждому устройству, как периферийному, так и внутреннему, система присваивает определенное прерывание, используя которое устройство информирует процессор о необходимости обработки запроса от данного устройства.

Некоторые прерывания жестко закреплены за определенными устройствами, в то время как другие – могут перераспределяться в зависимости от текущих требований. Всего в системе используется 16 прерываний: от IRQ0 до IRQ15. При этом четыре прерывания, IRQ0, IRQ1, IRQ8 и IRQ13, зарезервированы системой (для системного таймера, клавиатуры, часов и математического сопроцессора) и не учувствуют в распределении между остальными устройствами системы и картами расширения (рис.3.).

Рис.3 «Карта прерываний»

Как происходит распределение прерываний? После включения компьютера при его тестировании выполняется присваивание прерываний системным устройствам, размещенным на материнской плате, затем ISA – устройствам и в конце – PCI – устройствам. Первыми распределяются прерывания для ISA – устройства, поскольку не все из таких устройств поддерживают технологию Plug and Play и могут требовать ручного (например, с помощью переключателей на материнской плате) указания номера прерывания. После распределения прерываний их конфигурация сохраняется в энергонезависимой CMOS – памяти. При последующих загрузках эта конфигурация автоматически вызывается из памяти, сравнивается с текущим состоянием системы и, в этом случае, если не произошло никаких изменений, загружается. Если в системе произошли изменения, например замена или удаление карт расширения, процедура распределения прерываний выполняется заново.

Картам расширения, поддерживающим технологию Plug and Play, выделяются все оставшиеся прерывания, которые распределяются между устройствами автоматически. В тех случаях, когда карт расширения больше, чем свободных прерываний, на одном прерывании может оказаться несколько устройств. В некоторых операционных системах, например Windows 2000/XP, все прерывания перераспределяются еще раз после загрузки системы, и может сложиться ситуация, когда без каких – либо видимых причин на одном прерывании одновременно окажутся несколько устройств, например звуковая плата, видеокарта и модем. В результате, если задействовать такие устройства параллельно, в работе системе могут происходить весьма ощутимые задержки, например в нашем случае – при работе модема (дозвоне) может «подвисать» звук. При этом если в Windows 98 можно было выполнить ручное конфигурирование и перераспределение прерываний, то в Widows 2000/XP по умолчанию это сделать нельзя – данная операция становится доступной только после отключения менеджера энергосберегающей режима ACPI.

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

  • Слоту AGP и первому слоту PCI присваивается один и тот же номер прерывания;

  • Если PCI – слотов пять, то один номер прерывания разделяется между четвертым и пятым слотами;

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

В современных системах все большее развитие получают схемы, позволяющие подключать внешние периферийные устройства через USB – порты. Такие системы удобны, поскольку шина USB занимает одно прерывание и позволяет подключать в систему без дальнейшего расходования ресурсов все периферийные устройства, оборудованные соответствующими разъемами: мышь, клавиатуру, сканер, видеокамеру и т.д. Поэтому переход на USB – устройства, кроме явного выигрыша в скорости обслуживания данного устройства (исключением, пожалуй, являются только высокоскоростные, имеющие IDE – контроллер: жесткие диски и CD – ROM приводы), позволяют разгрузить системные требования, облегчив тем самым доступ к ним для других устройств.

Все параметры, позволяющие указать способ распределения аппаратных прерываний, находятся в разделе PNP/PCI Configuration BIOS.

Ручное выделение ресурсов необходимо в тех случаях, когда после автоматического распределения начинают возникать непонятные конфликты, не связанные с работоспособностью самого устройства. Самый простой пример – «подтормаживание» одного устройства при включении другого. Очень часто после перераспределения прерываний и (или) изменения местоположения устройства, то есть изменения слота, система начинает работать нормально.

Нередко проблемы возникают при работе видеокарты – при выполнении рутинной офисной работы все нормально, а при загрузке игр, требующих использования 3D – ускорителя (при условии его наличия, правильности настройки драйверов и программного окружения), картинка начинает мерцать, изображение «ползет» и т.д.

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

Для выхода из создавшегося положения можно использовать параметр Assign IRQ For VGA (IRQ to PCI VGA, Allocated IRQ to PCI VGA). Этот параметр имеет два значения: Enabled (Yes) – разрешено, и Disabled (No) – запрещено. При разрешении система выделяет видеокарте отдельное прерывание, что положительно сказывается на производительности или при игре с программами, обрабатывающими видеопотоки. При этом нужно помнить, что, отдавая отдельное прерывание видеокарте, вы уменьшаете число прерываний для остальных PCI – устройств и соответственно ухудшаете их взаимодействие с системой. Все указывает на необходимость определить приоритеты при использовании компьютера: если первична офисная работа, то выделение отдельного прерывания нецелесообразно.

При работе со старыми PCI – видеокартами также можно использовать выделение индивидуального аппаратного прерывания, которое выполняется с помощью параметра Slot n IRQ for VGA, где nэто число имеющихся в компьютере PCI – слотов. Соответственно, тот слот, в котором находится видеокарта и которому необходимо выделить отдельное прерывание, должен получить значение Enable – разрешено, а все остальные – Disable – запрещено.