README: Trivial typo fix.
[osl.git] / README
1 libosl, the object storage layer, is a library for storing small to
2 medium-sized data in relational tables. It is easy to use, lightweight,
3 fast and portable. libosl is suitable for applications that need
4 only a small fraction of the features a full database management
5 system provides.
6
7 Libosl is simple:
8
9         - For libosl, all data stored in the osl tables are blobs,
10         libosl will never try to interpret the table contents.
11
12         - There is no fancy query language but only a relatively
13         simple C-API.
14
15         - There's no support for network-access and libosl does not
16         use any table locking.
17
18 Libosl is fast:
19
20         - It uses sha1 hashes for content-based addressing.
21
22          - An augmented version of the rbtree implementation of the
23          linux kernel is used for lookups.
24
25 Libosl is portable:
26
27         - It is known to compile and run on Linux, MacOS, FreeBSD,
28         NetBSD and Solaris.
29
30         - Content and metadata is stored in an endian-agnostic way.
31
32 Libosl is open source:
33
34         - Licensed under the GPL, version 2.
35
36 Apart from the library itself, the package also contains simple
37 examples and an fsck program, oslfsck, which can be used to recover
38 from corrupted tables due to system crashes or bugs in the application
39 or the library.