unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (v7man)
Page:
Section:
Apropos / Subsearch:
optional field

PROFIL(2)                     System Calls Manual                    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 buf-
       siz.  After this call, the user's program counter (pc) is examined each
       clock  tick (60th second); 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, fixed-point fraction with
       binary point at the left: 0177777(8) gives a 1-1  mapping  of  pc's  to
       words  in buff; 077777(8) maps each pair of instruction words together.
       02(8) 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 may be turned off if an update in buff would cause  a  memory
       fault.

SEE ALSO
       monitor(3), prof(1)

ASSEMBLER
       (profil = 44.)
       sys profil; buff; bufsiz; offset; scale



                                                                     PROFIL(2)