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

Advertising
background image

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

Advertising