In the diagram above, all the buffers except one are full
1) Oracle reads a block from disk, Oracle knows to place it in the empty buffer, causing it to become full.
2) If Oracle reads another block, it will need to overwrite one of the unchanged buffers.
3) It will check one buffer
4) It will check another buffer
5) It will check the next buffer until it finds an unmodified buffer that it can overwrite.
6) If many buffers are modified, Oracle may not find an unmodified one right away.
7) The database writer will be called upon to hurry up and write some modified blocks back to disk.
8) This increases the number of unmodified blocks
9) Oracle will use one to hold the block that was just read