Hi,
It looks like I have a very stupid question:
While writing an IRP_MN_START_DEVICE routine I faced with the fact that
system allocated to me very strange interrupt vector. In raw resources
it says that the vector is 11 - I assume this is an IRQ number, but in
translated resources the vector number is 385 
Documentation states that the vector number in the translated resources
is āThe global system vector assigned to the deviceā. So how can it
happen that in x86 processor the interrupt vector is more than 255 ? If
this is some internal logical vector how can I get the real vector ?
Just to clarify - my device is an internal processor extension that does
not use interrupt controller but just injects interrupts.
Many thanks in advance.
ā
Dmitry Kaptsenel, Intel Software Solutions Group
Youāre right. This is an internal, logical value. There is no
architectural way to correlate it with the IDT entry. The HAL that youāre
using happens to put the IDT entry of that processor set in the lower eight
bits of that value. But I wouldnāt write production code that depends on
that bit of trivia.
ā
Jake Oshins
Windows Kernel Group
The Virtual Machine Team at Microsoft is hiring. Contact
xxxxx@microsoft.com for more information.
This posting is provided āAS ISā with no warranties, and confers no rights.
āKaptsenel, Dmitryā wrote in message
news:xxxxx@ntdevā¦
Hi,
It looks like I have a very stupid question:
While writing an IRP_MN_START_DEVICE routine I faced with the fact that
system allocated to me very strange interrupt vector. In raw resources it
says that the vector is 11 - I assume this is an IRQ number, but in
translated resources the vector number is 385 
Documentation states that the vector number in the translated resources is
āThe global system vector assigned to the deviceā. So how can it happen that
in x86 processor the interrupt vector is more than 255 ? If this is some
internal logical vector how can I get the real vector ? Just to clarify - my
device is an internal processor extension that does not use interrupt
controller but just injects interrupts.
Many thanks in advance.
ā
Dmitry Kaptsenel, Intel Software Solutions Group
Thank you. So I will have to extract this somehow from the interrupt
controller.
ā
Dmitry Kaptsenel, Intel Software Solutions Group
What is it that youāre really trying to accomplish? Perhaps I can help.
ā
Jake Oshins
Windows Kernel Group
The Virtual Machine Team at Microsoft is hiring. Contact
xxxxx@microsoft.com for more information.
This posting is provided āAS ISā with no warranties, and confers no rights.
āKaptsenel, Dmitryā wrote in message
news:xxxxx@ntdevā¦
Thank you. So I will have to extract this somehow from the interrupt
controller.
ā
Dmitry Kaptsenel, Intel Software Solutions Group
I tried to get real IDT vector number from the translated interrupt
resource. But now I decided to do it another way - get IRQ line number
from the raw resources and get IRQ->InterruptVector translation from the
Interrupt Controller (PIC or LocalAPIC). Thanks.
ā
Dmitry Kaptsenel, Intel Software Solutions Group
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jake Oshins
Sent: Tuesday, January 24, 2006 8:34 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Interrupt vector number more than 255 ?
What is it that youāre really trying to accomplish? Perhaps I can help.
ā
Jake Oshins
Windows Kernel Group
The Virtual Machine Team at Microsoft is hiring. Contact
xxxxx@microsoft.com for more information.
I understood that. Iām just dubious that that information allows you to do
something that you couldnāt have done more easily some other way. If you
tell me what exactly youāre trying to accomplish, then I might be able to
suggest a simpler and more robust alternative.
ā
Jake Oshins
Windows Kernel Group
The Virtual Machine Team at Microsoft is hiring. Contact
xxxxx@microsoft.com for more information.
This posting is provided āAS ISā with no warranties, and confers no rights.
āKaptsenel, Dmitryā wrote in message
news:xxxxx@ntdevā¦
I tried to get real IDT vector number from the translated interrupt
resource. But now I decided to do it another way - get IRQ line number
from the raw resources and get IRQ->InterruptVector translation from the
Interrupt Controller (PIC or LocalAPIC). Thanks.
ā
Dmitry Kaptsenel, Intel Software Solutions Group
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jake Oshins
Sent: Tuesday, January 24, 2006 8:34 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Interrupt vector number more than 255 ?
What is it that youāre really trying to accomplish? Perhaps I can help.
ā
Jake Oshins
Windows Kernel Group
The Virtual Machine Team at Microsoft is hiring. Contact
xxxxx@microsoft.com for more information.