Chapter 31. posix standard support, Process primitives posix section 3, Functions implemented – Comtrol eCos User Manual
Page 455: Posix standard support, Process primitives [posix section 3, Functions omitted

Chapter 31. POSIX Standard Support
eCos contains support for the POSIX Specification (ISO/IEC 9945-1)[POSIX].
POSIX support is divided between the POSIX and the FILEIO packages. The POSIX package provides support for
threads, signals, synchronization, timers and message queues. The FILEIO package provides support for file and
device I/O. The two packages may be used together or separately, depending on configuration.
This document takes a functional approach to the POSIX library. Support for a function implies that the data types
and definitions necessary to support that function, and the objects it manipulates, are also defined. Any exceptions
to this are noted, and unless otherwise noted, implemented functions behave as specified in the POSIX standard.
This document only covers the differences between the eCos implementation and the standard; it does not provide
complete documentation. For full information, see the POSIX standard [POSIX]. Online, the Open Group Single
Unix Specification [SUS2] provides complete documentation of a superset of POSIX. If you have access to a
Unix system with POSIX compatibility, then the manual pages for this will be of use. There are also a number of
books available. [Lewine] covers the process, signal, file and I/O functions, while [Lewis1], [Lewis2], [Nichols]
and [Norton] cover Pthreads and related topics (see Bibliography, xref). However, many of these books are oriented
toward using POSIX in non-embedded systems, so care should be taken in applying them to programming under
eCos.
The remainder of this chapter broadly follows the structure of the POSIX Specification. References to the appro-
priate section of the Standard are included.
Omitted functions marked with “// TBA” are potential candidates for later implementation.
Process Primitives [POSIX Section 3]
Functions Implemented
int kill(pid_t pid, int sig);
int pthread_kill(pthread_t thread, int sig);
int sigaction(int sig, const struct sigaction
∗
act,
struct sigaction
∗
oact);
int sigqueue(pid_t pid, int sig, const union sigval value);
int sigprocmask(int how, const sigset_t
∗
set,
sigset_t
∗
oset);
int pthread_sigmask(int how, const sigset_t
∗
set,
sigset_t
∗
oset);
int sigpending(sigset_t
∗
set);
int sigsuspend(const sigset_t
∗
set);
int sigwait(const sigset_t
∗
set, int
∗
sig);
int sigwaitinfo(const sigset_t
∗
set, siginfo_t
∗
info);
int sigtimedwait(const sigset_t
∗
set, siginfo_t
∗
info,
const struct timespec
∗
timeout);
int sigemptyset(sigset_t
∗
set);
int sigfillset(sigset_t
∗
set);
int sigaddset(sigset_t
∗
set, int signo);
int sigdelset(sigset_t
∗
set, int signo);
int sigismember(const sigset_t
∗
set, int signo);
unsigned int alarm( unsigned int seconds );
int pause( void );
351