If you don’t read an entire file into memory before writing it, you’ll waste time by stepping the head back/forth between source and destination. This is extremely expensive compared to the write speed.
@Frans Bouma: I have Windows XP SP2. If I connect my camera via USB, and copy files to the disk, it loads the whole file in memory. One of the worst bugs I have seen… No problem with 2MB pictures, but took many minutes of swap thrashing when I copied a video file larger than my physical memory.
The idea is loading bigger chunks, not the whole file .