vmparam.h revision 1.22 1 1.22 gwr /* $NetBSD: vmparam.h,v 1.22 1999/04/05 14:35:13 gwr Exp $ */
2 1.9 cgd
3 1.20 gwr /*-
4 1.20 gwr * Copyright (c) 1998 The NetBSD Foundation, Inc.
5 1.7 glass * All rights reserved.
6 1.7 glass *
7 1.7 glass * Redistribution and use in source and binary forms, with or without
8 1.7 glass * modification, are permitted provided that the following conditions
9 1.7 glass * are met:
10 1.7 glass * 1. Redistributions of source code must retain the above copyright
11 1.7 glass * notice, this list of conditions and the following disclaimer.
12 1.7 glass * 2. Redistributions in binary form must reproduce the above copyright
13 1.7 glass * notice, this list of conditions and the following disclaimer in the
14 1.7 glass * documentation and/or other materials provided with the distribution.
15 1.7 glass * 3. All advertising materials mentioning features or use of this software
16 1.7 glass * must display the following acknowledgement:
17 1.20 gwr * This product includes software developed by the NetBSD
18 1.20 gwr * Foundation, Inc. and its contributors.
19 1.20 gwr * 4. Neither the name of The NetBSD Foundation nor the names of its
20 1.20 gwr * contributors may be used to endorse or promote products derived
21 1.20 gwr * from this software without specific prior written permission.
22 1.20 gwr *
23 1.20 gwr * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
24 1.20 gwr * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
25 1.20 gwr * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
26 1.20 gwr * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
27 1.20 gwr * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28 1.20 gwr * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29 1.20 gwr * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 1.20 gwr * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 1.20 gwr * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32 1.20 gwr * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33 1.20 gwr * POSSIBILITY OF SUCH DAMAGE.
34 1.20 gwr */
35 1.20 gwr
36 1.20 gwr #ifdef _SUN3_
37 1.20 gwr #include <machine/vmparam3.h>
38 1.20 gwr #endif /* SUN3 */
39 1.20 gwr #ifdef _SUN3X_
40 1.20 gwr #include <machine/vmparam3x.h>
41 1.20 gwr #endif /* SUN3X */
42 1.21 gwr
43 1.22 gwr /* This is needed by some LKMs. */
44 1.22 gwr #define VM_PHYSSEG_MAX 4
45 1.21 gwr struct pmap_physseg {
46 1.21 gwr /* NULL */
47 1.21 gwr };
48 1.4 glass
49 1.4 glass /*
50 1.1 glass * The time for a process to be blocked before being very swappable.
51 1.1 glass * This is a number of seconds which the system takes as being a non-trivial
52 1.1 glass * amount of real time. You probably shouldn't change this;
53 1.1 glass * it is used in subtle ways (fractions and multiples of it are, that is, like
54 1.1 glass * half of a ``long time'', almost a long time, etc.)
55 1.1 glass * It is related to human patience and other factors which don't really
56 1.1 glass * change over time.
57 1.1 glass */
58 1.1 glass #define MAXSLP 20
59 1.1 glass
60 1.1 glass /*
61 1.1 glass * A swapped in process is given a small amount of core without being bothered
62 1.1 glass * by the page replacement algorithm. Basically this says that if you are
63 1.1 glass * swapped in you deserve some resources. We protect the last SAFERSS
64 1.1 glass * pages against paging and will just swap you out rather than paging you.
65 1.1 glass * Note that each process has at least UPAGES+CLSIZE pages which are not
66 1.1 glass * paged anyways (this is currently 8+2=10 pages or 5k bytes), so this
67 1.1 glass * number just means a swapped in process is given around 25k bytes.
68 1.1 glass * Just for fun: current memory prices are 4600$ a megabyte on VAX (4/22/81),
69 1.1 glass * so we loan each swapped in process memory worth 100$, or just admit
70 1.1 glass * that we don't consider it worthwhile and swap it out to disk which costs
71 1.1 glass * $30/mb or about $0.75.
72 1.19 perry * Update: memory prices have changed recently (9/96). At the current
73 1.19 perry * value of $6 per megabyte, we lend each swapped in process memory worth
74 1.19 perry * $0.15, or just admit that we don't consider it worthwhile and swap it out
75 1.19 perry * to disk which costs $0.20/MB, or just under half a cent.
76 1.1 glass */
77 1.1 glass #define SAFERSS 4 /* nominal ``small'' resident set size
78 1.1 glass protected against replacement */
79