glenda.party
term% ls -F
term% cat index.txt
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 in‐
       side buff, that word is incremented.

       The  scale is interpreted as an unsigned, fixed-point fraction with bi‐
       nary 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-in‐
       terrupting 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)

BUGS
       Profiling  does  not work for interpreters; if a signal were given to a
       process when its cpu-time  clock  ticked  then  profiling  interpreters
       would be possible.



                                                                     PROFIL(2)