Mail Archives: djgpp/1992/05/11/14:08:13
>I have gone thru' quite a bit in go32. and I found that there
>are two types of exception handling mechanism - ivecn and vnn_handler.
>Is there any special reason for two kinds of handlers? I am thinking
>of hacking go32 and allow some other interrupt/exception to pass thru'.
>What are the pros/cons of such?
Some exceptions have been given their own TSS segments because I can't
guarantee the availability of a stack for them to run in. For
example, if a page fault occurs while extending the stack, handling it
with a regular interrupt would cause a double fault, so the page fault
handler has it's own stack. Same for timer, HD, and keyboard, since
the page fault handler may need these interrupts to be in a valid
state, I can't have these interrupts causing page faults.
The remainder go through the common dispatch routines.
DJ
dj AT ctron DOT com
Life is a banana.
- Raw text -