atomicized operations.
if write fails, operation fails.
this is to prevent data inconsistencies and write holes.