Committed transactions are not written from Redo Log files to datafiles.

It is written from database-blocks of the "database buffer" in the SGA to the datafiles by the DBWR background process.

This happens during timeout or whenever "dirty buffers" get filled in the "Dirty Buffer List."