On Thu, Apr 21, 2005 at 02:31:11PM +0900, Хлызов А.А. wrote: > Подскажите, можно ли как-нибудь сделать такую вещь: у меня есть звук (SB > PCI128) и SCSI контроллер (Adaptec ASC-39320). Они занимают один IRQ, посему > - когда идет обращение к SCSI, звук начинает хрипеть и пропадать. Можно ли > как -нить средствами ОС разрулить эту вещь? В оффтопике это делается легко, > как в линуксе? И в оффтопике это не делается. Раньше на все PCI-устройства было максимум 4 линии запроса прерывания; сейчас чаще всего 4 для PCI/AGP-слотов и ещё 4 для встроенных устройств (хотя на некоторых платах часть встроенных устройств залезает и на PIRQ, используемые PCI-cлотами). Какие-то слоты в любом случае будут использовать общие прерывания; в документации материнской платы можно поискать соответствующую таблицу. Программно ситуацию можно только ухудшить, назначив нескольким сигналам PIRQ один номер IRQ. Впрочем, при использовании режима PIC вместо более современного APIC это происходит почти всегда, поскольку в режиме PIC доступно только 16 IRQ, большая часть которых занята legacy-устройствами. > # lspci | egrep -i "audio|scsi" > 0000:00:08.0 SCSI storage controller: Adaptec ASC-39320 U320 (rev 03) > 0000:00:08.1 SCSI storage controller: Adaptec ASC-39320 U320 (rev 03) > 0000:00:0b.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev > 08) > > # cat /proc/interrupts | egrep -i "aic|ensoniq" > 17: 2983717 IO-APIC-level eth0, aic79xx > 19: 9603597 IO-APIC-level Ensoniq AudioPCI, aic79xx Уже используется режим APIC, поэтому остаётся только переставлять платы в другие слоты.