netbsd man page for cpu_need_resched

Query: cpu_need_resched

OS: netbsd

Section: 9

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

CPU_NEED_RESCHED(9)					   BSD Kernel Developer's Manual				       CPU_NEED_RESCHED(9)

NAME
cpu_need_resched -- context switch notification
SYNOPSIS
#include <sys/cpu.h> void cpu_need_resched(struct cpu_info *ci, int flags);
DESCRIPTION
The cpu_need_resched() function is the machine-independent interface for the scheduler to notify machine-dependent code that a context switch from the current LWP, on the cpu ci, is required. This event may occur if a higher priority LWP appears on the run queue or if the current LWP has exceeded its time slice. If RESCHED_KPREEMPT flag is specified in flags and __HAVE_PREEMPTION C pre-processor macro is defined in <machine/intr.h>, machine-dependent code should make a context switch happen as soon as possible even if the cpu is running the kernel code. If RESCHED_IMMED flag is specified in flags, machine-dependent code should make a context switch happen as soon as possible. In that case, for example, if ci is not the current processor, cpu_need_resched() typically issues an inter processor call to the processor to make it notice the need of a context switch as soon as possible. Typically, the cpu_need_resched() function will perform the following operations: o Set a per-processor flag which is checked by userret(9) when returning to user-mode execution. o Post an asynchronous software trap (AST). o Send an inter processor interrupt to wake up cpu_idle(9).
SEE ALSO
sched_4bsd(9), userret(9)
BSD
July 31, 2010 BSD
Related Man Pages
mi_switch(9) - freebsd
cpu_need_resched(9) - netbsd
cpu_switchto(9) - netbsd
userret(9) - netbsd
mi_switch(9) - linux
Similar Topics in the Unix Linux Community
SCO unix 5.0.7 (SMP)
Poor resourece allocation (multi-user system)
Processsor and Kernel type.
Please Help I Can't Install Unix On My Machine
Help for processor