Home
last modified time | relevance | path

Searched refs:SchedMode (Results 1 – 23 of 23) sorted by relevance

/DragonOS/kernel/src/arch/x86_64/process/
H A Didle.rs9 sched::{SchedMode, __schedule},
18 __schedule(SchedMode::SM_NONE); in arch_idle_func()
/DragonOS/docs/kernel/sched/
H A Dcore.md49 - 参数:这两个函数都需要提供一个参数:``SchedMode``。用于控制此次调度的行为,可选参数主要有以下两个:
50 …- ``SchedMode::SM_NONE``: 标志当前进程没有被抢占而是主动让出,他**不会**被再次加入队列,直到有其他进程主动唤醒它,这个标志位主要用于信号量、等待队列以及一些主动唤醒场…
51 …- ``SchedMode::SM_PREEMPT``:标志当前是被**抢占**运行的,他**会**再次被加入调度队列等待下次调度,通俗来说:它是被别的进程抢占了运行时间,有机会运行时他会继续执行。
/DragonOS/kernel/src/libs/
H A Dwait_queue.rs12 sched::{schedule, SchedMode},
73 schedule(SchedMode::SM_NONE); in sleep()
92 schedule(SchedMode::SM_NONE); in sleep_with_func()
143 schedule(SchedMode::SM_NONE); in sleep_uninterruptible()
159 schedule(SchedMode::SM_NONE); in sleep_unlock_spinlock()
175 schedule(SchedMode::SM_NONE); in sleep_unlock_mutex()
191 schedule(SchedMode::SM_NONE); in sleep_uninterruptible_unlock_spinlock()
209 schedule(SchedMode::SM_NONE); in sleep_uninterruptible_unlock_mutex()
339 schedule(SchedMode::SM_NONE); in sleep()
363 schedule(SchedMode::SM_NONE); in sleep_unlock_spinlock()
H A Dmutex.rs14 sched::{schedule, SchedMode},
110 schedule(SchedMode::SM_NONE); in __sleep()
/DragonOS/kernel/src/sched/
H A Dsyscall.rs11 use super::{cpu_rq, schedule, SchedMode};
33 schedule(SchedMode::SM_NONE); in do_sched_yield()
H A Dmod.rs752 pub struct SchedMode: u8 {
821 pub fn schedule(sched_mod: SchedMode) { in schedule() argument
830 pub fn __schedule(sched_mod: SchedMode) { in __schedule() argument
873 if !sched_mod.contains(SchedMode::SM_MASK_PREEMPT) in __schedule()
/DragonOS/kernel/src/arch/x86_64/interrupt/
H A Dhandle.rs10 sched::{SchedMode, __schedule},
48 __schedule(SchedMode::SM_PREEMPT); in x86_64_do_irq()
/DragonOS/kernel/src/exception/
H A Dipi.rs10 sched::{SchedMode, __schedule},
58 __schedule(SchedMode::SM_PREEMPT); in handle()
/DragonOS/kernel/src/driver/tty/
H A Dkthread.rs14 sched::{schedule, SchedMode},
42 schedule(SchedMode::SM_NONE); in tty_refresh_thread()
/DragonOS/kernel/src/time/
H A Dsleep.rs10 sched::{schedule, SchedMode},
56 schedule(SchedMode::SM_NONE); in nanosleep()
H A Dtimer.rs24 sched::{schedule, SchedMode},
308 schedule(SchedMode::SM_NONE); in schedule_timeout()
327 schedule(SchedMode::SM_NONE); in schedule_timeout()
H A Dclocksource.rs27 sched::{schedule, SchedMode},
958 schedule(SchedMode::SM_NONE); in clocksource_watchdog_kthread()
/DragonOS/kernel/crates/wait_queue_macros/src/
H A Dlib.rs30 crate::sched::schedule(SchedMode::SM_NONE)
/DragonOS/kernel/src/driver/irqchip/
H A Driscv_intc.rs18 sched::{SchedMode, __schedule},
228 __schedule(SchedMode::SM_PREEMPT); in riscv_intc_irq()
/DragonOS/kernel/src/process/
H A Dexit.rs13 sched::{schedule, SchedMode},
169 schedule(SchedMode::SM_NONE); in do_wait()
H A Dkthread.rs22 sched::{schedule, SchedMode},
483 schedule(SchedMode::SM_NONE); in kthread_daemon()
508 schedule(SchedMode::SM_NONE); in kernel_thread_bootstrap_stage2()
H A Dmod.rs56 cpu_rq, fair::FairSchedEntity, prio::MAX_PRIO, DequeueFlag, EnqueueFlag, OnRq, SchedMode,
428 __schedule(SchedMode::SM_NONE); in exit()
/DragonOS/kernel/src/arch/x86_64/ipc/
H A Dsignal.rs20 sched::{schedule, SchedMode},
719 schedule(SchedMode::SM_NONE); in sig_stop()
/DragonOS/kernel/src/net/socket/
H A Dmod.rs30 sched::{schedule, SchedMode},
426 schedule(SchedMode::SM_NONE); in sleep()
/DragonOS/kernel/src/net/event_poll/
H A Dmod.rs27 sched::{schedule, SchedMode},
498 schedule(SchedMode::SM_NONE); in do_epoll_wait()
/DragonOS/kernel/src/libs/futex/
H A Dfutex.rs22 sched::{schedule, SchedMode},
297 schedule(SchedMode::SM_NONE); in futex_wait()
/DragonOS/kernel/src/syscall/
H A Dmod.rs19 sched::{schedule, SchedMode},
387 schedule(SchedMode::SM_NONE); in handle()
1148 schedule(SchedMode::SM_PREEMPT); in handle()
/DragonOS/kernel/src/ipc/
H A Dpipe.rs12 sched::SchedMode,