The subsystem responsible for monitoring application crashes

Aug 31, 2009 13:06 GMT  ·  By

Fault Tolerant Heap is one of the features that users will only be able to get with the latest iteration of the Windows client. The Windows 7 subsystem is the product of the work done by Principal Development Lead Silviu Calinoiu’s team. In the video embedded at the bottom of this article you will be able to see an interview with Calinoiu courtesy of Channel 9, in which Windows 7 Fault Tolerant Heap is explained in detail.

“The Fault Tolerant Heap (FTH) is a subsystem of Windows 7 responsible for monitoring application crashes and autonomously applying mitigations to prevent future crashes on a per application basis. For the vast majority of users, FTH will function with no need for intervention or change on their part. However, in some cases, application developers and software testers may need to override the default behavior of this system,” reads the official description of the Windows 7 feature.

Specifically, FTH is designed to work completely under the hood, and to reverberate to the surface of the operating system as little as possible. The concept behind the subsystem is to increase Windows’ autonomy when it comes down to monitoring and applying corrections. This means that Windows 7 is capable, to a greater degree than its precursors, to perform self-regulating tasks and to heal itself.

“Viewing Fault Tolerant Heap activity - Fault Tolerant Heap logs information when the service starts, stops, or starts mitigating problems for a new application. To view this information, follow these steps: 1.Click on the start menu. 2.Right-click Computer and choose Manage. 3.Click Event Viewer > Applications and Services Logs > Microsoft > Windows > Fault-Tolerant-Heap. 4.View FTH Events. The service stop and start events contain no additional data. The FTH Enabled event contains the Process ID (PID), the process image name, and the process instance start time,” Microsoft stated.

There are exceptions where developers might want to disable Windows 7’s FTH. In this regard, all that they need to do is set the REG_DWORD value HKLM\Software\Microsoft\FTH\Enabled to 0. After the new value is in place the machine will require a reboot. Microsoft informs that setting the DWORD value will cause FTH to ignore new applications.

“Fault Tolerant heap is self-managing and will autonomously stop applying in the case that mitigations are not effective for a given application. However, if you need to reset the list of applications for which FTH is mitigating problems, you can run the following command from an elevated command prompt: Rundll32.exe fthsvc.dll,FthSysprepSpecialize. Running this command will clear all FTH applications, so applications that are currently functioning properly may begin to crash again after running this command,” Microsoft added.

Get Microsoft Silverlight