首页 百科知识 进程的调度信息

进程的调度信息

时间:2022-10-09 百科知识 版权反馈
【摘要】:进程的类别、调度策略、优先级等调度属性反映了进程的调度信息。policy表示进程的进程调度策略,可以通过系统调用sys_sched_setscheduler()更改。Linux操作系统采用的调度策略见表2-4。rt_priority给出实时进程的优先级,rt_priority+1000给出进程每次获取CPU后,可使用的时间。重新调度将从run-queue队列选出counter值最大的就绪进程获得CPU,因此counter起到了进程的动态优先级的作用。counter表示进程当前还拥有的时间片,nice表示普通进程的动态优先级,可对优先权进行动态调整。

2.2.2 进程的调度信息

进程的类别、调度策略、优先级等调度属性反映了进程的调度信息。task_struct中的policy、priority、rt_priority、counter、nice等项与进程调度有关。

policy表示进程的进程调度策略,可以通过系统调用sys_sched_setscheduler()更改(kernel/sched.c)。Linux操作系统采用的调度策略见表2-4。

表2-4 Linux采用的调度策略

img5

priority表示进程优先级,其值给出了进程每次获取CPU后,可使用的时间(按jiffies计)。优先级可通过系统调用sys_setpriority()改变,该函数定义在kernel/sys.c中。

rt_priority给出实时进程的优先级,rt_priority+1000给出进程每次获取CPU后,可使用的时间(同样按jiffies计)。实时进程的优先级可通过系统调用sys_sched_setscheduler()改变,不过实际的工作是由setscheduler()完成的,这两个函数均定义在kernel/sched.c中。

在轮转法(round robin)调度时表示进程当前还可运行多久。在进程开始运行时被赋为priority的值,以后每隔一个tick(时钟中断)递减1,减到0时引起新一轮调度。重新调度将从run-queue队列选出counter值最大的就绪进程获得CPU,因此counter起到了进程的动态优先级的作用(priority则是静态优先级)。counter表示进程当前还拥有的时间片,nice表示普通进程的动态优先级,可对优先权进行动态调整。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈