parallel port irq в биосе что это
Parallel Port
Другие идентичные по назначению опции: Parallel Port Address, Onboard Parallel Port.
Опция Parallel Port предназначена для настройки параметров работы одного из старейших видов портов ввода-вывода компьютера – параллельного порта. В опции пользователь может установить необходимое ему значение адреса ввода-вывода или предоставить BIOS возможность сконфигурировать данный параметр самостоятельно.
Принцип работы
Параллельный порт относится к категории самых старых устройств ввода-вывода из числа тех, что можно встретить в персональном компьютере. Изначально параллельный порт предназначался для подключения периферийных устройств, и в большинстве случаев такими устройствами являются принтеры.
Хотя в современных компьютерах уже редко можно встретить параллельный порт, функции которого с успехом взяла на себя шина USB, тем не менее, иногда еще используются можно встретить ПК, в которых это устройство установлено. Обычно в BIOS подобных компьютеров существует несколько функций, предназначенных для настройки параметров работы параллельного порта. Обычно к таким параметрам относятся адрес ввода-вывода и аппаратное прерывание.
Опция Parallel Port является одной из наиболее часто используемых опций подобного рода. Она позволяет установить вручную адрес ввода-вывода параллельного порта, предоставить данную настройку BIOS, или полностью выключить порт.
Как правило, в качестве вариантов адресов функция предлагает пользователю следующие варианты: 378, 278, 3BC. Значением по умолчанию является адрес 378. Кроме того, в опции часто присутствует вариант Auto, который позволяет пользователю поручить задачу автоматической настройки параллельного порта BIOS компьютера.
Также при помощи функции Parallel Port пользователь может вообще выключить работу данного устройства. Для этого пользователь должен выбрать вариант Disabled (Выключено).
Если в функции имеется вариант Enabled (Включено), то, как правило, после его выбора пользователь имеет возможность установить значение адреса и ввода-вывода и аппаратного прерывания в двух отдельных опциях Base I/O Address и Interrupt.
В вариантах опции Parallel Port Address или Onboard Parallel Port может одновременно указываться два параметра – адрес ввода-вывода и аппаратное прерывание, например, в таком виде: 378/IRQ7. Однако в большинстве случаев для установки прерывания используется другая опция, например, Port IRQ.
Какое значение функции выбрать?
Большинству современных пользователей, как правило, совершенно не нужен параллельный порт; кроме того, зачастую он вообще отсутствует на материнской плате компьютера. Поэтому лучше всего выбрать в данной опции значение Disabled. Если же вы собираетесь использовать параллельный порт для подключения периферийных устройств, но не уверены в том, что знаете, как его правильно настраивать, то в таком случае лучше всего выбрать значение функции, равное Auto. В том случае, если BIOS не способна автоматически настроить порт, или вариант Auto в опции отсутствует, то вы можете попытаться самостоятельно выбрать необходимое значение адреса, а возможно, и номера аппаратного прерывания из предложенного в опции списка. При этом стоит помнить, что традиционно для параллельного порта используется адрес ввода-вывода 378 и прерывание IRQ 7. Если при установке этих значений устройство не работает, то можно попытаться выбрать другие значения адреса ввода-вывода и/или аппаратного прерывания.
Parallel Port Mode
Параллельный порт относится к числу давно используемых и хорошо зарекомендовавших себя элементов компьютера. И одной из важнейших опций BIOS, отвечающих за его настройку, является опция Parallel port mode (Режим работы параллельного порта). Данная опция позволяет установить необходимый пользователю режим работы параллельного порта. Как правило, опция содержит следующие варианты выбора: Normal (SPP), ECP, EPP, ECP+EPP. Обычно эта функция входит в раздел BIOS Onboard Parallel Port.
Принцип работы
Параллельный порт (LPT) персонального компьютера представляет собой внешнюю шину, входящую в подсистему ввода-вывода. К параллельному порту можно подключать различные периферийные устройства, хотя в большинстве случаев такими устройствами являются принтеры или плоттеры.
Особенностью параллельного порта является одновременная передача сигналов по нескольким проводникам. Параллельный порт имеет несколько режимов работы, при которых информация может передаваться как в одном направлении, так и в двух направлениях с разными скоростями. За время существования параллельного порта было разработано несколько стандартов его работы, для выбора которых и служит опция Parallel port mode.
Режимом по умолчанию является вариант Normal (SPP, стандартный параллельный порт). Этот протокол передачи данных является наиболее старым и позволяет подключать к параллельному порту практически любые устройства.
Хотя первоначально протокол SPP поддерживал передачу данных лишь в одном направлении – к периферийному устройству, тем не менее, более поздняя версия протокола позволяет порту как передавать, так и принимать данные. Выходная скорость порта в режиме SPP составляет 150 КБ/c, а входная скорость, из-за программного ограничения, в несколько раз меньше – 50 КБ/c.
Для замены низкоскоростного стандартного параллельного порта компаниями Microsoft и Hewlett-Packard был разработан усовершенствованный ECP (Extended Capabilities Port). Порт ECP способен работать в режиме FIFO и поддерживает более высокую скорость передачи данных – до 2 МБ/c, как в направлении периферийного устройства, так и в обратную сторону. Также стандарт ECP поддерживает технологию DMA.
Кроме того, был разработан протокол EPP (стандарт IEEE 1284), рассчитанный на работу со стандартным параллельным портом. При этом скорость передачи данных по протоколу EPP также достигает 2 МБ/c, однако, в отличие от ECP передача данных осуществляется ассиметричным способом.
Какое значение опции выбрать?
Режим SPP является самым медленным режимом работы параллельного порта и поэтому его использование оправдано лишь в тех случаях, когда к порту нужно подключить старые периферийные устройства, поддерживающие лишь этот стандарт.
Отсюда следует, что если вы используете современные устройства, то лучше всего выбрать режим ECP или EPP. Однако область применения данных режимов тоже несколько отличается. Вариант ECP больше подходит для подключения высокоскоростных принтеров, плоттеров или сканеров. Вариант EPP рекомендуется использовать там, где требуется частое переключение порта с режима чтения данных на режим вывода данных, например, в случае подключения внешних жестких дисков, накопителей ZIP, и т.д.
В любом случае, прежде чем выбрать в BIOS вариант опции Parallel port mode, рекомендуется ознакомиться с инструкцией к подключаемому периферийному устройству – скорее всего, в ней указан режим работы, предпочтительный для данного устройства.
Разумеется, может случиться так, что вы не нашли инструкцию к периферийному устройству, или в этой инструкции не указан требуемый режим его работы. В таком случае лучше всего выбрать вариант опции ECP+EPP, поскольку он позволяет подключать устройства, поддерживающие какой-либо из этих протоколов. При подключении устройства в данном режиме BIOS автоматически выберет предпочтительный режим работы.
Однако устанавливать вариант ECP+EPP рекомендуется лишь в исключительных случаях, тогда, когда нельзя определить тип периферийного устройствам каким-либо иным способом, поскольку BIOS не всегда способен правильно определить тип устройства.
Аппаратные прерывания IRQ
Думаю, многие любознательные пользователи, наверняка не раз встречали такое сокращение, как IRQ. Его можно встретить, например, если вы любите заглядывать в программу «Менеджер устройств» в Windows. Если вы выберете любое устройство, к примеру, клавиатуру, выберете при помощи правой кнопки мыши пункт меню «Свойства», и в появившемся окне сделаете активной закладку «Ресурсы», то в списке ресурсов вы увидите надпись IRQ 01.
Для чего нужны IRQ
Что же такое IRQ и для чего оно нужно?
Аббревиатура IRQ расшифровывается как Interrupt ReQuest (запрос на прерывание). Для того, чтобы понять, для чего оно нужно, следует вспомнить подробности организации работы персонального компьютера.
Кровеносной системой компьютера, по которой обмениваются информацией процессор и прочие устройства, является системная шина. Но как вообще процессор способен отличить запросы на обработку информации, поступающие по шине от различных устройств?
Для этого и существует система аппаратных прерываний (IRQ). Каждое прерывание имеет определенный номер (нумерация начинается с 0) и закреплено за определенным устройством. Так, за клавиатурой закреплено прерывание под номером 1, отсюда и обозначение IRQ 01.
При поступлении запроса от устройства компьютер прерывает (отсюда и появился сам термин «прерывание») обработку текущей информации и начинает обработку вновь поступившего. Если прерываний несколько, то они обрабатывается в порядке приоритетов, закрепленных за каждым из них. Как правило, чем меньше номер прерывания, тем больший приоритет для процессора имеет устройство, закрепленное за этим прерыванием, но это правило соблюдается далеко не всегда.
Обслуживает обработку IRQ специальный чип, который носит название контроллера прерываний. Как правило, эта микросхема является частью центрального процессора, а иногда выделяется в отдельный чип на материнской плате. Для обработки каждого прерывания в BIOS существует специальная микропрограмма, называемая обработчиком прерывания. Адреса всех обработчиков хранятся в так называемой таблице векторов прерываний.
Раньше, в первых компьютерах семейства XT была распространена 8-разрядная шина ISA, поэтому всего устройствам было доступно 8 прерываний. С появлением 16-разрядной шины ISA их количество увеличилось до 16.
Настройка Interrupt ReQuest
Надо сказать, что прерывания, закрепленные за некоторыми устройствами, не является фиксированными и их можно изменить программно. Например, IRQ стандартно использующееся последовательным портом Com 2, может использовать и устанавливаемый в слот расширения модем. В современных компьютерах и операционных системах, поддерживающих стандарт PnP и работающих под управлением ОС Windows, значения IRQ для устройств, подключаемых в слоты шины, подбираются автоматически.
Но не все было так просто в прежние времена, когда пользователь должен был вручную устанавливать значение IRQ во многих программах, работавших под операционной системой DOS. Например, при установке в систему звуковой карты, пользователю требовалось выбрать свободное прерывание из очень небольшого числа доступных (как правило, это было IRQ 5) и указать это значение в запускаемой программе, например, в какой-нибудь игре.
Во многих BIOS имеется возможность поменять стандартные значения IRQ в программе Setup. Обычно эта опция располагается в разделах IRQ Resources или PCI/PNP Configuration.
Установка для устройства значения IRQ, равного значению IRQ, уже занятого каким-либо устройством в большинстве случаев приводит к неработоспособности одного из этих устройств или сразу обоих, а иногда чревато и зависанием компьютера.
В более современной шине PCI система управления прерываниями была кардинально изменена, а возможности управления прерываниями были расширены. Благодаря технологии IRQ Sharing, а также технологии ACPI стало возможным размещение нескольких устройств на одном канале прерывания, а у внешних устройств, подключаемых в слоты PCI, появилась возможность автоматического распределения ресурсов между собой.
Кроме того, в современных компьютерах обычно используется расширенный программируемый контроллер прерываний (APIC, Advanced Programmable Interrupt Controller), поддерживающий 24 канала Interrupt ReQuest. Расширенный контроллер прерываний выполнен в виде двух микросхем, одна из которых расположена в самом процессоре, а другая на материнской плате. Этот контроллер прерываний впервые появился в системах на основе процессоров Pentium. Однако при этом была оставлена поддержка старой системы прерываний в целях совместимости. Очередным шагом в развитии принципов обработки прерываний является технология Message Signaled Interrupts, поддержка которой появилась в линейке ОС Windows, начиная с Windows Vista.
Не следует путать аппаратные прерывания IRQ c программными прерываниями BIOS, о которых речь пойдет в отдельной статье. Программные прерывания BIOS, как правило, используются для организации работы программного обеспечения с устройствами ввода-вывода и обозначаются при помощи сокращения INT. Многие из них аналогичны по своим функциям аппаратным IRQ, но имеют при этом другие номера.
Список номеров Interrupt ReQuest в стандартной схеме для 16-битной шины ISA:
Список дополнительных номеров IRQ, которые использует расширенный контроллер прерываний APIC:
Соответствие номеров IRQ и прерываний BIOS:
Заключение
Итак, в этой статье вы смогли узнать, что означает сокращение IRQ, и что представляют собой аппаратные прерывания. Они являются встроенным механизмом распределения ресурсов компьютера и предназначены для организации доступа устройств к центральному процессору. Правильное распределение и настройка IRQ позволяет избежать конфликтов между устройствами и обеспечить стабильную работу системы.
Страдания по IRQ
Бывало ли у вас так: вы включаете сканер или подключаете внешний привод компакт дисков, и в этот момент вся система начинает заметно тормозить и вести себя неадекватно: мышь по экрану двигается рывками, звук начинает заикаться или отключается. Бывают и более тяжелые случаи. Например, после установки новой звуковой платы, при любых попытках вывести звук, даже при старте Windows, компьютер зависает насмерть. Если бывало, то эта статья – о вашем случае. Если нет, то все равно прочтите эту статью – если вдруг это случится, то вы будете знать, что делать.
Эти проблемы, чаще всего, вызваны конфликтом аппаратных прерываний компьютера. Забавно, но довольно серьезная часть проблем с компьютером после установки нового железа как раз и связана с этими самыми конфликтами, только о них никто не говорит и вообще, эта тема мало обсуждается. Понимание всего вопроса в целом довольно обширная тема и каждый случай конфликта часто отличается от предыдущего, как по симптомам, так и по методам решения. В этой статье мы попытаемся объяснить сложившуюся ситуацию для пользователей, которые уже не боятся компьютеров, но еще не набрали достаточно опыта для решения проблем с конфликтами железа самостоятельно. К сожалению, некоторые моменты статьи довольно тяжело могут восприниматься из-за описаний систем построенных на нечеткой логике, которая, кстати, и является сильной стороной человека по отношению к компьютерам.
Немного истории
Многим эта часть статьи покажется необязательной, так как рассказ будет о старых временах, где-то с 1985 года, но эта информация важна тем, кто хочет разобраться в сути проблемы и понять, почему всё сложилось так неоднозначно.
Давным-давно, в далекой Америке, был разработан процессор x86, который является прародителем всех процессоров, используемых в персональных компьютерах стандарта IBM PC. То есть все Pentium и Athlon имеют в своей основе старый, добрый процессор x86. Архитектура современных процессоров уже очень сильно отличается от первого x86, тем не менее, некоторые моменты сохранились с тех давних времен, когда x86 процессор находился в начале своего пути, а именно с середины восьмидесятых годов прошлого века. Одним из таких моментов является ограничение количества линий аппаратных прерываний для центрального процессора.
Системность | Линия IRQ | Устройство |
S | 0 | Системный таймер |
S | 1 | Клавиатура |
S | 2 | Cascad (Вывод на вторую микросхему контроллера линий прерываний) |
S | 8 | Часы реального времени |
9 | Свободно | |
10 | Свободно | |
11 | Свободно | |
12 | Свободно | |
S | 13 | Сопроцессор |
14 | IDE Primary (Контроллер жестких дисков) | |
15 | IDE Secondary (Контроллер жестких дисков) | |
3 | Com Port 1 (Мышь) | |
4 | Com Port 2 (Модем) | |
5 | Свободно | |
S | 6 | Floppy (Дисковод) |
7 | LPT (Принтер) |
Такая раскладка прерываний очень долго сохранялась на многих бытовых компьютерах. Почти все компьютеры на базе процессоров 386, 486 и Pentium имеют такой список использованных прерываний. При таком раскладе свободных прерываний в компьютере оказывается всего пять (5, 9, 10, 11, 12), но этого количества для большинства случаев было вполне достаточно. Устройств, требующих прерывание и устанавливаемых в компьютер в виде плат расширения, редко было больше трех. Стандартный набор того времени выглядел так: видеокарта, звуковая плата и сетевая карта. При этом было важно, чтобы одно прерывание ни в коем случае не использовалось двумя устройствами одновременно, так как это повлечет конфликт системных ресурсов, и оба устройства, находящихся на одном прерывании, работать не будут. Задачей сборщика компьютера на тот момент было разведение всех устройств по прерываниям таким образом, чтобы ни одно устройство не пересекалось с другим.
Наверное, самое время объяснить, что такое конфликт прерываний. Если два устройства находятся на одной линии прерываний, то драйвер может их спутать и переслать исполняемый кусок программы не той «железке», при этом заставляя ее исполнить этот кусок кода. Например, сетевая плата и звуковая карта находятся на 10 прерывании. Сетевая карта получает пакет из локальной сети с запросом на получение файла и отправляет запрос на прерывание центральному процессору.
Процессор отрабатывает прерывание, останавливает исполняемую задачу и передает управление драйверу сетевой карты, для отработки необходимых для приемки файла действий. Драйвер начинает работу с устройством, от которого пришло прерывание. Вот только работать он начинает не с сетевой платой, а со звуковой картой, находящейся на той же линии, передавая ей команды для приемки файла. Звуковая карта исполняет принятые команды, и полностью завешивает компьютер с BSOD (Blue Screen Of Death).
Существует еще одна небольшая тонкость. Все линии прерываний имеют свой приоритет. Чем выше приоритет у линии прерывания, тем быстрее процессор ответит на запрос от устройства находящегося на этой линии. Приоритеты прерываний приведены в таблице ниже в порядке убывания.
Исторически сложившаяся архитектура наложила очень сильный отпечаток на приоритеты линий прерываний. Подключенная вторая микросхема контроллера ко второй линии первой микросхемы вклинивается в приоритеты. Поэтому линии второй микросхемы имеют более высокий приоритет, чем линии первой. При этом, обе микросхемы выглядят для пользователя единым модулем контроллера прерываний – PIC (Program Interrupt Controller). Более того, уже давно две микросхемы для этих целей не используется, всё это встроено в северный мост чипсета, но раскладка приоритетов прерываний сохранилась. Чем больше ресурсов от компьютера требует устройство, тем более высокий приоритет должен быть у линии IRQ присвоенной этому устройству. То есть, для видеокарты желательно отдавать девятое или десятое прерывание, если оно свободно. Для звуковой карты тоже желательно найти прерывание, находящееся на втором контроллере. Подробнее об этом вопросе мы поговорим чуть ниже.
Но время не стоит на месте, и ситуация с прерываниями начала ухудшаться одновременно с разработкой новых технологий и развитием всей компьютерной области. Появились новые стандарты портов ввода-вывода, которые требуют собственного прерывания. Например, порты USB или PS/2, которые являются на настоящий момент стандартом де-факто для всех компьютеров. Свободных прерываний становилось всё меньше, а решение системных конфликтов становилось всё более сложным.
Настоящее …
Вся ситуация сильно изменилась с появлением систем ACPI и IRQ Sharing. К сожалению, эти системы никак нельзя описать в одно предложение, поэтому мы рассмотрим их чуть подробнее.
Системность | Линия IRQ | Устройство |
S | 0 | Системный таймер |
S | 1 | Клавиатура |
S | 2 | Cascad (Вывод на вторую микросхему контроллера линий прерываний) |
S | 8 | Часы реального времени |
9 | ACPI Controller | |
10 | Свободно | |
11 | USB | |
S | 12 | PS2 |
S | 13 | Сопроцессор |
14 | IDE Primary (Контроллер жестких дисков) | |
15 | IDE Secondary (Контроллер жестких дисков) | |
3 | Com Port 1 (Мышь) | |
4 | Com Port 2 (Модем) | |
5 | Свободно | |
S | 6 | Floppy (Дисковод) |
7 | LPT (Принтер) |
Как видно из таблицы, свободных прерываний практически не осталось. Свободными можно считать только IRQ 5 и 10, всё остальное занято. По логике, как раз их-то и надо использовать для видеокарты и аудиоплаты. Но устройств, требующих собственное прерывание и не описанных в этой таблице, может быть куда больше. В таблицу они не включены, так как являются опциями, то есть могут быть в системе, а могут и не быть. Например: сетевая карта, контроллер RAID или SCSI, ТВ-тюнер, SATA, IEEE1394 (FireWire) и так далее. То есть, может сложиться ситуация, когда на два свободных прерывания будет восемь устройств, требующих собственного прерывания. Есть три способа решения этой проблемы. Каждый способ имеет свои плюсы и минусы.
Первый способ – это полноценное использование систем ACPI и IRQ Sharing. Если системы ACPI, а соответственно и APIC, включены, то операционная система считает, что у неё 256 прерываний, при этом реальных прерываний как было 16, так и осталось. Оставшиеся 240 прерываний – это виртуальные прерывания, которые являются клонами реальных. ACPI автоматически распределяет прерывания и не позволяет пользователю их менять. Если устройство соглашается работать в режиме кооперации с другим устройством, то есть все шансы, что ACPI посадит их на одну физическую линию. Если не контролировать данную ситуацию, то на одном физическом прерывании могут оказаться практически все устройства, установленные в компьютере, даже если есть свободные прерывания. Это приведет к сильнейшему торможению всей системы и серьезным сбоям в работе.
Решение:
Плюс данного подхода в отсутствии потребности вмешательства со стороны пользователя. То есть, делать ничего не надо. Просто воткнуть в материнскую плату видеоадаптер, процессор, память и так далее, а затем поставить операционную систему, которая нормально поддерживает ACPI. А это Windows XP или Windows 2000. Всё. Компьютер заработает. Именно в таком виде продаются почти все компьютеры, собранные в России. Подход прост: если работает и тормозит – то это не гарантийный случай, а проблема пользователя.
Решение:
Современные материнские платы обладают некоторыми особенностями, которые необходимо знать для корректного разведения линий прерываний по устройствам. Так, все встроенные в материнскую плату устройства чаще всего имеют жесткую привязку к слотам расширения PCI, а некоторые слоты жестко привязаны друг к другу. К примеру, у вас есть встроенная в материнскую плату звуковая карта, при этом она автоматически кооперируется с устройством в третьем слоте PCI. Если вы вставите сетевую плату в третий слот, то встроенная звуковая карта и сетевая плата будут висеть на одном прерывании, чтобы вы ни делали. Решить этот конфликт можно, переставив сетевую карту в другой слот. Или другой пример: пятый и первый слот PCI привязаны друг к другу, и установив два устройства в эти слоты, вы автоматически вешаете их на одну линию прерывания. Опять же, это лечится переустановкой одного из устройств в другой слот. К сожалению, современные материнские платы имеют столько встроенных устройств, что найти свободный слот PCI без запаралеленных устройств бывает невозможно. В этом случае всё зависит от устройства.
Все локальные устройства, находящиеся в компьютере можно разбить на четыре группы по степени зависимости от прерывания.
Надо понимать, что все вышеперечисленные устройства могут обладать уникальными свойствами в зависимости от производителя или прошивки. Все вышеописанные правила работают не всегда и не однозначно. У вас легко может оказаться ТВ-тюнер или сетевая карта, которая напрочь откажется работать с кем-либо в паре. Или наоборот, ваша звуковая карта может вдруг повести себя стабильно на одном прерывании вместе с ТВ-тюнером. Конфликтовать умеют даже устройства, относящиеся к четвертой группе. Чаще всего они начинают глючить, если поставить их в запаралеленный с AGP слот. При этом на понимание всех особенностей конкретно вашего железа может уйти значительное время.
Суть способа в полном отказе от систем ACPI и IRQ Sharing. А устройства, которые лезут на одну линию IRQ нужно просто отключать. Must be only one!, как говорил товарищ из фильма «Горец».
Как понять, есть ли конфликты в вашем компьютере, и что делать
Бывает, что список отображаемых устройств бывает полным и включает в себя контроллеры жестких дисков и все устройства, находящиеся на плате, вплоть до COM-портов. Бывает и наоборот: информации довольно мало, тогда видно только установленные устройства (как на скриншоте). А бывает, что второй экран BIOS вообще не содержит информации о прерываниях. В таком случае стоит воспользоваться другими программами, которые способны отображать физическое распределение прерываний.
Например, можно использовать стандартный диспетчер устройств, переключив его вид на «ресурсы по подключению» и раскрыв раздел «запрос на прерывания (IRQ)», или воспользоваться сторонними программами типа SiSoft Sandra.
Единственный минус их использования состоит в том, что они видят номера прерываний через призму операционной системы. Если используется система ACPI и APIC, то получить корректную информацию об аппаратных прерываниях будет весьма непросто, так как номеров будет не 16, а 256. Нас интересует ситуация, когда цифры не повторяются. Если одна и та же цифра стоит напротив USB Cntrlr, Display Cntrlr и Multimedia Device (аудиоплата или TB-тюнер), то дело совсем плохо. Например, данное окно говорит о следующем:
Как решать и что делать
Нужно понимать, что действия по разрешению конфликтов могут привести к полному падению операционной системы и потере данных. Сделайте резервные копии ваших документов, запишите все пароли и сетевые настройки, и только после этого предпринимайте действия. Лучше всего экспериментировать на свежеустановленной операционной системе и иметь возможность переустановить её после проведения всех действий, если что-то сложится некорректно. Само собой, автор и редакция не несут никакой ответственности за результаты ваших экспериментов.
Шаг первый: изучаем BIOS
Для начала нужно посмотреть на опции в BIOS вашего компьютера. И ничего там не трогать, в противном случае шансы на загрузку уже установленной операционной системы сильно падают. Вне зависимости от производителя BIOS и материнской платы, необходимые для работы опции могут присутствовать, а могут и отсутствовать. Стандарта для этих опций не существует, поэтому они могут иметь разные названия и находится в разных разделах BIOS. Но, применяя дедуктивный метод Шерлока Холмса, их все же можно найти. Для примера мы приведем названия этих опций в Award BIOS материнской платы GigaByte. Самые важные для нас опции находятся в разделе PnP\PCI Configuration и выглядят как номера слотов и привязанные к ним номера прерываний, которые можно менять.
С помощью этих опций можно добиться правильного распределения приоритетов линий прерываний к устройствам:
• PCI 1 IRQ Assigment : Auto (Auto, 3,4,5,7,9,10,11,14,15)
• PCI 2 IRQ Assigment : Auto (Auto, 3,4,5,7,9,10,11,14,15)
• PCI 3 IRQ Assigment : Auto (Auto, 3,4,5,7,9,10,11,14,15)
• PCI 4 IRQ Assigment : Auto (Auto, 3,4,5,7,9,10,11,14,15)
То есть, можно руками менять прерывания для слотов и привязанных к ним устройств. Если все опции выставлены в Auto, то распределением прерываний занимается автомат с алгоритмом, очень схожим с алгоритмом системы ACPI. Иногда бывает указание прерываний не цифрами, а буквами – A,B,C,D. Так же, как в случае с цифрами, буквенные прерывания позволяют собой управлять, при этом наивысший приоритет – у буквы А.
• PnP OS Installed : Yes (No)
Эта опция сообщает BIOS, что распределением прерываний занимается сама операционная система. Иногда после изменения значения на NO открывается возможность контроля приоритетов по слотам.
• ACPI Function : Enable (Disable)
Понятное дело, эта опция включает и отключает поддержку ACPI в BIOS. Если отключить эту опцию перед инсталляцией операционной системы, то, возможно, ядро ACPI и не будет инсталлировано (сильно зависит от версии и типа BIOS).
• Interrupt Controller : APIC (PIC)
Также полезны опции по отключению устройств :
• Midi Port Adress – можно отключить Миди порт
• Onboard Parallel Port – можно отключить LPT порт
• Onboard Audio – можно отключить встроенную звуковую плату
• Onboard LAN Control – можно отключить встроенный сетевой адаптер
• USB Host Controller – можно отключить USB порты
• Onboard Serial ATA – можно отключить Serial ATA
• Onboard RAID – можно отключить RAID-контроллер.
Если указанные выше устройства не используются, то выставление Disabled отключит их и освободит используемые ими ресурсы.
Шаг второй – Карта прерываний
Ищем документацию от материнской платы. Если повезет, то в ней вы найдете карту прерываний для вашей материнской платы, которая выглядит следующим образом:
A | B | C | D | E | F | G |
PCI Slot 1 | Shared | |||||
PCI Slot 2 | Shared | |||||
PCI Slot 3 | Shared | |||||
PCI Slot 4 | Shared | |||||
PCI Slot 5 | Shared | |||||
PCI Slot 6 | Shared | |||||
AGP Slot | Shared | |||||
USB 1.1 UHCI 1 | Shared | |||||
USB 1.1 UHCI 1 | Shared | |||||
USB 1.1 UHCI 1 | Shared | |||||
USB 1.1 EHCI | Shared | |||||
Audio codec | Used | |||||
Onboard LAN | Shared | |||||
Onboard 1394 | Shared | |||||
Onboard SATA | Shared | |||||
Onboard IDE | Used |
Более того, прерываний на все эти устройства всё равно не хватит, поэтому нужно освободить неиспользуемые линии IRQ. Радует только одно: типов установленных устройств не так много. Редко бывают нужны в компьютере две сетевые платы или две звуковые карты. Если используется SerialATA, то чаще всего не нужны оба канала контроллера UATA, занимающий 14 и 15 прерывание. Одно из них можно освободить, учитывая, что второе занимает CD-ROM. И так далее.
Если вы обратили внимание, не все буквенные индексы в таблице привязаны к слотам расширения PCI. Например, линия F, на которой висит USB, не привязана к слотам, в то время как из BIOS контролируются только номера прерываний для слотов. Линией F управляет внутренняя автоматика BIOS. А эта автоматика будет кооперировать эту линию IRQ с чем попало. Чтобы разрешить конфликты с этой веткой? вам потребуются шаманский бубен, кроличья лапка и большая подкова. На самом деле вам придется менять конфигурацию раскладок прерываний для слотов до тех пор, пока линия F не встанет на устраивающее вас значение. Каждым изменением вы заставляете автоматику пересчитать всю конфигурацию, и каждый раз автоматика будет назначать новое значение для линии F. Если таких бесконтрольных линий больше чем одна, задача усложняется. В нашем случае бесконтрольной осталась линия G. Но терпение и труд, как известно, всё перетрут.
Мы описали карту прерываний от материнской платы Asustek A7V8X, конкретные же карты прерываний у каждой материнской платы свои. Но основные принципы вычисления зависимостей по этому описанию можно понять.
Шаг третий – Изменения в операционной системе
Самым первым изменением, с которого мы начнем настройку системы, будет замена ядра операционной системы для отключения функций ACPI. Как уже упоминалось ранее, после этого компьютер потеряет все энергосберегающие функции и перестанет сам выключаться после завершения работы операционной системы. Для этого нужно зайти в контрольную панель, выбрать иконку «Система», затем перейти в закладку «Оборудование» и нажать на «Диспетчер устройств». Затем открыть раздел «Компьютер» и двойным кликом нажать на «Компьютер с ACPI». Выбрать закладку «Драйвер» и нажать на кнопку «Обновить».
Выбрать «установку из указанного места», а затем отказаться от автоматического поиска драйвера и выбрать установку драйвера вручную. В появившемся окне убрать галочку «только совместимые устройства» и выбрать драйвер «Стандартный компьютер».
После нажатия на кнопку «Далее» компьютер скопирует необходимые файлы и уйдет на перезагрузку. После перезагрузки компьютер начнет находить ВСЕ устройства заново, включая системные устройства, но будет находить драйверы для них в автоматическом режиме. Некоторые устройства не проходят автоматическую установку, но для них достаточно выбрать автоматический поиск драйверов. После этого компьютер еще раз перезагрузится и после этого заработает в нормальном режиме. Всё, система ACPI отключена. Для того, чтобы снова включить ACPI, нужно повторить все вышеописанные действия, только выбрать «Компьютер с поддержкой ACPI».
Теперь вся системная информация касательно линий прерываний внутри операционной системы соответствует действительности. Номера прерываний соответствуют реальным. Это означает, что для мониторинга прерываний теперь можно использовать различные утилиты, показывающие прерывания в среде Windows.
Так выглядит раскладка прерываний после отключения ACPI и с сохранением IRQ Sharing. Кстати сказать, на скриншоте приведена раскладка прерываний с разрешенными основными конфликтами. Только RAID массив конфликтует с SMBus, но этот конфликт разрешить нет возможности, так как встроенный RAID-контроллер связан с SMBus картой прерываний. Приоритеты линий прерываний соответствуют типу устройств. В этом компьютере конфликты решены вторым способом, никаких доработок и изменений не требуется.
Шаг четвертый – Изменения в BIOS
Фактически, этот шаг является обобщением действий, описанных выше, только если выше были описания, то сейчас нужно предпринимать реальный действия, поэтому прошу прощения за некоторые повторения. Первым делом меняем опции в BIOS, если они конечно присутствуют:
• PnP OS Installed : NO
• ACPI Function : Disabled
• Interrupt Controller : PIC
Выводы
Весьма непросто бывает объяснить системы, которые представляют из себя не линейную информацию, а переплетение различных кусков информации в сочетании с интуицией и логикой, человеческой логикой, а не компьютерной. Из-за отсутствия упорядоченной информации и отточенных технологий, каждый человек умеющий решать конфликты внутри компьютера считает себя чуть-чуть магом, потому что каждый это делает немного по своему. У всех есть маленькие хитрости и секреты. Для того, чтобы сделать этот текст хотя бы немного понятным я старался не заострять внимания на объяснениях всех действий и точным описанием всех функций и спецификаций. Тем не менее, если у вас возникнут вопросы или комментарии, автор статьи с удовольствием выслушает и ответит на них. Мы надеемся, что эта статья поможет начинающим компьютерщикам разобраться в сложившейся ситуации.