Thread View: comp.os.os2.programmer
2 messages
2 total messages
Started by Marty Klos
Fri, 31 May 1991 20:51
Sharing Interrupts on a PS/2
Author: Marty Klos
Date: Fri, 31 May 1991 20:51
Date: Fri, 31 May 1991 20:51
23 lines
1399 bytes
1399 bytes
References: <1991May31.194019.3122@dialogic.com>
gerry@dialogic.com (Gerry Lachac) writes:
> If I have two drivers that request the same
> interrupt using the SetIRQ DevHlp, which ISR (interrupt service
> routine) is called first?
According to the book (see note *):
"POSITION RULE An interrupt handler that shares an interrupt level
must not depend on its position int the list of handlers for that
interrupt level."
My interpretation is that the order is undefined. Unfortunately,
this does not help you predict how long after an interrupt occurs
before a particular interrupt handler gets control.
* - page 2-20, IBM OS/2 Programming Tools and Information,
Version 1.2, I/O Subsystems and Device Support,
Volume 1, Device Drivers
Marty Klos | Disclaimer: The statements above
IBM, Boca Raton, FL | are my own and not necessarily
Internet: klos@bcrvmpc3.vnet.ibm.com | those of my employer.
Re: Sharing Interrupts on a PS/2
Author: Gerry Lachac
Date: Mon, 03 Jun 1991 15:08
Date: Mon, 03 Jun 1991 15:08
29 lines
1749 bytes
1749 bytes
In article <9105312050.AA16347@ucbvax.Berkeley.EDU> klos@bcrvmpc3.vnet.ibm.com (Marty Klos) writes: > >According to the book (see note *): > "POSITION RULE An interrupt handler that shares an interrupt level > must not depend on its position int the list of handlers for that > interrupt level." > >My interpretation is that the order is undefined. Unfortunately, >this does not help you predict how long after an interrupt occurs >before a particular interrupt handler gets control. Agreed. After looking into this furthur, running some tests, setting some breakpoints (and looking at the IBM docs - thanks :-), it seems to me that the interrupt handlers are called at seemingly random times. I would venture to guess that maybe the interrupt routines are called in some round-robin manner for performance reasons. That seems reasonable to me. In level-sensitive mode, the 8259 interrupt controller locks out the interrupt level if a number of spurious interrupts are received. Is it possible to alter this number or disable this feature under OS/2? -- uunet!dialogic!gerry | "Even a dead plant turns | Dialogic Corporation OR | over a new leaf | 300 Littleton Rd gerry@dialogic.UUCP | when the wind blows." | Parsippany, NJ 07054 | | (201)334-8450
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads