If you update a row, the page is marked dirty.
If you commit the transaction, the txn log will contain information needed to re-do the modification.
But the page might not be written yet.
After a checkpoint, the page is guaranteed to be written.
It might be written by the background thread at a convenient time, or it might be written forcibly during the checkpoint.
Thanks a million for your reply firstly ,There are some questions exists however!
As the dirty page will be written to disk by some background thread at some time
and there is some backgroud thread responsible for writing the updated Page to [Double Write Buffer] according [Redo Log],
does that mean one update will bring twice write final data file on disk,
[LIST=1]
[*] updating disk file by [dirty page] in buffer pool updating disk file by [redo log]
[/LIST]
By the way,does the picture i present tell the right thing!