next up previous contents
Next: Проблемы с распознаванием жесткого Up: Проблемы с аппаратным обеспечением Previous: Проблемы с аппаратным обеспечением

Выявление проблем с аппаратным обеспечением.

   

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

Это предложение не является столь пугающим, как может показаться. По сути, следует удалить все несущественные компоненты аппаратного обеспечения из компьютера и затем определить, какой из них вызвал конфликт. Для этого следует, например, вставлять их обратно по одному за один раз. Удалить следует все, за исключением дисковода для гибких дисков, видеоадаптера и (разумеется) клавиатуры. Даже такие на первый взгляд невинные устройства, как контроллеры мыши, будут оставаться причиной для беспокойства до тех пор, пока их не начнут считать несущественными.

Пусть, например, компьютер повисает при загрузке во время поиска адаптера Ethernet. Можно предположить, что проблема или конфликт связаны с этим адаптером. Быстрый и простой путь проверить, так ли это -- извлечь адаптер и попробовать загрузить систему вновь. Если все проходит удачно, то можно сказать наверняка, что либо адаптер не поддерживается системой Linux (см. разд. 1.8), либо имеет место конфликт адресов или IRQ, связанных с адаптером.

  Что означает высказывание "конфликт адресов или IRQ, связанных с адаптером"? Все устройства в компьютере используют IRQ (interrupt request line -- строка запроса прерывания) для сообщения системе, что по их требованию она должна что-либо сделать. Можно представить себе IRQ веревкой, за который устройство дергает, когда этому устройству нужно, чтобы система отреагировала на некоторый ждущий своей очереди запрос. Если за одну и ту же веревку тянут несколько физических устройств, то ядро системы не сможет определить, какое устройство надо обслуживать. Такая ситуация недопустима.

Следовательно, надо убедиться, что все установленное аппаратное обеспечение имеет свой уникальный номер IRQ. Обычно номер IRQ, используемый устройством, может быть задан джамперами (jumpers) на соответствующем адаптере; подробности должны быть даны в документации на каждое конкретное устройство. Некоторым устройствам не требуется использовать IRQ, но предлагается конфигурировать их по возможности так, чтобы они его использовали (хорошими примерами будут контроллеры SCSI Seagate ST01 и ST02).

В некоторых случаях ядро системы, имеющееся в дистрибутиве, сконфигурировано так, чтобы использовать определенные номера IRQ для определенных устройств. Например, в некоторых дистрибутивах системы Linux ядро изначально сконфигурировано так, что IRQ 5 используется для контроллера TMC-950 SCSI, контроллера Mitsumi CD-ROM и драйвера мыши, подключаемой к шине (bus mouse driver). Если планируется использовать два или более из этих устройств, то сначала надо установить систему Linux с драйверами только одного из этих устройств, потом изменить назначаемый номер IRQ для одного из этих устройств и перекомпилировать ядро системы (о том, как перекомпилировать ядро, написано в главе 4).

Еще одна область, где возникают конфликты аппаратного обеспечения компьютера -- каналы DMA (DMA channels; DMA -- direct memory access -- прямой доступ к памяти), адреса ввода/вывода (I/O addresses) и разделяемые адреса памяти (shared memory addresses). Все эти термины описывают механизмы, посредством которых система взаимодействует с различными устройствами. Некоторые адаптеры Ethernet, например, используют как IRQ, так и разделяемые адреса памяти. Если хотя бы один из этих механизмов конфликтует с любым другим устройством, то система может вести себя непредсказуемо. Следует уметь поменять канал DMA, адрес ввода/вывода или разделяемый адрес памяти устройств посредством джамперов. К сожалению, не для всех устройств это возможно.

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

В следующей таблице дается список номеров IRQ и каналов DMA, которые используют различные "стандартные" устройства в большинстве компьютеров. Почти во всех компьютерах есть хотя бы некоторые из перечисленных устройств, так что следует избегать конфликтов при установке номеров IRQ и каналов DMA для других устройств.

 

Устройство адрес ввода/вывода IRQ DMA
(I/O address)
ttyS0 (COM1) 3f8 4 нет
ttyS1 (COM2) 2f8 3 нет
ttyS2 (COM3) 3e8 4 нет
ttyS3 (COM4) 2e8 3 нет
lp0 (LPT1) 378 - 37f 7 нет
lp1 (LPT2) 278 - 27f 5 нет
fd0, fd1 (дисководы 3f0 - 3f7 6 2
гибких дисков номер 1 и 2)
fd2, fd3 (дисководы 370 - 377 10 3
гибких дисков номер 3 и 4)
Table: Стандартные установки для некоторых устройств.

 

 


next up previous contents
Next: Проблемы с распознаванием жесткого Up: Проблемы с аппаратным обеспечением Previous: Проблемы с аппаратным обеспечением

root
Sun Aug 29 12:01:30 MSD 1999