RTX64 Exception Handling
For most exceptions, the RTX64 handler performs the following tasks:
- Freezes or terminates the errant RTSS process, depending on the current method for treating faulting processes set in the control panel.
- Alerts the user with a popup window.
- Initiates a Windows memory dump. Note that this only happens when RTX64 is configured to stop Windows when a real-time process causes an unhandled exception.
The sections that follow describe each of these tasks.
Freeze or Terminate Processing
The method for treating faulting processes, which you can set in the control panel, controls the behavior of faulting RTSS processes. Possible options are:
- Terminates processing (default)
- Freezes the thread and process
- Halts the system and dumps memory
Alert User
The RTX64 handler alerts the user of an exception with a popup message window. For example, if the handler terminates the process, RTX64 might display the following window:
[RTSS_3_0094] RTX64 Exception - Integer Divided by Zero at loc FFFFFA8001D13014
(Proc=FFFFFA8001D09000, Thread=FFFFFA8001CB1000)
Process image has been * unloaded *
If the RTX64 handler freezes processing, RTX64 might display the following window:
[RTSS_3_0094] RTX64 Exception - Integer Divided by Zero at loc FFFFFA8001D13014
(Proc=FFFFFA8001D09000, Thread=FFFFFA8001CB1000)
Process image has been * frozen *
Debug and/or use "RTSSkill" command to unload all processes
Generate Event Log Entries
RTX64 event log entries are accessible from the Windows Event Viewer
Example:
RTSS Exception Notification - IconTypeID: 3, NotifyId: 0
[RTSS_3_0005] RTX64 Exception - Access Violation at loc FFFFFA803157264B
(Proc=FFFFFA8031568000, Thread=FFFFFA803140E000, Pid=03E9, Tid=0007)
Process image has been * unloaded *
Note that the Proc=
and Thread=
strings represent internal data structures.
The Pid=
and Tid=
values are hexadecimal.
NOTE: To preserve event log information, do not filter event entries.
Related topics: