10.1 Overview of Profiler

Profiler contains the following:

A sampling utility

A reporting utility

A set of functions your application can call

The sampling utility gathers information about the time spent between adjacent labels and records memory addresses of code. The utility is a special device driver, VPROD.386. To run Profiler, install VPROD.386 and then run Windows directly.

Profiler stores the information it gathers in a buffer. It writes the buffer to disk when Windows terminates, producing a CSIPS.DAT file and a SEGENTRY.DAT file in the directory that was your current directory when you started Windows. The CSIPS.DAT file contains statistical samplings of the code segment (CS) and instruction pointer (IP) registers. The SEGENTRY.DAT file contains information about the movement of code segments. Because code segments can be located at different physical addresses during the execution of the program, information from both the CSIPS.DAT and SEGENTRY.DAT files is required to prepare the profiling report.

After the sampling utility has finished gathering information, the SHOWHITS.EXE reporting utility organizes and displays the results.

With Profiler's functions, you start and stop examining code, manage the output of code samples, and get information about Profiler. All applications that Profiler examines must include the two functions that start and stop the sampling of code. Other Profiler functions are optional.