进程prev和进程next切换前更新各自的sched_info:
static inline void sched_info_switch(task_t *prev, task_t *next)
{
struct runqueue *rq = task_rq(prev);
if (prev != rq->idle)
sched_info_depart(prev);
if (next != rq->idle)
sched_info_arrive(next);
}
static inline void sched_info_switch(task_t *prev, task_t *next)
{
struct runqueue *rq = task_rq(prev);
if (prev != rq->idle)
sched_info_depart(prev);
if (next != rq->idle)
sched_info_arrive(next);
}
进程调度更新机制
本文介绍了一个内核级的进程调度更新机制,通过sched_info_switch函数实现进程切换时的调度信息更新。该函数针对即将退出的进程prev和即将运行的进程next进行处理,确保调度信息的准确性。
1316

被折叠的 条评论
为什么被折叠?



