当前位置:嗨网首页>书籍在线阅读

15-创建实时进程

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

17.3.3 创建实时进程

可以通过设置进程属性(调度策略)将某个进程指定为实时进程,而调度器会在其调度算法中使用这个属性。代码清单17-4显示了一种通用的设置方法。

代码清单17-4 创建实时进程

519.jpg 这段代码通过调用 sched_setscheduler() 完成了两件事情。一是将进程的调度策略改为 SCHED_RR ,二是将进程的优先级提升到系统所允许的最大值。Linux支持3种调度策略。

  • SCHED_OTHER ——普通Linux进程,公平调度。
  • SCHED_RR ——带时间片的实时进程。也就是说,如果它不阻塞,它会运行一段由调度器决定的时间(即时间片的长度)。
  • SCHED_FIFO ——实时进程,它会一直运行,直到它阻塞,主动放弃处理器或是有其他更高优先级的 SCHED_FIFO 进程变成可运行状态。

sched_setscheduler() 的帮助手册中提供了更多有关这3种不同调度策略的详细信息。