linux runqueue定义,linux – 了解rt_rq(实时runqueue)内核中数据成员的使用
以下是v3.5.4中的實時運行隊列結(jié)構(gòu)
struct rt_rq {
struct rt_prio_array active;
unsigned int rt_nr_running;
#if defined CONFIG_SMP || defined CONFIG_RT_GROUP_SCHED
struct {
int curr; /* highest queued rt task prio */
#ifdef CONFIG_SMP
int next; /* next highest */
#endif
} highest_prio;
#endif
#ifdef CONFIG_SMP
unsigned long rt_nr_migratory;
unsigned long rt_nr_total;
int overloaded;
struct plist_head pushable_tasks;
#endif
int rt_throttled;
u64 rt_time;
u64 rt_runtime;
/* Nests inside the rq lock: */
raw_spinlock_t rt_runtime_lock;
#ifdef CONFIG_RT_GROUP_SCHED
unsigned long rt_nr_boosted;
struct rq *rq;
struct list_head leaf_rt_rq_list;
struct task_group *tg;
#endif
};
我已經(jīng)了解了一些數(shù)據(jù)成員所代表的含義,但我不完全確定以下數(shù)據(jù)成員:
a)rt_nr_migratory :(我認為)它是一個計數(shù)器,用于計算可以將多少任務(wù)推送到其他cpu的計數(shù)
b)pushable_tasks是可以推送到其他運行隊列的任務(wù)列表,如果它們沒有任何運行的話.
如果我對上述條目有誤,請糾正我.
c)rt_throttled,rt_time,rt_runtime,rt_nr_total,rt_nr_boosted:我不明白這是什么用途.
為什么struct rq * rq;僅在組調(diào)度存在時才需要.我的意思是它的意義.
總結(jié)
以上是生活随笔為你收集整理的linux runqueue定义,linux – 了解rt_rq(实时runqueue)内核中数据成员的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: gdal获取像元的灰度值java_GDA
- 下一篇: Altium Designer20 PC