Ring 3 Traps and the OS/2 Kernel Debugger

ID: Q101462


The information in this article applies to:
  • Microsoft LAN Manager, version 2.2


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.


REFERENCES

For more information on the VS(P) command and other debugger commands, see the "OS/2 System Debugger Command Reference."

Additional query words: 2.20 fault trap debug ring 3

Keywords :
Version : :2.2
Platform :
Issue type :


Last Reviewed: November 10, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.