查看进程命令:
ps -eLf :查看多线程额tid及数量
chrt -p + pid号 :查看进程的优先级跟调度策略
top -p + pid号 :PR和NICE (NICE仅对normal进程有效)
进程的调度策略:
1. 正常进程的调度策略: SCHED_OTHER, SCHED_IDLE, SCHED_BATCH
如果是正常的进程,那么它的优先级值被设置成(prority value): 0
2. 实时进程的调度策略: SCHED_FIFO, SCHED_RR
如果是实时的进程,那么它的优先级的值范围为(prority value): [1, 99]
普通进程的PR值计算:
SCHED_OTHER: 可以被认为是分时的系统(time-sharing),其分配到时间片跟本身进程的权重有关。
NICE: 友好值 [-20, 19]
PR = 20+NICE [0, 39]
实时进程的PR值计算:
SCHED_FIFO & SCHED_RR
RP = -1 - priority_val --> [-2, -100]
进程PR值范围:
-100 ---> -2 | -1 | 0 ---> 39 |
real-time dead-line normal
结论:
普通进程优先级跟Nice值有关,priority_val=0仅表示这个进程是normal进程,
实时进程跟priority_val值有关,priority_val越小,优先级越小,反之越大。