2022-04-11 Database BufferPool Transfering data between memory and disk Buffer Pool Manager 12345678910111213141516171819202122typedef char byte;#define 4*1024 PageSize#define 10 FrameNumber//In memory//BufferPoolbyte BufferPool [FrameNumber][PageSize];//PageTabletypedef struct PageTableEntry{ byte* ptr ; bool dirty ; bool pin ; int counter ;}byte* PageTable [FrameNumber];PageTable[0].ptr = BufferPool[3]; // frame0 -> page3PageTable[0].dirty = false; // Not accessed yetPageTable[0].pin = true ; // Do not swap the page outPageTable[0].counter = 0;... Allocate strategy Multiple Buffer Pool (each one can have different policies) Pre-fetching Replacement policies Newer markovChain Older Sympy