1. A method for facilitating reliable execution in a computer system by periodically checkpointing write operations to a main memory of the computer system, comprising: receiving a write operation directed to the main memory at a memory controller, the write operation including data to be written to the main memory and a write address specifying a location in the main memory into which the data is to be written; looking up the write address in a checkpoint store coupled to the memory controller; if the write address is not associated with any entry in the checkpoint store, creating an entry for the write address in the checkpoint store; writing to the data to be written to the entry in the checkpoint store; and periodically performing a checkpointing operation, wherein the checkpointing operation transfers the data to be written from the checkpoint store to the write address in the main memory.