rispondere con una semplice moltiplicazione incrociata è terribilmente condiscendente, penso, sono sicuro che lo sapesse già, è come indoviniamo costantemente le cose anche nella nostra testa.
Il problema con le barre di avanzamento del funzionamento dei file è che è corretto solo per dati uniformi, quindi se copi 100 file che hanno tutte le stesse dimensioni e l'unità non fa nient'altro, i progressi stimati saranno puntuali, ma cosa succede se il primo 99 file erano piccoli file txt e l'ultimo è un file video di grandi dimensioni? Il progresso sarà MODO spento.
Questo problema aumenta ulteriormente quando non si gestiscono i file in una cartella, ma più sottocartelle. Supponi di avere 5 sottocartelle e desideri eliminarle (le dimensioni non contano molto in questo caso), le prime 4 cartelle contengono solo meno di 10 file, quindi quando arriva alla quinta cartella pensa che si tratti di 80% fatto e boom 5a cartella contiene 5000 file e i tuoi progressi tornano all'1%
WinXP ha cercato di aggirare il problema contando in anticipo il numero di file, il che significa che quando la cartella non era indicizzata in Windows, a seconda del numero di file, XP non ha avviato l'operazione per i primi 20 secondi (tempo impiegato conta) che ha reso tutti furiosi.
Quindi, anche se non ho una conoscenza specifica di come funziona Windows (ma cos'altro c'è oltre al conteggio di file e byte) spero di poter illustrare perché è difettoso e perché non sarà mai perfetto.
Il meglio che potresti fare sarebbe di non fare affidamento esclusivamente sul racconto dei filetti O sul conto alla rovescia, ma di ottenere una media dei due.
Oppure, se volevi diventare pazzo di più, il sistema operativo poteva avviare un database di quanto tempo impiegavano queste operazioni in passato sulla tua macchina e considerarlo nell'equazione.
Pensiero finale: se qualcuno pensasse a un filesystem che farebbe sapere al sistema operativo quale dimensione ha ogni cartella, senza calcolarlo prima, otterresti almeno una stima dei progressi corretta quando elimini intere cartelle e non solo parti di esso.