Before starting developing a new kernel (see X15), I wrote a few of the modules in userspace in order to make sure they were bug-free and efficient. They also turned out to be pretty useful at work, so they got MIT-licensed. This library is not meant to be linked against. Instead, it acts as a repository of loosely related modules that can be copied and reused individually.
Source code : https://git.sceen.net/rbraun/librbraun.git/
List of modules :
- avltree : AVL tree
- bitmap : arbitrary-length bit array
- cbuf : fast byte circular buffer
- fmt : sprintf/sscanf implementations
- hash : integer and string finalizers
- hlist : single-pointer head doubly-linked list
- list : doubly-linked list
- macros : generic macros
- mbuf : message circular buffer
- plist : priority-sorted linked list
- rbtree : red-black tree
- rdxtree : radix tree
- shell : minimalist shell for embedded systems
- slist : singly-linked list