Home
last modified time | relevance | path

Searched refs:CpuRunQueue (Results 1 – 6 of 6) sorted by relevance

/DragonOS/docs/kernel/sched/
H A Dcore.md10   整个调度子系统以**树形结构**来组织,每个CPU都会管理这样一棵树,每个CPU的``CpuRunQueue``即可以理解为树的根节点。每个``CpuRunQueue``下会…
12 - CpuRunQueue
33 - ``CpuRunQueue:``
34   ``CpuRunQueue``为总的CPU运行队列,他会根据不同的调度策略来进行调度。他作为调度子系统的根节点来组织调度。
36CpuRunQueue``中的信息,在cfs中保存了``CpuRunQueue``对象,我们需要确保在整体过程上锁后,子对象中不需要二次加锁即可访问,所以过程锁比较适合这个场景,若使用对象锁,则在…
62 - ``CpuRunQueue::resched_current``: 若上一步计算的时间超时则到这一步,这里会设置进程标志为``NEED_SCHEDULE``.
H A Dcfs.md23   ``CfsRunQueue``完全公平调度算法中管理``FairSchedEntity``的队列,它可以挂在总的``CpuRunQueue``下,也可以作为子节点挂在``Fa…
/DragonOS/kernel/src/sched/
H A Didle.rs7 _rq: &mut super::CpuRunQueue, in enqueue() argument
15 _rq: &mut super::CpuRunQueue, in dequeue() argument
21 fn yield_task(_rq: &mut super::CpuRunQueue) {} in yield_task() argument
24 rq: &mut super::CpuRunQueue, in check_preempt_currnet() argument
32 _rq: &mut super::CpuRunQueue, in pick_task() argument
41 _rq: &mut super::CpuRunQueue, in pick_next_task() argument
50 _rq: &mut super::CpuRunQueue, in tick() argument
62 _rq: &mut super::CpuRunQueue, in put_prev_task() argument
H A Dmod.rs50 static CPU_RUNQUEUE: Lazy<PerCpuVar<Arc<CpuRunQueue>>> = PerCpuVar::define_lazy();
71 pub fn cpu_rq(cpu: usize) -> Arc<CpuRunQueue> { in cpu_rq() argument
99 fn enqueue(rq: &mut CpuRunQueue, pcb: Arc<ProcessControlBlock>, flags: EnqueueFlag); in enqueue() argument
102 fn dequeue(rq: &mut CpuRunQueue, pcb: Arc<ProcessControlBlock>, flags: DequeueFlag); in dequeue() argument
105 fn yield_task(rq: &mut CpuRunQueue); in yield_task() argument
109 rq: &mut CpuRunQueue, in check_preempt_currnet() argument
116 fn pick_task(rq: &mut CpuRunQueue) -> Option<Arc<ProcessControlBlock>>; in pick_task()
120 rq: &mut CpuRunQueue, in pick_next_task() argument
125 fn tick(rq: &mut CpuRunQueue, pcb: Arc<ProcessControlBlock>, queued: bool); in tick() argument
130 fn put_prev_task(rq: &mut CpuRunQueue, prev: Arc<ProcessControlBlock>); in put_prev_task() argument
[all …]
H A Dpelt.rs9 CpuRunQueue, LoadWeight, SchedPolicy, SCHED_CAPACITY_SCALE, SCHED_CAPACITY_SHIFT,
198 impl CpuRunQueue { implementation
H A Dfair.rs22 CpuRunQueue, DequeueFlag, EnqueueFlag, LoadWeight, OnRq, SchedPolicy, Scheduler, TaskGroup,
348 rq: Weak<CpuRunQueue>,
410 pub fn rq(&self) -> Arc<CpuRunQueue> { in rq() argument
415 pub fn set_rq(&mut self, rq: Weak<CpuRunQueue>) { in set_rq() argument
1408 rq: &mut CpuRunQueue, in enqueue() argument
1470 rq: &mut CpuRunQueue, in dequeue() argument
1542 fn yield_task(rq: &mut CpuRunQueue) { in yield_task() argument
1564 rq: &mut CpuRunQueue, in check_preempt_currnet() argument
1641 fn pick_task(rq: &mut CpuRunQueue) -> Option<Arc<crate::process::ProcessControlBlock>> { in pick_task()
1676 fn tick(_rq: &mut CpuRunQueue, pcb: Arc<crate::process::ProcessControlBlock>, queued: bool) { in tick() argument
[all …]