The buffer manager manages the functions for reading data or index pages from the database disk files into the buffer cache and writing modified pages back to disk. A page remains in the buffer cache until the buffer manager needs the buffer area to read in more data. Data is written back to disk only if it is modified. Data in the buffer cache can be modified multiple times before being written back to disk.
The subsystem responsible for the allocation of buffer space is called the buffer manager. The buffer manager handles all requests for blocks of the database. If the block is already in main memory, the address in main memory is given to the requester.
A Buffer Manager is responsible for allocating space to the buffer in order to store data into the buffer. If a user request a particular block and the block is available in the buffer, the buffer manager provides the block address in the main memory.