Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

gprof(1)

setitimer(2)

monitor(3)

PROFIL(2)                            BSD                             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 memory whose length (in bytes) is given by
     bufsiz.  After this call, the user's program counter is examined each
     clock tick (10 milliseconds); 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 16
     bits of fraction:  0x10000 gives a 1 to 1 mapping of program counters to
     words in buff; 0x8000 maps each pair of instruction words together.

     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
     execve is executed, but remains on in child and parent both after a fork.
     Profiling is turned off if an update in buff would cause a memory fault.

SEE ALSO
     gprof(1), setitimer(2), monitor(3)

DIAGNOSTICS
     A 0, indicating success, is always returned.

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