|
|
1.1 ! root 1: /* (-lgl ! 2: * COHERENT Version 5.0 ! 3: * Copyright (c) 1982, 1993 by Mark Williams Company. ! 4: * All rights reserved. May not be copied without permission. ! 5: -lgl) */ ! 6: /* ! 7: * Scheduling parameters. ! 8: * These are identical to the pdp11 parameters except that there is no MAP ! 9: * parameter for claiming the unibus map. ! 10: */ ! 11: ! 12: #ifndef __SYS_SCHED_H__ ! 13: #define __SYS_SCHED_H__ ! 14: ! 15: #if _I386 ! 16: ! 17: #include <kernel/pri.h> ! 18: #include <sys/ksynch.h> ! 19: ! 20: /* ! 21: * sleep priorities ! 22: */ ! 23: enum { ! 24: slpriNoSig = 0, /* signals may not interrupt sleep */ ! 25: slpriSigLjmp = 1, /* signals cause longjmp (EINTR) */ ! 26: slpriSigCatch = 2 /* signals are caught */ ! 27: }; ! 28: ! 29: /* ! 30: * Update parameters. All values are in ticks. The processor value ! 31: * update interval is always 1. ! 32: */ ! 33: #define NCRTICK (HZ/10) /* Processor time slice */ ! 34: ! 35: /* ! 36: * Values. ! 37: */ ! 38: #define CVNOSIG 256 /* Lower priorities can interrupt */ ! 39: #define CVCLOCK 1 /* Core value update */ ! 40: ! 41: #define CVCHILD 32767 /* Initial child core value */ ! 42: #define CVSWAP 256 /* Swapper. */ ! 43: #define CVBLKIO 32767 /* Waiting for block I/O to complete. */ ! 44: #define CVGATE 16384 /* Waiting for a gate to open. */ ! 45: #define CVTTOUT 256 /* Terminal output. */ ! 46: #define CVCLIST 256 /* Waiting for free clists. */ ! 47: #define CVPTSET 256 /* Process trace. */ ! 48: #define CVPTRET 256 /* Process trace stop. */ ! 49: #define CVPIPE 256 /* Waiting for a pipe. */ ! 50: #define CVTTIN 255 /* Terminal input. */ ! 51: #define CVPAUSE 0 /* Pause. */ ! 52: #define CVWAIT 128 /* Wait. */ ! 53: ! 54: #else /* if ! _I386 */ ! 55: ! 56: /* ! 57: * Update parameters. All values are in ticks. The processor value ! 58: * update interval is always 1. ! 59: */ ! 60: #define NCRTICK (HZ/10) /* Processor time slice */ ! 61: #define NSUTICK (HZ/6) /* Swap value update interval */ ! 62: #define NSRTICK (HZ/2) /* Swap run update interval */ ! 63: ! 64: /* ! 65: * Values. ! 66: */ ! 67: #define CVNOSIG 256 /* Lower priorities can interrupt */ ! 68: #define CVCLOCK 1 /* Core value update */ ! 69: #define SVCLOCK 16 /* Swap value update */ ! 70: ! 71: /* ! 72: * Child process. ! 73: */ ! 74: #define CVCHILD 32767 /* Initial child core value */ ! 75: #define IVCHILD 16 /* Importance */ ! 76: #define SVCHILD 4096 /* Initial child swap value */ ! 77: #define RVCHILD 0 /* Response value */ ! 78: ! 79: /* ! 80: * Swapper. ! 81: */ ! 82: #define CVSWAP 256 ! 83: #define IVSWAP 0 ! 84: #define SVSWAP 0 ! 85: ! 86: /* ! 87: * Waiting for block I/O to complete. ! 88: */ ! 89: #define CVBLKIO 32767 ! 90: #define IVBLKIO 32767 ! 91: #define SVBLKIO 0 ! 92: ! 93: /* ! 94: * Waiting for a gate to open. ! 95: */ ! 96: #define CVGATE 16384 ! 97: #define IVGATE 3 ! 98: #define SVGATE 0 ! 99: ! 100: /* ! 101: * Terminal output. ! 102: */ ! 103: #define CVTTOUT 256 ! 104: #define IVTTOUT 0 ! 105: #define SVTTOUT 0 ! 106: ! 107: /* ! 108: * Waiting for free clists. ! 109: */ ! 110: #define CVCLIST 256 ! 111: #define IVCLIST 0 ! 112: #define SVCLIST 0 ! 113: ! 114: /* ! 115: * Process trace. ! 116: */ ! 117: #define CVPTSET 256 ! 118: #define IVPTSET 0 ! 119: #define SVPTSET 0 ! 120: ! 121: /* ! 122: * Process trace stop. ! 123: */ ! 124: #define CVPTRET 256 ! 125: #define IVPTRET 0 ! 126: #define SVPTRET 0 ! 127: ! 128: /* ! 129: * Waiting for a pipe. ! 130: */ ! 131: #define CVPIPE 256 ! 132: #define IVPIPE 0 ! 133: #define SVPIPE 0 ! 134: ! 135: /* ! 136: * Terminal input. ! 137: */ ! 138: #define CVTTIN 255 ! 139: #define IVTTIN 1 ! 140: #define SVTTIN 32767 ! 141: ! 142: /* ! 143: * Pause. ! 144: */ ! 145: #define CVPAUSE 0 ! 146: #define IVPAUSE -64 ! 147: #define SVPAUSE 0 ! 148: ! 149: /* ! 150: * Wait. ! 151: */ ! 152: #define CVWAIT 128 ! 153: #define IVWAIT -128 ! 154: #define SVWAIT 4096 ! 155: ! 156: #endif /* ! _I386 */ ! 157: ! 158: #endif /* ! defined (__SYS_SCHED_H__) */ ! 159:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.