Index Index for
Section 9r
Index Alphabetical
listing for K
Bottom of page Bottom of
page

kernel_isrthread(9r)

NAME

kernel_isrthread - General: Starts a fixed priority kernel thread dedicated to interrupt service

SYNOPSIS

thread_t kernel_isrthread( task_t task, void (*start) (void), int pri );

ARGUMENTS

task Specifies a pointer to a task structure. This pointer identifies the task in which the kernel_isrthread routine starts the newly created kernel thread dedicated to interrupt service handling. start Specifies a pointer to an routine that is the entry point for the newly created kernel thread. pri Specifies the scheduling priority level for the newly created kernel thread. See the DESCRIPTION section for the priority usage table that describes the possible scheduling priorities.

DESCRIPTION

The kernel_isrthread routine creates and starts a kernel thread at the specified entry point. This kernel thread handles only interrupt service requests in the specified task and at the specified priority level. A kernel module should always attach a kernel thread to the ``first task.'' The following priority usage table describes the possible scheduling priorities. The first column shows a range of priorities. The second column shows an associated scheduling priority constant defined in <src/kernel/kern/sched.h> (if applicable). The third column describes the usage of the priority ranges. To specify a scheduling priority of 38, you pass the constant BASEPRI_SYSTEM. To specify a scheduling priority of 33, you can pass the following: BASEPRI_HIGHEST + 1. ____________________________________________________________ Priority Constant Usage ____________________________________________________________ 0--31 N/A Realtime kernel threads 32--38 BASEPRI_HIGHEST -- BASEPRI_SYSTEM Operating system kernel threads 44--64 User kernel threads BASEPRI_USER -- BASEPRI_LOWEST ____________________________________________________________

RETURN VALUES

Upon successful completion, kernel_isrthread returns a pointer to the thread structure associated with the kernel thread started at the specified entry point. Kernel modules can use this pointer as a handle to a specific kernel thread in calls to other kernel threads-related routines.

SEE ALSO

Routines: kernel_thread_w_arg(9r) Data Structures: task(9s), thread(9s)

Index Index for
Section 9r
Index Alphabetical
listing for K
Top of page Top of
page