The
ucontext_t is a structure type which is used to describe the context of a thread of control within the execution of a process. A thread's context includes its stack, saved registers, and list of blocked signals.
The
ucontext_t structure includes the following members:
ucontext_t *uc_link
sigset_t uc_sigmask
stack_t uc_stack
mcontext_t uc_mcontext
The
uc_link member points to the context that will be resumed after the function specified when modifying a context using
makecontext(3) has returned. If
uc_link is a
NULL pointer, then the context is the main context, and the process will exit with an exit status of 0 upon return.
The
uc_sigmask member is the set of signals that are blocked when the context is activated. Further information can be found in
sigprocmask(2).
The
uc_stack member defines the stack used by the context. Further information can be found in
sigaltstack(2).
The
uc_mcontext member defines the machine state associated with the context; it may consist of general registers, floating point registers and other machine-specific information. Its description is beyond the scope of this manual page; portable applications should not access this structure member.