Searched refs:CpuRunQueue (Results 1 – 6 of 6) sorted by relevance
/DragonOS/docs/kernel/sched/ |
H A D | core.md | 10   整个调度子系统以**树形结构**来组织,每个CPU都会管理这样一棵树,每个CPU的``CpuRunQueue``即可以理解为树的根节点。每个``CpuRunQueue``下会… 12 - CpuRunQueue 33 - ``CpuRunQueue:`` 34   ``CpuRunQueue``为总的CPU运行队列,他会根据不同的调度策略来进行调度。他作为调度子系统的根节点来组织调度。 36 …CpuRunQueue``中的信息,在cfs中保存了``CpuRunQueue``对象,我们需要确保在整体过程上锁后,子对象中不需要二次加锁即可访问,所以过程锁比较适合这个场景,若使用对象锁,则在… 62 - ``CpuRunQueue::resched_current``: 若上一步计算的时间超时则到这一步,这里会设置进程标志为``NEED_SCHEDULE``.
|
H A D | cfs.md | 23   ``CfsRunQueue``完全公平调度算法中管理``FairSchedEntity``的队列,它可以挂在总的``CpuRunQueue``下,也可以作为子节点挂在``Fa…
|
/DragonOS/kernel/src/sched/ |
H A D | idle.rs | 7 _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 D | mod.rs | 50 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 D | pelt.rs | 9 CpuRunQueue, LoadWeight, SchedPolicy, SCHED_CAPACITY_SCALE, SCHED_CAPACITY_SHIFT, 198 impl CpuRunQueue { implementation
|
H A D | fair.rs | 22 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 …]
|