Originally the background writer held responsibility for writing checkpoints, but it has now been moved into its own separate process and the background writer is now only responsible for writing dirty pages to disk. This provides advantages related to performance and power-reduction.