Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ profil(S) — Xenix 2.3.4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

prof(CP)

monitor(S)



     PROFIL(S)                XENIX System V                 PROFIL(S)



     Name
          profil - Creates an execution time profile.

     Syntax
          void profil (buff, bufsiz, offset, scale)
          char *buff;
          int bufsiz, scale;
          int (*offset)();

     Description
          buff points to an area of core whose length (in bytes) is
          given by bufsiz.  After this call, the user's program
          counter is examined each clock tick, where a clock tick is
          some fraction of a second given in machine(HW).  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.  An ``entry'' is defined as a series of
          bytes with length sizeof(short).

          The scale is interpreted as an unsigned, fixed-point
          fraction with binary point at the left: 0177777 (octal)
          gives a 1-1 mapping of pc's to words in buff; 077777 (octal)
          maps each pair of instruction words together.  02(octal)
          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.

     See Also
          prof(CP), monitor(S)





















     Page 1                                           (printed 8/7/87)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026