tail head cat sleep
QR code linking to this page

Manual Pages  — UCONTEXT


ucontext – user thread context



Standard C Library (libc, -lc)


#include <ucontext.h>


The ucontext_t type is a structure type suitable for holding the context for a user thread of execution. A thread's context includes its stack, saved registers, and list of blocked signals.

The ucontext_t structure contains at least these fields:

ucontext_t *uc_link
  context to assume when this one returns
sigset_t uc_sigmask
  signals being blocked
stack_t uc_stack
  stack area
mcontext_t uc_mcontext
  saved registers

The uc_link field points to the context to resume when this context's entry point function returns. If uc_link is equal to NULL, then the process exits when this context returns.

The uc_mcontext field is machine-dependent and should be treated as opaque by portable applications.

The following functions are defined to manipulate ucontext_t structures:

int getcontext(ucontext_t *);
ucontext_t * getcontextx(void);
int setcontext(const ucontext_t *);
void makecontext(ucontext_t *, void (*)(void), int, ...);
int swapcontext(ucontext_t *, const ucontext_t *);


sigaltstack(2), getcontext(3), getcontextx(3), makecontext(3)

UCONTEXT (3) September 10, 2002

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

What is this horrible fascination with Unix? The operating system of the 1960s, still gaining in popularity in the 1990s.
— Donald A. Norman