Last updated July 07, 2009 20:34, by superoptimo
OSLash : OS Absraction Layer Wiki
OSLash is a cross-platform framework for developing powerful applications with high-performance requirements, by providing utilities for managing common aspects in computing applications like object management, serialization, and concurrency.
Features
- Cross platform Multi-threading API which synchronization tools like mutexes, conditional variables, barriers, count-down latches and intrinsic atomic operations.
- Circular buffers for multi-task synchronization, solving the problem of 1 Producer to 1 Consumer and 1Producer to Multiple Consumers.
- A powerful ThreadPool implementation optimized for the Parallel-For pattern for executing a set of concurrent tasks in parallel.
- A highly efficient implementation of common data structures, containers and algorithms like vectors, lists, hash-table sets. Lightweight, portable and also has a very competitive performance performance comparing to c++ STL library.
- Memory management for multi-threaded applications with a custom version of the Scalable Allocator as the one implemented in the Intel Threading Building Blocks library. Different implementation, same principle. More readable and maintainable in code.
- Management of Global variables with dynamic memory allocation.
- Text and string utilities with regular expressions.
- Serialization of objects with JSON syntax and XML support.
- Time classes and functions for profiling.
- Filesystem utilities.
- Classes for object management with reference counting and smart pointers.
- A robust Math and numerics library for consistent and deterministic calculations across different platforms. Manages number serialization, and also fixed point arithmetics support.





