BSD 4_3_Tahoe release
[unix-history] / usr / src / sys / h / vmsystm.h
/*
* 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.
*
* @(#)vmsystm.h 7.1 (Berkeley) 6/4/86
*/
/*
* Miscellaneous virtual memory subsystem variables and structures.
*/
#ifdef KERNEL
int freemem; /* remaining blocks of free memory */
int avefree; /* moving average of remaining free blocks */
int avefree30; /* 30 sec (avefree is 5 sec) moving average */
int deficit; /* estimate of needs of new swapped in procs */
int nscan; /* number of scans in last second */
int multprog; /* current multiprogramming degree */
int desscan; /* desired pages scanned per second */
/* writable copies of tunables */
int maxpgio; /* max paging i/o per sec before start swaps */
int maxslp; /* max sleep time before very swappable */
int lotsfree; /* max free before clock freezes */
int minfree; /* minimum free pages before swapping begins */
int desfree; /* no of pages to try to keep free via daemon */
int saferss; /* no pages not to steal; decays with slptime */
int slowscan; /* slowest scan rate, clusters/second */
int fastscan; /* fastest scan rate, clusters/second */
#endif
/*
* Fork/vfork accounting.
*/
struct forkstat
{
int cntfork;
int cntvfork;
int sizfork;
int sizvfork;
};
#ifdef KERNEL
struct forkstat forkstat;
#endif
/*
* Swap kind accounting.
*/
struct swptstat
{
int pteasy; /* easy pt swaps */
int ptexpand; /* pt expansion swaps */
int ptshrink; /* pt shrinking swaps */
int ptpack; /* pt swaps involving spte copying */
};
#ifdef KERNEL
struct swptstat swptstat;
#endif