Is it ok for five devices to be sharing a single IRQ in Win2K?

GopherMobile

Member
Apr 19, 2000
134
0
0
Here's my IRQ layout:

IRQ 1: Keyboard
IRQ 2: Nothing
IRQ 3: Nothing
IRQ 4: Video Card(Voodoo3 2000), Linksys 10/100 NIC, 2nd Linksys 10/100 NIC, Vortex Multifunction Parent(for MX300 sound card), Aureal Vortex 8830 Audio
IRQ 5: Nothing
IRQ 6: Floppy Drive
IRQ 7: LPT1 Printer Port
IRQ 8: CMOS Clock
IRQ 9: USB, Promise Ultra66 Controller
IRQ 10: Nothing
IRQ 11: Nothing
IRQ 12: PS/2 Mouse
IRQ 13: Numeric Data Processor
IRQ 14: Primary IDE Channel
IRQ 15: Secondary IDE Channel

I have no clue why so many devices became shared like that. In device manager it won't let me change any IRQs for the devices(the change box is greyed out). The only problem I can think that might be coming from this is sometimes when I'm uploading data my sound gets a little choppy. Unless my understanding of IRQs is wrong, doesn't this allow only one of those devices to be working at once? I guess that can't be completely true as my video and sound plus cable modem are all going right now, but bah it just doesn't seem right! Anyone know if this is normal...or if there's any way I can force some devices to use different IRQs?

 

eraser

Senior member
Oct 15, 1999
357
0
0
My system has 4 devices sharing irq 9. This subject has been a topic of conversation before. Windows 2000 deals with irqs better than Win9X does. I would not worry to much. Do not try to fix something that ain't broke.

As for your sound being choppy it could be a multitude of things causing the problem.

Eraser
 

wolf550e

Golden Member
May 22, 2000
1,370
0
0
yeah i posted i question about this too...
i have my sblive, geforce, acpi and smth else sharing irq #9.
it all ok, because the irq sharing is a new feature of win2k making it a better os. instead of making a "conflict" and crashing/not activating cards it forces them to share recources, and its transparent to the user.
congrats Micro$oft, this time they did smth right!
 

claw

Senior member
Jan 13, 2000
543
0
0
The PCI bus allows IRQ's to be shared, so it's no surprise that most/all of your PCI devices are on the same IRQ. In a PCI-only machine, there cannot be insufficient IRQs, as all can be shared.
 

AndyHui

Administrator Emeritus<br>Elite Member<br>AT FAQ M
Oct 9, 1999
13,141
17
81
When installed as an ACPI PC, that's how Win2K deals with devices. There is no way of changing the IRQ assignments short of reinstalling Win2K in Stardard PC mode.

Supposedly Win2K usually uses IRQ9 as a gatway to more virtual IRQs.
 

Shukaido

Member
May 15, 2000
38
0
0
IRQ sharing is a feature of PCI, and isn't unique to win2000. Any two PCI devices can share IRQs quite happily. The Macintosh has been doing this from day one back in '84, but we PC users had to wait for PCI. ISA devices will not share IRQs. Not with each other, and not with PCI devices. I don't think the so-called x-bus legacy peripherals, like the keyboard controller or the PS2 mouse port will share IRQs either. Never buy ISA peripherals, and consider junking the ones you have (for this and a half-million other reasons).

IRQ 2 is a 'cascaded' IRQ and is non-functional. The original PC AT (a 286 machine) had two 8259 PICs (programmable interrupt controllers). The first handled IRQ 0-7, the second handled 8-15. In order to signal an IRQ on the second PIC, a device would also have to signal IRQ 2 on the first PIC. Today the two PICs are all on the same silicon, embedded in the motherboard chipset, but the logic is still there. IRQ 2 is still the cascade, and can't really be dedicated to a device.

You forgot IRQ 0. I believe this is the system timer. IRQ 2 of course is the IRQ cascade. 3 and 4 were usually used for the PC's dilapidated serial ports COM1 and COM2, although I can see that much to your credit, you've disabled these.

PCI only has 4 IRQs, labelled A through D, I believe. These are then mapped to APIC IRQs. That could be one explanation for the concentration of devices on one IRQ.

Another possible reason could be interrupt priority. The way the APIC works, if a higher priority IRQ (lower IRQ number) is being 'serviced' (its ISR bit in the APIC is set, I seem to recall), a lower priority IRQ (higher IRQ number) can't interrupt it. Note that a higher priority IRQ could.

For example, a device that is on IRQ 3 could 'bud-in' and interrupt while an IRQ 4 device is being serviced, but an IRQ 6 device couldn't.

Placing all of the devices on one relatively high priority IRQ would give all of those devices the same interrupt priority, and might ensure that one device's interrupt service handler (part of the device's software driver) couldn't consistently hog the computer over another device.


-Ted Middleton