Merged these into POSIX manual.

This commit is contained in:
Joel Sherrill
1998-11-19 16:33:49 +00:00
parent 28c6b2a10a
commit e9264513e4
19 changed files with 0 additions and 9745 deletions
-175
View File
@@ -1,175 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Thread Cancellation Manager
@section Introduction
The
thread cancellation manager is ...
The directives provided by the thread cancellation manager are:
@itemize @bullet
@item @code{pthread_cancel} -
@item @code{pthread_setcancelstate} -
@item @code{pthread_setcanceltype} -
@item @code{pthread_testcancel} -
@item @code{pthread_cleanup_push} -
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the thread cancellation manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection pthread_cancel -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int pthread_cancel(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_setcancelstate -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int pthread_setcancelstate(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_setcanceltype -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int pthread_setcanceltype(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_testcancel -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int pthread_testcancel(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_cleanup_push -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int pthread_cleanup_push(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
-274
View File
@@ -1,274 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Clock Manager
@section Introduction
The clock manager ...
The directives provided by the clock manager are:
@itemize @bullet
@item @code{clock_gettime} -
@item @code{clock_settime} -
@item @code{clock_getres} -
@item @code{sleep} - Delay Process Execution
@item @code{nanosleep} -
@item @code{gettimeofday} - Get the Time of Day
@item @code{time} - Get time in seconds
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the clock manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@subsection clock_gettime -
@subheading CALLING SEQUENCE:
@example
#include <time.h>
int clock_gettime(
clockid_t clock_id,
struct timespec *tp
);
@end example
@subheading STATUS CODES:
On error, this routine returns -1 and sets errno to one of the following:
@table @b
@item EINVAL
The tp pointer parameter is invalid.
@item EINVAL
The clock_id specified is invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
NONE
@page
@subsection clock_settime -
@subheading CALLING SEQUENCE:
@example
#include <time.h>
int clock_settime(
clockid_t clock_id,
const struct timespec *tp
);
@end example
@subheading STATUS CODES:
On error, this routine returns -1 and sets errno to one of the following:
@table @b
@item EINVAL
The tp pointer parameter is invalid.
@item EINVAL
The clock_id specified is invalid.
@item EINVAL
The contents of the tp structure are invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
NONE
@page
@subsection clock_getres -
@subheading CALLING SEQUENCE:
@example
#include <time.h>
int clock_getres(
clockid_t clock_id,
struct timespec *res
);
@end example
@subheading STATUS CODES:
On error, this routine returns -1 and sets errno to one of the following:
@table @b
@item EINVAL
The res pointer parameter is invalid.
@item EINVAL
The clock_id specified is invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
If res is NULL, then the resolution is not returned.
@page
@subsection sleep - Delay Process Execution
@subheading CALLING SEQUENCE:
@example
#include <time.h>
unsigned int sleep(
unsigned int seconds
);
@end example
@subheading STATUS CODES:
This routine returns the number of unslept seconds.
@subheading DESCRIPTION:
The @code{sleep()} function delays the calling thread by the specified
number of @code{seconds}.
@subheading NOTES:
This call is interruptible by a signal.
@page
@subsection nanosleep -
@subheading CALLING SEQUENCE:
@example
#include <time.h>
int nanosleep(
const struct timespec *rqtp,
struct timespec *rmtp
);
@end example
@subheading STATUS CODES:
On error, this routine returns -1 and sets errno to one of the following:
@table @b
@item EINTR
The routine was interrupted by a signal.
@item EAGAIN
The requested sleep period specified negative seconds or nanoseconds.
@item EINVAL
The requested sleep period specified an invalid number for the nanoseconds
field.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
This call is interruptible by a signal.
@page
@subsection gettimeofday - Get the Time of Day
@subheading CALLING SEQUENCE:
@example
#include <sys/time.h>
#include <unistd.h>
int gettimeofday(
struct timeval *tp,
struct timezone *tzp
);
@end example
@subheading STATUS CODES:
On error, this routine returns -1 and sets @code{errno} as appropriate.
@table @b
@item EPERM
@code{settimeofdat} is called by someone other than the superuser.
@item EINVAL
Timezone (or something else) is invalid.
@item EFAULT
One of @code{tv} or @code{tz} pointed outside your accessible address
space
@end table
@subheading DESCRIPTION:
This routine returns the current time of day in the @code{tp} structure.
@subheading NOTES:
Currently, the timezone information is not supported. The @code{tzp}
argument is ignored.
@page
@subsection time - Get time in seconds
@subheading CALLING SEQUENCE:
@example
#include <time.h>
int time(
time_t *tloc
);
@end example
@subheading STATUS CODES:
This routine returns the number of seconds since the Epoch.
@subheading DESCRIPTION:
@code{time} returns the time since 00:00:00 GMT, January 1, 1970,
measured in seconds
If @code{tloc} in non null, the return value is also stored in the
memory pointed to by @code{t}.
@subheading NOTES:
NONE
-323
View File
@@ -1,323 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Condition Variable Manager
@section Introduction
The condition variable manager ...
The directives provided by the condition variable manager are:
@itemize @bullet
@item @code{pthread_condattr_init} -
@item @code{pthread_condattr_destroy} -
@item @code{pthread_condattr_setpshared} -
@item @code{pthread_condattr_getpshared} -
@item @code{pthread_cond_init} -
@item @code{pthread_cond_destroy} -
@item @code{pthread_cond_signal} -
@item @code{pthread_cond_broadcast} -
@item @code{pthread_cond_wait} -
@item @code{pthread_cond_timedwait} -
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the condition variable manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection pthread_condattr_init
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_condattr_init(
pthread_condattr_t *attr
);
@end example
@subheading STATUS CODES:
@table @b
@item ENOMEM
Insufficient memory is available to initialize the condition variable
attributes object.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_condattr_destroy
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_condattr_destroy(
pthread_condattr_t *attr
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
The attribute object specified is invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_condattr_setpshared
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_condattr_setpshared(
pthread_condattr_t *attr,
int pshared
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
Invalid argument passed.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_condattr_getpshared
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_condattr_getpshared(
const pthread_condattr_t *attr,
int *pshared
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
Invalid argument passed.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_cond_init
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_cond_init(
pthread_cond_t *cond,
const pthread_condattr_t *attr
);
@end example
@subheading STATUS CODES:
@table @b
@item EAGAIN
The system lacked a resource other than memory necessary to create the
initialize the condition variable object.
@item ENOMEM
Insufficient memory is available to initialize the condition variable object.
@item EBUSY
The specified condition variable has already been initialized.
@item EINVAL
The specified attribute value is invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_cond_destroy
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_cond_destroy(
pthread_cond_t *cond
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
The specified condition variable is invalid.
@item EBUSY
The specified condition variable is currently in use.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_cond_signal
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_cond_signal(
pthread_cond_t *cond
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
The specified condition variable is not valid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
This routine should not be invoked from a handler from an asynchronous signal
handler or an interrupt service routine.
@page
@subsection pthread_cond_broadcast
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_cond_broadcast(
pthread_cond_t *cond
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
The specified condition variable is not valid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
This routine should not be invoked from a handler from an asynchronous signal
handler or an interrupt service routine.
@page
@subsection pthread_cond_wait
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_cond_wait(
pthread_cond_t *cond,
pthread_mutex_t *mutex
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
The specified condition variable or mutex is not initialized OR different
mutexes were specified for concurrent pthread_cond_wait() and
pthread_cond_timedwait() operations on the same condition variable OR
the mutex was not owned by the current thread at the time of the call.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_cond_timedwait
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_cond_timedwait(
pthread_cond_t *cond,
pthread_mutex_t *mutex,
const struct timespec *abstime
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
The specified condition variable or mutex is not initialized OR different
mutexes were specified for concurrent pthread_cond_wait() and
pthread_cond_timedwait() operations on the same condition variable OR
the mutex was not owned by the current thread at the time of the call.
@item ETIMEDOUT
The specified time has elapsed without the condition variable being
satisfied.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
File diff suppressed because it is too large Load Diff
-465
View File
@@ -1,465 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Device- and Class- Specific Functions Manager
@section Introduction
The device- and class- specific functions manager is ...
The directives provided by the device- and class- specific functions
manager are:
@itemize @bullet
@item @code{cfgetispeed} - Reads terminal input baud rate
@item @code{cfgetospeed} - Reads terminal output baud rate
@item @code{cfsetispeed} - Sets terminal input baud rate
@item @code{cfsetospeed} - Set terminal output baud rate
@item @code{tcgetattr} - Gets terminal attributes
@item @code{tcsetattr} - Set terminal attributes
@item @code{tcsendbreak} - Sends a break to a terminal
@item @code{tcdrain} - Waits for all output to be transmitted to the terminal
@item @code{tcflush} - Discards terminal data
@item @code{tcflow} - Suspends/restarts terminal output
@item @code{tcgetpgrp} - Gets foreground process group ID
@item @code{tcsetpgrp} - Sets foreground process group ID
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the device- and class- specific functions manager's
directives. A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection cfgetispeed - Reads terminal input baud rate
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <termios.h>
int cfgetispeed(
const struct termios *p
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
The @code{cfgetispeed()} function returns a code for baud rate.
@subheading DESCRIPTION:
The @code{cfsetispeed()} function stores a code for the terminal speed
stored in a struct termios. The codes are defined in @code{<termios.h>}
by the macros BO, B50, B75, B110, B134, B150, B200, B300, B600, B1200,
B1800, B2400, B4800, B9600, B19200, and B38400.
The @code{cfsetispeed()} function does not do anything to the hardware.
It merely stores a value for use by @code{tcsetattr()}.
@subheading NOTES:
Baud rates are defined by symbols, such as B110, B1200, B2400. The actual
number returned for any given speed may change from system to system.
@page
@subsection cfgetospeed - Reads terminal output baud rate
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <termios.h>
int cfgetospeed(
const struct termios *p
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
The @code{cfgetospeed()} function returns the termios code for the baud rate.
@subheading DESCRIPTION:
The @code{cfgetospeed()} function returns a code for the terminal speed
stored in a @code{struct termios}. The codes are defined in @code{<termios.h>}
by the macros BO, B50, B75, B110, B134, B150, B200, B300, B600, B1200, B1800,
B2400, B4800, B9600, B19200, and B38400.
The @code{cfgetospeed()} function does not do anything to the hardware.
It merely returns the value stored by a previous call to @code{tcgetattr()}.
@subheading NOTES:
Baud rates are defined by symbols, such as B110, B1200, B2400. The actual
number returned for any given speed may change from system to system.
@page
@subsection cfsetispeed - Sets terminal input baud rate
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <termios.h>
int cfsetispeed(
struct termios *p,
speed_t speed
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
The @code{cfsetispeed()} function returns a zero when successful and
returns -1 when an error occurs.
@subheading DESCRIPTION:
The @code{cfsetispeed()} function stores a code for the terminal speed
stored in a struct termios. The codes are defined in @code{<termios.h>}
by the macros B0, B50, B75, B110, B134, B150, B200, B300, B600, B1200,
B1800, B2400, B4800, B9600, B19200, and B38400.
@subheading NOTES:
This function merely stores a value in the @code{termios} structure. It
does not change the terminal speed until a @code{tcsetattr()} is done.
It does not detect impossible terminal speeds.
@page
@subsection cfsetospeed - Sets terminal output baud rate
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <termios.h>
int cfsetospeed(
struct termios *p,
speed_t speed
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
The @code{cfsetospeed()} function returns a zero when successful and
returns -1 when an error occurs.
@subheading DESCRIPTION:
The @code{cfsetospeed()} function stores a code for the terminal speed stored
in a struct @code{termios}. The codes are defiined in @code{<termios.h>} by the
macros B0, B50, B75, B110, B134, B150, B200, B300, B600, B1200, B1800, B2400,
B4800, B9600, B19200, and B38400.
The @code{cfsetospeed()} function does not do anything to the hardware. It
merely stores a value for use by @code{tcsetattr()}.
@subheading NOTES:
This function merely stores a value in the @code{termios} structure.
It does not change the terminal speed until a @code{tcsetattr()} is done.
It does not detect impossible terminal speeds.
@page
@subsection tcgetattr - Gets terminal attributes
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <termios.h>
#include <unistd.h>
int tcgetattr(
int fildes,
struct termios *p
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item EBADF
Invalid file descriptor
@item ENOOTY
Terminal control function attempted for a file that is not a terminal.
@end table
@subheading DESCRIPTION:
The @code{tcgetattr()} gets the parameters associated with the terminal
referred to by @code{fildes} and stores them into the @code{termios()}
structure pointed to by @code{termios_p}.
@subheading NOTES:
NONE
@page
@subsection tcsetattr - Set terminal attributes
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <termios.h>
#include <unistd.h>
int tcsetattr(
int fildes,
int options,
const struct termios *tp
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection tcsendbreak - Sends a break to a terminal
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int tcsendbreak(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
This routine is not currently supported by RTEMS but could be
in a future version.
@page
@subsection tcdrain - Waits for all output to be transmitted to the terminal.
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <termios.h>
#include <unistd.h>
int tcdrain(
int fildes
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item EBADF
Invalid file descriptor
@item EINTR
Function was interrupted by a signal
@item ENOTTY
Terminal control function attempted for a file that is not a terminal.
@end table
@subheading DESCRIPTION:
The @code{tcdrain()} function waits until all output written to
@code{fildes} has been transmitted.
@subheading NOTES:
NONE
@page
@subsection tcflush - Discards terminal data
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int tcflush(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
This routine is not currently supported by RTEMS but could be
in a future version.
@page
@subsection tcflow - Suspends/restarts terminal output.
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int tcflow(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
This routine is not currently supported by RTEMS but could be
in a future version.
@page
@subsection tcgetpgrp - Gets foreground process group ID
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int tcgetpgrp(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
This routine is not currently supported by RTEMS but could be
in a future version.
@page
@subsection tcsetpgrp - Sets foreground process group ID
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int tcsetpgrp(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
This routine is not currently supported by RTEMS but could be
in a future version.
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-140
View File
@@ -1,140 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Key Manager
@section Introduction
The key manager ...
The directives provided by the key manager are:
@itemize @bullet
@item @code{pthread_key_create} -
@item @code{pthread_key_delete} -
@item @code{pthread_setspecific} -
@item @code{pthread_getspecific} -
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the key manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection pthread_key_create
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_key_create(
pthread_key_t *key,
void (*destructor)( void * )
);
@end example
@subheading STATUS CODES:
@table @b
@item EAGAIN
There were not enough resources available to create another key.
@item ENOMEM
Insufficient memory exists to create the key.
@end table
@page
@subsection pthread_key_delete
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_key_delete(
pthread_key_t key,
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
The key was invalid
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_setspecific
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
int pthread_setspecific(
pthread_key_t key,
const void *value
);
@end example
@subheading STATUS CODES:
@table @b
@item EINVAL
The specified key is invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection pthread_getspecific
@subheading CALLING SEQUENCE:
@example
#include <pthread.h>
void *pthread_getspecific(
pthread_key_t key
);
@end example
@subheading STATUS CODES:
@table @b
@item NULL
There is no thread-specific data associated with the specified key.
@item non-NULL
The data associated with the specified key.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
-315
View File
@@ -1,315 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Memory Management Manager
@section Introduction
The
memory management manager is ...
The directives provided by the memory management manager are:
@itemize @bullet
@item @code{mlockall} -
@item @code{munlockall} -
@item @code{mlock} -
@item @code{munlock} -
@item @code{mmap} -
@item @code{munmap} -
@item @code{mprotect} -
@item @code{msync} -
@item @code{shm_open} -
@item @code{shm_unlink} -
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the memory management manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection mlockall -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mlockall(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection munlockall -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int munlockall(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mlock -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mlock(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection munlock -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int munlock(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mmap -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mmap(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection munmap -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int munmap(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mprotect -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mprotect(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection msync -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int msync(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection shm_open -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int shm_open(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection shm_unlink -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int shm_unlink(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
-259
View File
@@ -1,259 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Message Passing Manager
@section Introduction
The
message passing manager is ...
The directives provided by the message passing manager are:
@itemize @bullet
@item @code{mq_open} -
@item @code{mq_close} -
@item @code{mq_unlink} -
@item @code{mq_send} -
@item @code{mq_receive} -
@item @code{mq_notify} -
@item @code{mq_setattr} -
@item @code{mq_getattr} -
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the message passing manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection mq_open -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mq_open(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mq_close -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mq_close(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mq_unlink -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mq_unlink(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mq_send -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mq_send(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mq_receive -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mq_receive(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mq_notify -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mq_notify(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mq_setattr -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mq_setattr(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection mq_getattr -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int mq_getattr(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
File diff suppressed because it is too large Load Diff
-34
View File
@@ -1,34 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@ifinfo
@node Preface, , Top, Top
@end ifinfo
@unnumbered Preface
This is the User's Guide for the POSIX API support
provided in RTEMS.
The functionality described in this document is based
on the following standards:
@itemize @bullet
@item POSIX 1003.1b-1993.
@item POSIX 1003.1h/D3.
@end itemize
Much of the POSIX API standard is actually implemented in the
Cygnus Newlib ANSI C Library. Please refer to documentation on
Newlib for more information on what it supplies.
At this point, this is just beginning to become what it
ultimately should be.
File diff suppressed because it is too large Load Diff
-414
View File
@@ -1,414 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Process Creation and Execution Manager
@section Introduction
The process creation and execution manager is ...
The directives provided by the process creation and execution manager are:
@itemize @bullet
@item @code{fork} - Create a Process
@item @code{execl} - Execute a File
@item @code{execv} - Execute a File
@item @code{execle} - Execute a File
@item @code{execve} - Execute a File
@item @code{execlp} - Execute a File
@item @code{execvp} - Execute a File
@item @code{pthread_atfork} - Register Fork Handlers
@item @code{wait} - Wait for Process Termination
@item @code{waitpid} - Wait for Process Termination
@item @code{_exit} - Terminate a Process
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the process creation and execution manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection fork - Create a Process
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <sys/types.h>
int fork( void );
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection execl - Execute a File
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int execl(
const char *path,
const char *arg,
...
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection execv - Execute a File
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int execv(
const char *path,
char const *argv[],
...
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection execle - Execute a File
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int execle(
const char *path,
const char *arg,
...
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection execve - Execute a File
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int execve(
const char *path,
char *const argv[],
char *const envp[]
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection execlp - Execute a File
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int execlp(
const char *file,
const char *arg,
...
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection execvp - Execute a File
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int execvp(
const char *file,
char *const argv[]
...
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection pthread_atfork - Register Fork Handlers
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <sys/types.h>
int pthread_atfork(
void (*prepare)(void),
void (*parent)(void),
void (*child)(void)
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection wait - Wait for Process Termination
@subheading CALLING SEQUENCE:
@ifset is-C
@example
#include <sys/types.h>
#include <sys/wait.h>
int wait(
int *stat_loc
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection waitpid - Wait for Process Termination
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int wait(
pid_t pid,
int *stat_loc,
int options
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item ENOSYS
This routine is not supported by RTEMS.
@end table
@subheading DESCRIPTION:
This routine is not supported by RTEMS.
@subheading NOTES:
NONE
@page
@subsection _exit - Terminate a Process
@subheading CALLING SEQUENCE:
@ifset is-C
@example
void _exit(
int status
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
NONE
@subheading DESCRIPTION:
The @code{_exit()} function terminates the calling process.
@subheading NOTES:
In RTEMS, a process is equivalent to the entire application on a single
processor. Invoking this service terminates the application.
-175
View File
@@ -1,175 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Scheduler Manager
@section Introduction
The scheduler manager ...
The directives provided by the scheduler manager are:
@itemize @bullet
@item @code{sched_get_priority_min} -
@item @code{sched_get_priority_max} -
@item @code{sched_rr_get_interval} -
@item @code{sched_yield} -
@end itemize
@section Background
@subsection Priority
In the RTEMS implementation of the POSIX API, the priorities range from
the low priority of sched_get_priority_min() to the highest priority of
sched_get_priority_max(). Numerically higher values represent higher
priorities.
@subsection Scheduling Policies
The following scheduling policies are available:
@table @b
@item SCHED_FIFO
Priority-based, preemptive scheduling with no timeslicing. This is equivalent
to what is called "manual round-robin" scheduling.
@item SCHED_RR
Priority-based, preemptive scheduling with timeslicing. Time quantums are
maintained on a per-thread basis and are not reset at each context switch.
Thus, a thread which is preempted and subsequently resumes execution will
attempt to complete the unused portion of its time quantum.
@item SCHED_OTHER
Priority-based, preemptive scheduling with timeslicing. Time quantums are
maintained on a per-thread basis and are reset at each context switch.
@item SCHED_SPORADIC
Priority-based, preemptive scheduling utilizing three additional parameters:
budget, replenishment period, and low priority. Under this policy, the
thread is allowed to execute for "budget" amount of time before its priority
is lowered to "low priority". At the end of each replenishment period,
the thread resumes its initial priority and has its budget replenished.
@end table
@section Operations
There is currently no text in this section.
@section Directives
This section details the scheduler manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection sched_get_priority_min
@subheading CALLING SEQUENCE:
@example
#include <sched.h>
int sched_get_priority_min(
int policy
);
@end example
@subheading STATUS CODES:
On error, this routine returns -1 and sets errno to one of the following:
@table @b
@item EINVAL
The indicated policy is invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sched_get_priority_max
@subheading CALLING SEQUENCE:
@example
#include <sched.h>
int sched_get_priority_max(
int policy
);
@end example
@subheading STATUS CODES:
On error, this routine returns -1 and sets errno to one of the following:
@table @b
@item EINVAL
The indicated policy is invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sched_rr_get_interval
@subheading CALLING SEQUENCE:
@example
#include <sched.h>
int sched_rr_get_interval(
pid_t pid,
struct timespec *interval
);
@end example
@subheading STATUS CODES:
On error, this routine returns -1 and sets errno to one of the following:
@table @b
@item ESRCH
The indicated process id is invalid.
@item EINVAL
The specified interval pointer parameter is invalid.
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sched_yield
@subheading CALLING SEQUENCE:
@example
#include <sched.h>
int sched_yield( void );
@end example
@subheading STATUS CODES:
This routine always returns zero to indicate success.
@subheading DESCRIPTION:
@subheading NOTES:
-287
View File
@@ -1,287 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter Semaphores Manager
@section Introduction
The
semaphore manager is ...
The directives provided by the semaphore manager are:
@itemize @bullet
@item @code{sem_init} -
@item @code{sem_destroy} -
@item @code{sem_open} -
@item @code{sem_close} -
@item @code{sem_unlink} -
@item @code{sem_wait} -
@item @code{sem_trywait} -
@item @code{sem_post} -
@item @code{sem_getvalue} -
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the semaphore manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection sem_init -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_init(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sem_destroy -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_destroy(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sem_open -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_open(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sem_close -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_close(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sem_unlink -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_unlink(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sem_wait -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_wait(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sem_trywait -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_trywait(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sem_post -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_post(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection sem_getvalue -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int sem_getvalue(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
File diff suppressed because it is too large Load Diff
-259
View File
@@ -1,259 +0,0 @@
@c
@c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR).
@c All rights reserved.
@c
@c $Id$
@c
@chapter System Databases Manager
@section Introduction
The
system databases manager is ...
The directives provided by the system databases manager are:
@itemize @bullet
@item @code{getgrgid} -
@item @code{getgrgid_r} -
@item @code{getgrnam} -
@item @code{getgrnam_r} -
@item @code{getpwuid} -
@item @code{getpwuid_r} -
@item @code{getpwnam} -
@item @code{getpwnam_r} -
@end itemize
@section Background
There is currently no text in this section.
@section Operations
There is currently no text in this section.
@section Directives
This section details the system databases manager's directives.
A subsection is dedicated to each of this manager's directives
and describes the calling sequence, related constants, usage,
and status codes.
@page
@subsection getgrgid -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int getgrgid(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection getgrgid_r -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int getgrgid_r(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection getgrnam -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int getgrnam(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection getgrnam_r -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int getgrnam_r(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection getpwuid -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int getpwuid(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection getpwuid_r -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int getpwuid_r(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection getpwnam -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int getpwnam(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
@page
@subsection getpwnam_r -
@subheading CALLING SEQUENCE:
@ifset is-C
@example
int getpwnam_r(
);
@end example
@end ifset
@ifset is-Ada
@end ifset
@subheading STATUS CODES:
@table @b
@item E
The
@end table
@subheading DESCRIPTION:
@subheading NOTES:
File diff suppressed because it is too large Load Diff