Skip to content

Latest commit

 

History

History
 
 

gcache

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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.