Microsoft KB Archive/101462

= Ring 3 Traps and the OS/2 Kernel Debugger =

Article ID: 101462

Article Last Modified on 10/23/2003

-

APPLIES TO


 * Microsoft LAN Manager 2.2 Standard Edition

-



This article was previously published under Q101462



SUMMARY
When an application running at ring 3 in OS/2 experiences a General Protection Fault, Stack Fault, or any other unexpected exception, it displays a short message, a trap value, and various register information--all of which is referred to as a Trap Screen. The OS/2 kernel debugger is often used to address these problems but by default the OS/2 kernel debugger does not activate on ring 3 traps. Therefore the default settings of the OS/2 kernel debugger are useless in analyzing ring 3 exceptions.



MORE INFORMATION
In order to get the OS/2 kernel debugger to activate for ring 3 exceptions you must specifically hook the interrupt vector using the debugger's VSP command. For instance, if you are experiencing TRAP 000D (general protection fault), in your ring 3 application you will need to enter the VSPD command on the debug terminal to hook the 0xD protect mode interrupt. For a stack fault, TRAP 000C, enter VSPC to hook the 0xC protect mode interrupt.

If you do not hook these interrupts the trap screen appears on the server as if the debug kernel were not installed and all access to code and data segments involved in the trap is lost.

