下面是linux调度中RT策略实体类的代码。
struct sched_rt_entity {
struct list_head run_list;
unsigned long timeout;
unsigned int time_slice;
struct sched_rt_entity *back;
#ifdef CONFIG_RT_GROUP_SCHED
struct sched_rt_entity *parent;
/* rq on which this entity is (to be) queued: */
struct rt_rq *rt_rq;
/* rq "owned" by this entity/group: */
struct rt_rq *my_q;
#endif
};
back
当列表已经实现时需要什么数据成员。
我也不明白组调度策略是如何实现的,特别是为什么需要my_rq
以及rt_rq
谁会parent
指出。
timeout
还有数据成员的含义是什么。
PS: 我有很多很多这样的问题,任何人都可以建议一个好的阅读。