    PROFIL(II)                   5/15/74                   PROFIL(II)

    NAME
         profil - execution time profile

    SYNOPSIS
         (profil = 44.; not in assembler)
         sys  profil; buff; bufsiz; offset; scale

         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 (60th second); off-
         set 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  frac-
         tion  with  binary  point at the left: 177777(8) gives a 1-1
         mapping of pc's to words in buff; 77777(8) maps each pair of
         instruction words together.  2(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
         also  turned  off when an exec is executed but remains on in
         child and parent both after a fork.

    SEE ALSO
         monitor(III), prof(I)

    DIAGNOSTICS
         -

                                  - 1 -