Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ profil(2) — HP-UX 5.20

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

prof(1)

monitor(3C)

PROFIL(2)  —  HP-UX

Series 200, 300, 800 Only

NAME

profil − execution time profile

SYNOPSIS

#include <sys/param.h> void 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, offset is subtracted from it, and the result is multiplied by scale. If the resulting number corresponds to a word inside buff, that word is incremented. The number of samples per second for a given implementation is given by HZ as found in <sys/param.h>

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. 

RETURN VALUE

Not defined. 

SEE ALSO

prof(1), monitor(3C). 

Hewlett-Packard Company  —  Version B.1,  May 11, 2021

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