Operating systems

SlicedBread is a library that makes it simpler to program multithreaded applications in Java. It does so by doing away with "classic" multithreaded staples - that is, shared state using thread-safe objects - in favor of a set of single-threaded processes that send and receive immutable messages. In a sense it is inspired by Erlang's messaging system. In another, the over 400 rich pages of "Java concurrency in practice" show how hard it is to write and debug a good-mannered multithreaded application in Java.

OnPosix is a tiny library to abstract POSIX mechanisms to C++ developers. Most features offered by this library can be found either inside the Boost library or in a library compliant with the C++11 standard. Unfortunately, however, for some embedded Linux devices, these libraries cannot represent viable solutions, due to the lack of memory space (for the Boost libraries) and the lack of a new C++ compiler (e.g., on Xilinx MicroBlaze). On these platforms, the OnPosix library represents a good and cheap solution to have object-oriented POSIX mechanisms. The library offers support for threads, mutual exclusion, sockets, logging, timing, etc.