Because it just seems like it would be more effective for the system to transfer the written data to memory, and then when it's completely written to transfer things back to the disk.
Nos sistemas operacionais modernos, o acesso a arquivos é armazenado em buffer. Seu programa grava em uma parte da memória que é mantida pelo sistema operacional e, quando essa área fica cheia, ou quando você fecha o arquivo, o buffer é gravado no disco. Dessa forma, você pode escrever vários gigabytes de dados aleatórios em um arquivo, se quiser, mas não consome muita memória enquanto faz isso. Ao mesmo tempo, o subsistema de disco fica livre para fazer outras coisas enquanto seu programa está escrevendo alguns bytes de cada vez.
In any case, how does the disk recover data whether your program writes directly to disk, or whether the finished file is in the process of being copied over by the system to various locations on the disk?
Depende do sistema operacional e do sistema de arquivos específico. Muitas vezes, os dados são gravados em um novo arquivo no disco. Quando o programa fecha o arquivo, o buffer é liberado e o diretório é atualizado para apontar para o novo arquivo, em vez do antigo, que pode ser excluído posteriormente. Isso evita corrupção de dados se o sistema falhar durante a gravação - a alteração do diretório no último momento cria a ilusão de gravações "atômicas".
Você pode querer ler sobre os sistemas de arquivos registrados e sistemas de arquivos transacionais .
Outras estratégias também são possíveis. Livros inteiros estão disponíveis em sistemas de arquivos e tolerância a falhas.
Finalmente, às vezes, o sistema de arquivos não pode recuperar seu arquivo. Às vezes não pode se recuperar de jeito nenhum. As estratégias que mencionei acima são respostas aos tipos de problemas que você está perguntando e, até onde eu sei, elas são muito eficazes em manter o disco em um estado consistente. Os sistemas de arquivos mais antigos não eram tão bons, e se você perdesse energia apenas quando o disco estivesse sendo gravado, o arquivo ou o disco inteiro poderia ficar comprometido. Costumava haver um grande mercado para utilitários de reparo de disco, como o Norton Disk Doctor. Esse mercado parece ter diminuído com implementações de sistema operacional mais confiáveis, mas alguns desses produtos ainda estão disponíveis.