- Fix size functions to return the correct results in all cases.
[reactos.git] / posix / include / sched.h
1 /* $Id: sched.h,v 1.4 2002/10/29 04:45:18 rex Exp $
2 */
3 /*
4 * sched.h
5 *
6 * execution scheduling (REALTIME). Conforming to the Single UNIX(r)
7 * Specification Version 2, System Interface & Headers Issue 5
8 *
9 * This file is part of the ReactOS Operating System.
10 *
11 * Contributors:
12 * Created by KJK::Hyperion <noog@libero.it>
13 *
14 * THIS SOFTWARE IS NOT COPYRIGHTED
15 *
16 * This source code is offered for use in the public domain. You may
17 * use, modify or distribute it freely.
18 *
19 * This code is distributed in the hope that it will be useful but
20 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
21 * DISCLAMED. This includes but is not limited to warranties of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
23 *
24 */
25 #ifndef __SCHED_H_INCLUDED__
26 #define __SCHED_H_INCLUDED__
27
28 /* INCLUDES */
29 #include <time.h>
30
31 /* OBJECTS */
32
33 /* TYPES */
34 struct sched_param
35 {
36 int sched_priority; /* process execution scheduling priority */
37 };
38
39 /* CONSTANTS */
40 /* First in-first out (FIFO) scheduling policy */
41 #define SCHED_FIFO (1)
42 /* Round robin scheduling policy */
43 #define SCHED_RR (2)
44 /* Another scheduling policy */
45 #define SCHED_OTHER (3)
46
47 /* PROTOTYPES */
48 int sched_get_priority_max(int);
49 int sched_get_priority_min(int);
50 int sched_getparam(pid_t, struct sched_param *);
51 int sched_getscheduler(pid_t);
52 int sched_rr_get_interval(pid_t, struct timespec *);
53 int sched_setparam(pid_t, const struct sched_param *);
54 int sched_setscheduler(pid_t, int, const struct sched_param *);
55 int sched_yield(void);
56
57 /* MACROS */
58
59 #endif /* __SCHED_H_INCLUDED__ */
60
61 /* EOF */
62