profil(2) profil(2)
NAME
profil - execution time profile
SYNOPSIS
profil (buff, bufsiz, offset, scale)
char *buff;
int bufsiz, offset, scale;
DESCRIPTION
buff points to an area of core whose length (in bytes) is
given by bufsiz. After this call, the user's program
counter (pc) is examined each clock tick; offset is
subtracted from it, and the result multiplied by scale. If
the resulting number corresponds to a word inside buff, that
word is incremented.
The scale is interpreted as an unsigned (16 bit), fixed-
point fraction with binary point at the left: FFFF (hex)
gives a 1-1 mapping of pc's to words in buff; FFFF (hex)
maps each pair of instruction words together. 2(hex) maps
all instructions onto the beginning of buff (producing a
non-interrupting core clock).
Profiling is turned off by giving a scale of 0 or 1. It is
rendered ineffective by giving a bufsiz of 0. Profiling is
turned off when an exec is executed, but remains on in child
and parent both after a fork. Profiling will be turned off
if an update in buff would cause a memory fault.
RETURN VALUE
Not defined.
SEE ALSO
prof(1), monitor(3C).
Page 1 (last mod. 1/14/87)