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