Basic module library for C

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 :

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