|
|
BSD 4.3reno
/*
* Copyright (c) 1982, 1986 Regents of the University of California.
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
* @(#)vm_mon.c 7.3 (Berkeley) 4/2/90
*/
#include "param.h"
#include "systm.h"
#include "user.h"
#include "vmmeter.h"
#include "trace.h"
#include "kernel.h"
#ifdef PGINPROF
int pmonmin = PMONMIN;
int pres = PRES;
int rmonmin = RMONMIN;
int rres = RRES;
vmsizmon()
{
register int i;
register proc *p = u.u_procp;
i = (u.u_dsize / DRES) < NDMON ? (u.u_dsize / DRES):NDMON;
dmon[i] += p->p_utime.tv_sec - u.u_outime;
i = (u.u_ssize / SRES) < NSMON ? (u.u_ssize / SRES):NSMON;
smon[i] += p->p_utime.tv_sec - u.u_outime;
u.u_outime = p->p_utime.tv_sec;
}
vmfltmon(hist, atime, amin, res, nmax)
register unsigned int *hist;
register int atime, amin, res, nmax;
{
register int i;
i = (atime - amin) / res;
if (i>=0 && i<nmax)
hist[i+1]++;
else
i<0 ? hist[0]++ : hist[nmax+1]++;
}
#endif
#ifdef TRACE
/*VARARGS*/
trace1(args)
int args;
{
register int nargs;
register int x;
register int *argp, *tracep;
nargs = 4;
x = tracex % TRCSIZ;
if (x + nargs >= TRCSIZ) {
tracex += (TRCSIZ - x);
x = 0;
}
argp = &args;
tracep = &tracebuf[x];
tracex += nargs;
*tracep++ = (time.tv_sec%1000)*1000 + (time.tv_usec/1000);
nargs--;
do
*tracep++ = *argp++;
while (--nargs > 0);
}
#endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.