Debugging Memory Problems with MemoryScape : Chapter 2 Memory Tasks : Task 8: Obtaining Detailed Heap Information

Task 8: Obtaining Detailed Heap Information
 
This task discusses the Source and Backtrace reports. These reports are the most important sources of information within MemoryScape.
While the information in this section relates directly to the Heap Status reports, you will find these reports throughout MemoryScape either as separate reports or as areas within a report. The Source and Backtrace reports are shown in Figure 63.
 
The totals shown in the Heap Status reports may differ slightly from those shown in the Memory Usage reports, because heap status is generated from monitoring program requests for memory (malloc or new) and program release of memory (free or delete), while memory usage data is obtained from the operating system facilities. Depending on the operating system, memory usage totals may include anonymous memory regions that the program or one of its libraries may have mapped into its address space. The totals also include a small amount of overhead from MemoryScape itself.
The Memory Usage report is intended to be a quick check of your program’s memory usage from the system’s perspective. For detailed information on your program’s use of the heap, use the Heap Status reports.
Which report you should use or when you use a report is mostly a matter of the way in which you want to approach the data. In general, most users prefer to approach this kind of information through Source reports. However, some like to see memory information organized on the way the program creates blocks.
Before reading this task, you should be familiar with the following information:
Chapter 1, “Locating Memory Problems”
Contains an overview of memory concepts and MemoryScape.
Task 1: “Getting Started”
Tells you how to start MemoryScape. It also contains an overview of the kinds of information you can obtain.
Task 4: “Controlling Program Execution”
Shows how to start and stop program execution.
Task 7: “Graphically Viewing the Heap”
Describes how you obtain a graphic overview of how this heap is laid out as well as how to obtain more detailed information about individual blocks.
Topics within this task are:
*
*
*

Rogue Wave Software, Inc.
Voice: (303) 473-9118
rwonlinedocs@roguewave.com