A velocidade de copiar um arquivo de um PC para uma unidade flash USB começou em 30MB / se diminuiu para 5,8 MB / s, por quê?

5

Se eu copiar um arquivo de 8GB do PC para um USB Flash Drive, a velocidade começará em torno de 30 MB / s ... talvez 28 MB / s, e então, gradualmente, depois de um minuto, ele descerá para 15 MB / se, finalmente, estabelecer 5,8 MB / s.

Mas eu pensei que se for um disco rígido, então provavelmente há o cache de RAM e também o cache do disco rígido interno, e fará com que a cópia do arquivo do PC para o disco rígido apareça rapidamente no começo.

Mas, para uma unidade flash USB, não deve haver cache interno para a própria unidade flash USB. Existe um cache de RAM para ele? É por isso que a cópia inicial parece tão rápida?

    
por 太極者無極而生 29.01.2010 / 18:23

2 respostas

7

O Windows armazenará em buffer a escrita pelo máximo de tempo possível, portanto, o primeiro bloco gravará mais rápido que o restante. A tela está mostrando a média geral, então é inicialmente alta e cai lentamente em direção à velocidade real de gravação da unidade flash, que é presumivelmente um pouco abaixo de 5.8MB / s.

Mesmo que o padrão do Windows seja não guardar gravações de drives USB como este em cache por muito tempo (dados gravados são descarregados no disco por um curto período de tempo ou imediatamente quando o arquivo é fechado), ele ainda armazenará em buffer um pouco A escrita ativa ainda continua e a operação de cópia pode ter seu próprio buffer, de modo que ele continue lendo o mais rápido possível até que esteja cheio, de modo que a velocidade inicial pareça mais rápida do que a velocidade geral. É também por isso que a exibição de progresso da cópia às vezes fica em 100% por um segundo ou dois depois de uma longa operação de gravação - como a operação de cópia fecha o arquivo, a chamada para blocos de função "close" até que os últimos blocos de dados tenham sido escrito.

É possível dizer ao SO para realizar operações de gravação completamente sem buffer, mas muito pouco código faz isso (o Windows Explorer não funciona), já que está no caminho de um número de potenciais pequenas otimizações (no sistema operacional e no drive). controlador) que pode acelerar as operações de gravação.

    
por 29.01.2010 / 18:30
2

Eu acho que é simplesmente um cálculo de tempo mal implementado. A estimativa inicial leva em conta principalmente a velocidade de leitura do HDD; Em seguida, ele é ajustado ao longo do tempo conforme mais informações de tempo se tornam disponíveis.

Meu gerenciador de arquivos favorito tem um plug-in de cópia que só estima o tempo depois de ler e escrever algo, e é muito mais preciso em situações como essa (a origem e o destino têm velocidades muito diferentes).

    
por 29.01.2010 / 18:49