These tools fall into thiee main categories:
• Logic path monitors, which report on the sequence of events
performed by the program, thus providing the programmer with
clues on logic errors
• Memory dumps, which provide a picture of the internal
memory's content at one point in time. This is often produced
at the point where the program fails or is aborted, providing the
programmer with clues on inconsistencies in data or parameter
values. A variant, called a trace, will do the same at different
stages in the program execution to show changes in machine-
level structures such as counters and registers,
• Output analyzers, which help check results of program
execution for accuracy. This is achieved by comparing expected
results with the actual results.