*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> swapcontext (2)              



NAME    [Toc]    [Back]

       makecontext,  swapcontext  - Manipulate user level context

SYNOPSIS    [Toc]    [Back]

       #include  <ucontext.h>

       void  makecontext(
               ucontext_t *ucp,
               void (*func)(),
               int argc ...  ); int swapcontext(
               ucontext_t *oucp,
               const ucontext_t *ucp );

STANDARDS    [Toc]    [Back]

       Interfaces documented on this reference  page  conform  to
       industry standards as follows:

       makecontext(), swapcontext():  XSH5.0

       Refer to the standards(5) reference page for more information
 about industry standards and associated tags.

PARAMETERS    [Toc]    [Back]

       Provides a pointer to a ucontext structure, defined in the
       <ucontext.h> header file.  The ucontext structure contains
       the signal mask, execution stack, and  machine  registers.
       (See  ucontext(5) for more information about the format of
       the ucontext  structure.)   Specifies  a  function  to  be
       called  when  program execution begins in the new context.
       Specifies the number of parameters passed  to  the  func()
       function.  You include the parameters themselves following
       the argc parameter.  Pointer  to  the  ucontext  structure
       that holds the current context structure.

DESCRIPTION    [Toc]    [Back]

       The  makecontext() function modifies the context specified
       by the ucp parameter.  Before you call  the  makecontext()
       function, call the getcontext() function to initialize the
       ucp parameter.

       Before you call the  makecontext()  function,  you  should
       allocate  a  stack  for  the new context. Also, you should
       initialize the uc_link member of the  ucontext  structure.
       This  member  determines  the context that is resumed when
       the context modified by makecontext()  returns.  You  initialize
  the  uc_link  member  by calling the getcontext()

       To execute the new context, call the setcontext() or swapcontext()
  function.  Program  execution begins by calling
       the function specified in the func parameter.  Any parameters
  you  specify following the argc parameter are passed
       to the func() function.

       The swapcontext() function switches between two user  contexts.
 The function stores the current context in the oucp
       parameter. It  then  switches  execution  to  the  context
       described by the ucp parameter.  When the new context finishes
 execution, control returns to the context  described
       by the oucp parameter.

RETURN VALUES    [Toc]    [Back]

       The makecontext() function does not return.

       On  success,  the swapcontext() function returns 0 (zero).
       On failure the swapcontext() function returns a  value  of
       -1 and sets errno to indicate the error.

ERRORS    [Toc]    [Back]

       The  makecontext() or swapcontext() functions set errno to
       the specified values for the following conditions: The ucp
       parameter has too little stack left to complete the operation.

SEE ALSO    [Toc]    [Back]

       Functions:  exit(2), getcontext(2), sigaction(2), sigprocmask(2)

       Files:  ucontext(5)

       Standards:  standards(5)

[ Back ]
 Similar pages
Name OS Title
getcontext Tru64 Initiates and restores user level context switching
setcontext Tru64 Initiates and restores user level context switching
dmicconv IRIX manipulate conversion controls of an image converter context
ucontext IRIX user context
ucontext Tru64 user context
ucontext FreeBSD user thread context
getcontext IRIX get and set current user context
getcontext FreeBSD get and set user thread context
setcontext FreeBSD get and set user thread context
setcontext HP-UX get and set current user context
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service