class SchedulerState

Defined at line 217 of file ../../zircon/kernel/include/kernel/scheduler_state.h

Per-thread state used by the unified version of Scheduler.

Public Methods

SchedWeight ConvertPriorityToWeight (int priority)

Converts from kernel priority value in the interval [0, 31] to weight in

the interval (0.0, 1.0]. See the definition of SchedWeight for an

explanation of the weight distribution.

Defined at line 512 of file ../../zircon/kernel/include/kernel/scheduler_state.h

void SchedulerState ()

Defined at line 516 of file ../../zircon/kernel/include/kernel/scheduler_state.h

void SchedulerState (const SchedulerState::BaseProfile & base_profile)

Defined at line 517 of file ../../zircon/kernel/include/kernel/scheduler_state.h

void SchedulerState (const SchedulerState & )

Defined at line 520 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedulerState & operator= (const SchedulerState & )

Defined at line 521 of file ../../zircon/kernel/include/kernel/scheduler_state.h

cpu_mask_t GetEffectiveCpuMask (cpu_mask_t active_mask)

Returns the effective mask of CPUs a thread may run on, based on the

thread's affinity masks and CPUs currently active on the system.

Defined at line 525 of file ../../zircon/kernel/include/kernel/scheduler_state.h

const EffectiveProfile & effective_profile ()

Returns the current effective profile for this thread.

Defined at line 540 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedDiscipline discipline ()

Returns the type of scheduling discipline for this thread.

Defined at line 543 of file ../../zircon/kernel/include/kernel/scheduler_state.h

KeyType key ()

Returns the key used to order the run queue.

Defined at line 546 of file ../../zircon/kernel/include/kernel/scheduler_state.h

uint64_t flow_id ()

Defined at line 548 of file ../../zircon/kernel/include/kernel/scheduler_state.h

zx_instant_mono_t last_started_running ()

Defined at line 550 of file ../../zircon/kernel/include/kernel/scheduler_state.h

zx_duration_mono_t runtime_ns ()

Defined at line 551 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedDuration expected_runtime_ns ()

Defined at line 553 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedDuration time_slice_ns ()

Defined at line 554 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedDuration time_slice_used_ns ()

Defined at line 555 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedDuration remaining_time_slice_ns ()

Defined at line 556 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedTime start_time ()

Defined at line 558 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedTime finish_time ()

Defined at line 559 of file ../../zircon/kernel/include/kernel/scheduler_state.h

SchedDuration effective_period ()

Defined at line 560 of file ../../zircon/kernel/include/kernel/scheduler_state.h

cpu_mask_t hard_affinity ()

Defined at line 562 of file ../../zircon/kernel/include/kernel/scheduler_state.h

cpu_mask_t soft_affinity ()

Defined at line 563 of file ../../zircon/kernel/include/kernel/scheduler_state.h

int32_t GetWeightOrPackedDeadlineParams ()

This value requires the thread's lock to be held, since it may need to

memoize the packed deadline parameters.

Defined at line 567 of file ../../zircon/kernel/include/kernel/scheduler_state.h

cpu_num_t curr_cpu ()

Defined at line 571 of file ../../zircon/kernel/include/kernel/scheduler_state.h

cpu_num_t last_cpu ()

Defined at line 572 of file ../../zircon/kernel/include/kernel/scheduler_state.h

thread_state state ()

Defined at line 574 of file ../../zircon/kernel/include/kernel/scheduler_state.h

void set_state (thread_state state)

Defined at line 575 of file ../../zircon/kernel/include/kernel/scheduler_state.h

Enumerations

enum ProfileDirtyFlag
Name Value
Clean 0
BaseDirty 1
InheritedDirty 2

Defined at line 250 of file ../../zircon/kernel/include/kernel/scheduler_state.h

Records

Friends

void SchedulerState (const Thread * , bool )
void SchedulerState (Thread * , const char * )
class Thread
class ThreadEffectiveProfileObserver
class WaitQueueOrderingTests
class LoadBalancerTest
class WaitQueueCollection
class WaitQueue
class OwnedWaitQueue
class Scheduler