a) Selector returned
by this function should NOT be modified or freed by the user.
b) Performance Counters
are 32-bit wide counters (located inside DOS/32A DPMI Kernel) that count the
number of mode switches performed by the DOS Extender. These counters can be
read from or written to at any time by the application.
c) The structure of the
Performance Counters is the following (relative to EDX as a base address):
00h - INT RM -> PM (up)
04h - INT PM -> RM (down)
08h - IRQ RM -> PM (up)
0Ch - IRQ PM -> RM (down)
10h - IRQ Callback RM -> PM (up)
14h - IRQ Callback PM -> RM (down)
18h - Callback RM -> PM (up)
1Ch - Callback PM -> RM (down)
Where "INT" is a Software Interrupt, "IRQ" is a Hardware Interrupt, "IRQ
Callback" is a Hardware Interrupt Callback (valid for IRQ 0-15) and "PM" and
"RM" stand for Protected and Real Modes respective.
d) Note that the counters
will increment each time a (respective) mode switch occurs, and cannot be
setup to count specific Interrupts/IRQs/Callbacks (ie INT 21h, etc).