Buffer Manager

  • 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.
  • If the block is not available in the buffer, the buffer manager allocates the block in the buffer.
  • If free space is not available, it throws out some existing blocks from the buffer to allocate the required space for the new block.
  • The blocks which are thrown are written back to the disk only if they are recently modified when writing on the disk.
  • If the user requests such thrown-out blocks, the buffer manager reads the requested block from the disk to the buffer and then passes the address of the requested block to the user in the main memory.
  • However, the internal actions of the buffer manager are not visible to the programs that may create any problem in disk-block requests. The buffer manager is just like a virtual machine.
Posted on by