The POSIX functions are exported by the library (vicare
posix)
. The API attempts to create a one–to–one Scheme functions
mapping towards POSIX functions, keeping the same semantics as much
as possible; the platform’s own documentation is relevant at the Scheme
level. posix not for a list of POSIX functions not interfaced
in this library, and reasons for not doing it.
To avoid name collisions with bindings exported by (vicare)
,
when importing (vicare posix)
it is mandatory to assign it a
prefix as follows:
(import (vicare) (prefix (vicare posix) px.))
All the constants needed to use the interface are available as
identifier syntaxes exported by the (vicare platform constants)
library; if a constant value is not exported file a feature request for
the project. If a constant is not defined on a platform: its value is
set to #f
.
The library (vicare platform features)
exports one identifier
syntax for each HAVE_
symbol defined by Vicare
configure
script, expanding to #t
or #f
.
The availability of the POSIX API can be tested at run–time with
the function vicare-built-with-posix-enabled
from
(vicare)
((vicare-scheme)vicare-built-with-posix-enabled), and at expand–time with the clause
posix-enabled
of cond-expand
from SRFI-0 (see posix-enabled).
• posix conventions: | Conventions about the POSIX API. | |
• posix conditions: | Condition object types. | |
• posix cond-expand: | Feature-based expansion. | |
• posix env: | Operating system environment variables. | |
• posix pid: | Process identifier functions. | |
• posix process: | Spawning processes and the like. | |
• posix status: | Process termination status. | |
• posix signal: | Delivering signals to processes. | |
• posix stat: | File system inspection. | |
• posix file: | Interfacing with the file system. | |
• posix link: | Hard and symbolic links. | |
• posix dir: | File system directories. | |
• posix fd: | File descriptors. | |
• posix mmap: | Memory-mapped input/output. | |
• posix socket: | Network sockets. | |
• posix users: | Users and groups. | |
• posix job: | Job control. | |
• posix time: | Time related functions. | |
• posix timers: | POSIX per–process timers. | |
• posix config: | System configuration. | |
• posix resources: | Resources usage. | |
• posix mq: | Message queues. | |
• posix shm: | Shared memory. | |
• posix sem: | Semaphores. | |
• posix misc: | Miscellaneous functions. | |
• posix args: | Arguments validation clauses. | |
• posix not: | POSIX functions not interfaced. | |
External libraries | ||
---|---|---|
• posix sel: | Simple event loop. | |
• posix pid-files: | Creating PID files. | |
• posix lock-pid-files: | Creating lock PID files. | |
• posix log-files: | Logging facilities. | |
• posix daemonisations: | Turn the process into a daemon. | |
• posix tcp-server-sockets: | TCP server sockets. | |
• posix sendmail: | Sending email with sendmail .
| |
• posix mailx: | Sending email with mailx .
| |
• posix curl: | Downloading files with curl .
| |
• posix wget: | Downloading files with wget .
| |
• posix find: | Scanning the file system with find .
|