Hi,

I'm trying to understand irq and irql. I used softice to observe my system
and found the following:

Interrupt irq irql
A 3 4
B 4 9

Suppose When I run ISR for interrupt A(irq=4, irql=9), interrupt B comes.
From CPU point of view, B, which has a higher priority, can interrupt A. But
from Windows point of view, the irql of B is 4 which is less than current
irql of A(9). Therefore, B can't interrupt A.

What does HAL do for this case?

Thanks,
Min

Re: irq&irql by Noah538

Noah538
Mon Jan 10 23:49:49 CST 2005

Higher irql always interrupt lower one, no matter what irq no. is.
that's B(4) can't interrupt A(9) in your case.


irq&irql(repost) by Min

Min
Tue Jan 11 02:42:26 CST 2005

Hi,

I'm trying to understand irq and irql. I used softice to observe my system
and found the following:

Interrupt irq irql
B 3 4
A 4 9

Suppose when I run ISR for interrupt A(irq=4, irql=9), interrupt B comes.
From CPU point of view, B, which has a higher priority, can interrupt A.
But
from Windows point of view, the irql of B is 4 which is less than current
irql of A(9). Therefore, B can't interrupt A.

My understanding is that interrupt is a CPU issue. As long as B's irq has a
higher priority than A, it can always interrupt A. But this is conflict
with the irql point of view. Can anyone explain?

Thanks,
Min




Re: irq&irql(repost) by Pavel

Pavel
Tue Jan 11 19:17:03 CST 2005

Windows (namely, HAL) applies it's own priorities by masking other interrupts in the PIC.

--PA

"Min Wang" <minwang_2003@hotmail.com> wrote in message news:SjMEd.80854$dv1.51084@edtnps89...
> Hi,
>
> I'm trying to understand irq and irql. I used softice to observe my system
> and found the following:
>
> Interrupt irq irql
> B 3 4
> A 4 9
>
> Suppose when I run ISR for interrupt A(irq=4, irql=9), interrupt B comes.
> From CPU point of view, B, which has a higher priority, can interrupt A.
> But
> from Windows point of view, the irql of B is 4 which is less than current
> irql of A(9). Therefore, B can't interrupt A.
>
> My understanding is that interrupt is a CPU issue. As long as B's irq has a
> higher priority than A, it can always interrupt A. But this is conflict
> with the irql point of view. Can anyone explain?
>
> Thanks,
> Min
>
>
>