moncontrol(3)
NAME
moncontrol, monstartup - control execution profile
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <sys/types.h> #include <sys/gmon.h> int moncontrol(int mode); int monstartup(u_long *lowpc, u_long *highpc);
DESCRIPTION
- An executable program compiled using the -pg option to cc(1)
- automatically includes calls to collect statistics for the gprof(1)
- call-graph
execution profiler. In typical operation, profiling begins - at program
startup and ends when the program calls exit. When the pro - gram exits,
the profiling data are written to the file progname.gmon, - where progname
is the name of the program, then gprof(1) can be used to ex - amine the
results. - The moncontrol() function selectively controls profiling
- within a program. When the program starts, profiling begins. To stop
- the collection
of histogram ticks and call counts use moncontrol(0); to re - sume the collection of histogram ticks and call counts use
- moncontrol(1). This feature allows the cost of particular operations to be mea
- sured. Note that
an output file will be produced on program exit regardless - of the state
of moncontrol(). - Programs that are not loaded with -pg may selectively col
- lect profiling
statistics by calling monstartup() with the range of ad - dresses to be profiled. The lowpc and highpc arguments specify the address
- range that is
to be sampled; the lowest address sampled is that of lowpc - and the highest is just below highpc. Only functions in that range that
- have been
compiled with the -pg option to cc(1) will appear in the - call graph part
of the output; however, all functions in that address range - will have
their execution time measured. Profiling begins on return - from
monstartup().
FILES
progname.gmon execution data file