ZXFoundation™ 26h2
Loading...
Searching...
No Matches
zxfoundation.sched.core Module Reference

Functions

auto zxfoundation::sched::cpu_down (u16 cpu_id) noexcept -> ::std::expected< void, ::lib::kernel_error >
 Notify the scheduler that a CPU is going offline.
auto zxfoundation::sched::cpu_rq (u16 cpu_id) noexcept -> run_queue &
auto zxfoundation::sched::cpu_timer (u16 cpu_id) noexcept -> zxfoundation::sys::timer::kernel_timer &
 Return the per-CPU periodic tick timer used by the nohz machinery.
auto zxfoundation::sched::cpu_timer_tick () noexcept -> void
 CPU timer quantum enforcement — fires when a strand's quantum expires.
auto zxfoundation::sched::cpu_up (u16 cpu_id) noexcept -> ::std::expected< void, ::lib::kernel_error >
 Notify the scheduler that a CPU has come online.
 zxfoundation::sched::declscope (C) auto __switch_to_asm(strand *prev
auto zxfoundation::sched::dequeue_domain (domain *d) noexcept -> void
auto zxfoundation::sched::dequeue_strand (strand *s) noexcept -> void
auto zxfoundation::sched::enqueue_domain (domain *d) noexcept -> void
auto zxfoundation::sched::enqueue_strand (strand *s) noexcept -> void
auto zxfoundation::sched::idle_enter () noexcept -> void
auto zxfoundation::sched::irq_handler_cpu_timer (u16 irq, arch::s390x::cpu::irq::irq_frame *frame, void *data) noexcept -> void
 CPU timer IRQ handler — dispatches vector EXT_IRQ_CPU_TIMER.
auto zxfoundation::sched::need_resched () noexcept -> bool
auto zxfoundation::sched::preempt_schedule () noexcept -> void
auto zxfoundation::sched::quiesce_domain (domain &d) noexcept -> std::expected< void, lib::kernel_error >
 Quiesce every strand owned by a domain before identity teardown.
auto zxfoundation::sched::sched_active () noexcept -> bool
auto zxfoundation::sched::sched_init () noexcept -> void
auto zxfoundation::sched::sched_init_ap (u16 cpu_id) noexcept -> void
auto zxfoundation::sched::sched_resched_current () noexcept -> void
 Mark the currently executing domain as needing rescheduling.
auto zxfoundation::sched::schedule () noexcept -> void
auto zxfoundation::sched::scheduler_tick () noexcept -> void
 Periodic scheduler tick.
auto zxfoundation::sched::strand_admit_policy (strand &s, const zxfoundation::sched::sched_policy &policy) noexcept -> std::expected< zxfoundation::sched::sched_admission_result, lib::kernel_error >
 Admit a scheduler policy for a strand before run-queue insertion.
auto zxfoundation::sched::strand_spawn (const zxfoundation::dgp::domain::strand_create_request &request) noexcept -> std::expected< zxfoundation::dgp::domain::strand *, lib::kernel_error >
 Create and optionally enqueue a secondary strand for a DGP domain.
auto zxfoundation::sched::strand_trampoline_exit () noexcept -> void
auto zxfoundation::sched::this_rq () noexcept -> run_queue &

Files

file  zxfoundation/sched/core.cxxm
 Scheduler types.
file  zxfoundation/sched/core.cxx
 Scheduler core — schedule(), tick, init, work-stealing, softirq, nohz.