One of the authors here. A few answers quickly. It does write to disk: you can either dump memory or write all changes to log (turn it on/off yourself). Sure it has a global read/write lock, with several locking strategies to select from (task-fair atomic spinlock queue or a reader-preference or a writer-preference spinlock). It is definitely meant to be a simple library. We strived to document it carefully to make u…
1) How much space does the compiled code require? Can conditional compilation be used to omit unused features?
2) What is the overhead for the various data structures?
I'm thinking that it might be interesting to use this on very limited environments (PIC microcontrollers for example) where every byte matters.