| 1 | #ifndef _SCHED_H |
| 2 | #include <posix/sched.h> |
| 3 | |
| 4 | #ifndef _ISOMAC |
| 5 | /* Now define the internal interfaces. */ |
| 6 | extern int __sched_setparam (__pid_t __pid, |
| 7 | const struct sched_param *__param); |
| 8 | libc_hidden_proto (__sched_setparam) |
| 9 | extern int __sched_getparam (__pid_t __pid, struct sched_param *__param); |
| 10 | libc_hidden_proto (__sched_getparam) |
| 11 | extern int __sched_setscheduler (__pid_t __pid, int __policy, |
| 12 | const struct sched_param *__param); |
| 13 | libc_hidden_proto (__sched_setscheduler) |
| 14 | extern int __sched_getscheduler (__pid_t __pid); |
| 15 | libc_hidden_proto (__sched_getscheduler) |
| 16 | extern int __sched_yield (void); |
| 17 | libc_hidden_proto (__sched_yield) |
| 18 | extern int __sched_get_priority_max (int __algorithm); |
| 19 | libc_hidden_proto (__sched_get_priority_max) |
| 20 | extern int __sched_get_priority_min (int __algorithm); |
| 21 | libc_hidden_proto (__sched_get_priority_min) |
| 22 | extern int __sched_rr_get_interval (__pid_t __pid, struct timespec *__t); |
| 23 | |
| 24 | /* These are Linux specific. */ |
| 25 | extern int __clone (int (*__fn) (void *__arg), void *__child_stack, |
| 26 | int __flags, void *__arg, ...); |
| 27 | libc_hidden_proto (__clone) |
| 28 | extern int __clone2 (int (*__fn) (void *__arg), void *__child_stack_base, |
| 29 | size_t __child_stack_size, int __flags, void *__arg, ...); |
| 30 | libc_hidden_proto (__clone2) |
| 31 | /* NB: Can't use "__typeof__ (getcpu)" since getcpu is Linux specific |
| 32 | and Hurd doesn't have it. */ |
| 33 | extern int __getcpu (unsigned int *, unsigned int *); |
| 34 | libc_hidden_proto (__getcpu) |
| 35 | #endif |
| 36 | #endif |
| 37 | |