CURPROC(9) | Kernel Developer's Manual | CURPROC(9)

# NAME

curproc, curcpu, curlwp — current process, processor, and LWP

# SYNOPSIS

#include <sys/proc.h>

struct cpu_info *
curcpu(void);

struct proc *
curproc(void);

struct lwp *
curlwp(void);

# DESCRIPTION

The following macros can be used to retrieve the current processor, process, and light-weight process (LWP), respectively:

1. The machine-dependent curcpu() macro returns a pointer to a cpu_info structure containing information of the CPU that this thread is running on.
2. The machine-independent curproc() macro refers to a pointer to the process currently running on this CPU.
3. The curlwp() macro expands to a pointer to lwp structure, containing information about the current LWP. This macro is machine-independent, but machine-dependent <machine/cpu.h> may redefine it.

# SEE ALSO

cpu_number(9), proc_find(9)

July 1, 2010 | NetBSD 7.2