/* test-schedbatch.c - Create a process using SCHED_BATCH scheduler * policy and nice value. * Compile: gcc -o test-schedbatch -Wall test-schedbatch.c * Usage: ./test-schedbatch [ ] * * Author: Mike Fleetwood * https://bugzilla.redhat.com/show_bug.cgi?id=741090 */ #define _GNU_SOURCE #include #include #include #include #include #include int main(int argc, const char *argv[]) { int nice = 19; struct sched_param sp; char msg[50]; if (argc >= 2) { nice = atoi(argv[1]); } sp.sched_priority = 0; if (sched_setscheduler(0, SCHED_BATCH, &sp)) { perror("sched_setscheduler(0,SCHED_BATCH,{.sched_priority=0}"); } if (setpriority(PRIO_PROCESS, 0, nice) || errno) { (void)snprintf(msg, sizeof(msg), "setpriority(PRIO_PROCESS, 0, %d)", nice); perror(msg); } while (1) { getchar(); } }