OSDN Git Service

projects clean up 1
[pinoc/pinoc.git] / pinoc_gcc / lib / include / sys / sched.h
1 /*
2  *  Written by Joel Sherrill <joel@OARcorp.com>.
3  *
4  *  COPYRIGHT (c) 1989-2000.
5  *  On-Line Applications Research Corporation (OAR).
6  *
7  *  Permission to use, copy, modify, and distribute this software for any
8  *  purpose without fee is hereby granted, provided that this entire notice
9  *  is included in all copies of any software which is or includes a copy
10  *  or modification of this software.
11  *
12  *  THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED
13  *  WARRANTY.  IN PARTICULAR,  THE AUTHOR MAKES NO REPRESENTATION
14  *  OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS
15  *  SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.
16  *
17  *  $Id: sched.h,v 1.2 2002/06/20 19:51:24 fitzsim Exp $
18  */
19
20
21 #ifndef __POSIX_SYS_SCHEDULING_h
22 #define __POSIX_SYS_SCHEDULING_h
23
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27
28 #include <sys/unistd.h>
29
30 #include <sys/types.h>
31 #include <sys/time.h>
32
33 /* Scheduling Policies, P1003.1b-1993, p. 250
34    NOTE:  SCHED_SPORADIC added by P1003.4b/D8, p. 34.  */
35
36 #define SCHED_OTHER    0
37 #define SCHED_FIFO     1
38 #define SCHED_RR       2
39
40 #if defined(_POSIX_SPORADIC_SERVER)
41 #define SCHED_SPORADIC 3 
42 #endif
43
44 /* Scheduling Parameters, P1003.1b-1993, p. 249
45    NOTE:  Fields whose name begins with "ss_" added by P1003.4b/D8, p. 33.  */
46
47 struct sched_param {
48   int sched_priority;           /* Process execution scheduling priority */
49
50 #if defined(_POSIX_SPORADIC_SERVER)
51   int ss_low_priority;          /* Low scheduling priority for sporadic */
52                                 /*   server */
53   struct timespec ss_replenish_period; 
54                                 /* Replenishment period for sporadic server */
55   struct timespec ss_initial_budget;   /* Initial budget for sporadic server */
56 #endif
57 };
58
59 #ifdef __cplusplus
60 }
61 #endif 
62
63 #endif
64 /* end of include file */
65