当我使用以下代码将计划策略设置为截止时间时:
struct sched_attr attr = {
.size = sizeof(attr),
.sched_policy = SCHED_DEADLINE,
.sched_runtime = 30000000,
.sched_period = 100000000,
.sched_deadline = 100000000
};
pid_t pid = getpid();
printf("pid=(%d)\n",pid);
if (sched_setattr(pid, &attr, 0)){
printf("[ERROR] sched_setattr()\n");
perror("[ERROR] sched_setattr()\n");
}
// Check scheduler policy is set correctly
printf("Scheduler Policy is %d.\n", sched_getscheduler(pid));
所述代码的结果如下:
PID=(XXXXXX)
调度程序策略为6。
有人能解释哪个从sched_getscheduler(pid)返回的int值对应于哪个调度程序策略吗?
例如:根据上述代码,我认为6对应于sched_期限策略。