Gravar em um disco é uma operação mais cara do que ler em um disco. Por exemplo - gravar um arquivo de registros de 1 GB em comparação com a leitura do arquivo inteiro.
Responder1
No nível da unidade, uma operação de leitura do setor levaria aproximadamente o mesmo tempo (ou um pouco mais) que uma operação de gravação do setor. Para um setor de leitura, o comando deve chegar pela interface da unidade (por exemplo, SATA), o comando decodificado, busca emitida, digitalizar marcas de endereço e registrar IDs até que o setor seja encontrado, ler os dados do setor em um buffer, validar o setor usando ECC ( código de correção de erros) e, finalmente, enviar os dados do setor. (Observe que existe um equívoco generalizado de que os dados do setor podem ser transferidos diretamente do cabeçote de leitura para a interface. Absolutamente falso: os dados do setor são sempre totalmente armazenados em buffer e são sempre transmitidos em velocidade total da interface somente após todo o setor ter sido lido e validado.) Se a leitura antecipada for executada e armazenada em cache, uma leitura sequencial subsequente não terá atrasos de busca e rotação. Para um setor de gravação, o comando e os dados do setor devem chegar pela interface da unidade, o comando decodificado, a busca emitida, a varredura das marcas de endereço e os IDs de registro até que o setor seja encontrado, a gravação do setor com ECC e o host seja notificado da conclusão.
No nível do sistema operacional ou do sistema de arquivos, as gravações são mais complexas quando um novo arquivo está sendo criado. Ler ou reescrever um arquivo de disco existente requer apenas a pesquisa de onde os setores de dados (ou clusters) estão localizados. Escrever um novo arquivo ou anexar a um arquivo exigirá primeiro a alocação de setores/clusters da lista livre, a atribuição desses setores/clusters ao arquivo (atualização de entrada de diretório?) e, em seguida, a gravação dos dados. Observe que as tabelas de alocação de disco normalmente serão atualizadas (ou seja, gravadas no disco) o mais rápido possível, talvez até antes dos dados do arquivo, para manter a integridade do sistema de arquivos. Se você já notou/ouviu muitas buscas de disco ao criar um arquivo, você pode assumir que os cabeçotes estavam se movendo entre a tabela de alocação e o novo arquivo.