[prev] 58 [next]

Exercise 6: Buffer Pool Functions

Assuming a Frame data structure like

typedef struct FrameData *FrameData;
struct FrameData {
   PageId  tag;     // contents
   Page    page;    // buffer containing data
   int     dirty;   // modified flag
   int     pin;     // pin count
   time_t  mra;     // most recent access
   FrameData *next; // free list
};

Give implementations for request_page(), release_page(), replace_frame()