1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
GCache is a library to provide transparent on-disk memory buffer cache.
The purpose is to allow (almost) arbitrarily big action cache
without RAM consumption.
It provides the usual malloc(), realloc(), free() calls plus:
void seqno_assign(void*, int64_t) - assign GCS seqno to a buffer pointed to.
int64_t seqno_lock_min() - get the lowest seqno present in cache,
return its value.
void* seqno_get_buf(int64_t) - get a pointer to buffer with a given
seqno, unlock previously locked seqno
and lock the current one.
void seqno_release() - release currently locked seqno.
Details will be determined during development.
It exploits the fact that action buffers are allocated and discarded in order
close to their TO.
|