Tile data for drawing and desktop buffers in a desktop compositor system
is managed using "copy-on-write" semantics, in which tile data stored in
a memory location is not transferred to another location until the tile
data for one of the buffers is modified. For each tile in drawing buffers
and desktop buffers, an association is maintained with a location in a
tile memory, and the number of buffer tiles associated with each location
is tracked. To copy a tile from one buffer to another, the tile
association for the tile in the destination buffer is modified. New data
for a tile of a buffer is written to the tile memory location associated
with the buffer after ensuring that the tile memory location is not
associated with any other tiles of any of the buffers. As a result,
memory bandwidth can be considerably reduced.