Debugging Dynamic Memory Usage Errors Using HP WDB v6.3 (5900-2181, August 2012)

Example 3 Monitoring memory usage in an arena
Sample Program
$ cat malloc_1.c
1 /* test large malloc.
2 * corruption.
3 */
4 #include <stdio.h>
5 #include <stdlib.h>
6 void f1()
7 {
8 char * cp;
9
10 cp = malloc (5000);
11 }
12 void f2()
13 {
14 char * cp;
15
16 cp = malloc (7000);
17 }
18 void f3()
19 {
20 char * cp;
21
22 cp = malloc (3000);
23 }
24 void f4()
25 {
26 char * cp;
27
28 cp = malloc (6000);
29 }
30 void f1_small()
31 {
32 char * cp;
33
34 cp = malloc (50);
35 }
36 void f2_small()
37 {
38 char * cp;
39
40 cp = malloc (70);
41
42 void f3_small()
43 {
44 char * cp;
45
46 cp = malloc (30);
47 }
48 void f4_small()
49 {
50 char * cp;
51
52 cp = malloc (60);
53 }
54
55 void set_brkpt_here() {
56 }
57 int main()
58 {
59
60 for (int i=0; i<777; i++)
Memory-Debugging Features of WDB 19