Skip to content
Alexy Pellegrini edited this page Jul 12, 2019 · 29 revisions

Not Enough Standards Wiki

Welcome on Not Enough Standards' Wiki!

Here, you will find the documentation of the library, and also some examples.

The Wiki is still a work in progress, and there are probably a lot of grammatical errors and typos.

The documentation is organized by file. Each file of the library is a complete set of features. The library is currently composed of the following files:

Header Features
shared_library.hpp Provide a simple interface for shared library loading. i.e. shared objects (.so) and dynamic-link libraries (.dll).
process.hpp Provide an interface for creating processes and modify or get information about the current process. Depends of pipe.hpp.
semaphore.hpp Provide an interface for semaphores and timed semaphores management. A semaphore is a synchronization primitive that use a resource counter. When trying to acquire a resource, the calling thread is blocked until a resource is available.
pipe.hpp (WIP) Provide standard streambufs and streams for pipe management. Support both anonymous and named pipes (for inter-process communication). A pipe is a data stream between a reader and a writer. For example, the standard output is a pipe where the reader is, in most cases, a display and the writer is the program.
shared_memory.hpp Provide an interface for shared memory creation and mapping. Shared memory is a segment of memory that can be shared among multiple processes, using a literal identifier.
named_mutex.hpp (WIP) Provide an interface for cross-process mutexes management. It is similar to std::mutex except that it can be shared between multiple processes using its name. It is useful to synchronize shared memory access.
named_semaphore.hpp (WIP) Provide an interface for named semaphore and timed named semaphore management. As named mutexes, a named semaphore is designed to be shared between multiple processes.
Clone this wiki locally