internal Cache(int l_, int size_)
{
l = l_;
size = size_;
head = new head_t[l];
for (int i = 0; i < l; i++)
head[i] = new head_t(this);
size /= 4;
size -= l*(16/4); // sizeof(head_t) == 16
lru_head = new head_t(this);
lru_head.next = lru_head.prev = lru_head;
}