Comment Windows détermine-t-il le temps requis pour effectuer une action avec un fichier?
Les estimations de "temps restant" sous Windows suffisent à rendre fous parfois, mais vous êtes-vous déjà demandé comment Windows déterminait ces moments? Le billet de questions-réponses du SuperUser d'aujourd'hui apporte des réponses à une question de lecteur curieuse, mais frustrée.
La séance de questions et réponses d'aujourd'hui nous est offerte par SuperUser, une sous-division de Stack Exchange, un groupe de sites Web de questions-réponses dirigé par la communauté..
Capture d'écran de la fenêtre de transfert de fichiers Windows 8.1 avec la permission de im really famecore.
La question
Le lecteur SuperUser 'im really famecore' veut savoir comment Windows détermine le temps nécessaire à l'exécution d'une opération avec un fichier:
Je voulais savoir s'il existait une équation utilisée par Windows pour déterminer le temps nécessaire pour exécuter une action sur un fichier, tel que: suppression, copie, effacement ou installation..
Par exemple, lorsque je supprime un fichier et que Windows dit Temps restant: 18 secondes, comment calcule-t-il ce nombre et qu'utilise-t-il pour le calculer?
Windows utilise-t-il une équation spéciale pour déterminer le temps restant avant d'effectuer une opération, ou fournit-il simplement une estimation "de meilleure qualité"??
La réponse
Les contributeurs de SuperUser, Valmiky Arquissandas et Richard, ont la solution pour nous. Tout d'abord, Valmiky Arquissandas:
Avez-vous remarqué qu’il ne vous donne généralement aucune estimation au cours des premières secondes??
En effet, pendant les premières secondes, il ne fait que l’opération qu’il doit faire. Puis, après un court laps de temps, il sait combien il a déjà copié / supprimé / etc, et combien de temps cela a pris. Ça vous donne la vitesse moyenne de l'opération.
Ensuite, divisez les octets restants par la vitesse et vous aurez le temps nécessaire pour terminer l'opération..
C'est maths d'école primaire. Si vous souhaitez parcourir 360 km et que vous avez parcouru 1 km à la fin de la première minute, combien de temps faudra-t-il pour atteindre votre destination?
Eh bien, la vitesse est de 1 km / minute, donc 60 km / heure. 360 km divisés par 60 km / heure vous donnent une durée estimée de 6 heures (ou 360 km / 1 km / minute = 360 minutes = 6 heures). Puisque vous avez déjà voyagé pendant une minute, le temps restant est estimé à 5 heures et 59 minutes..
Substitute travel avec copy, km avec octets, et cela répond à votre question.
Différents systèmes ont différentes façons d'estimer le temps. Vous pouvez prendre la dernière minute et les estimations peuvent varier énormément. Ou bien, vous pouvez utiliser tout le temps et si la vitesse change réellement, vos estimations risquent d'être très éloignées de la réalité. Ce que j'ai décrit est la méthode la plus simple.
Suivi de la réponse de Richard:
Si vous êtes intéressé, cette question vous explique comment Windows et OSX formate le temps restant dans la barre de progression une fois qu'il a une idée du temps qu'il lui reste..
Lors du raccourcissement des expressions de temps dans les dialogues en cours, doivent-elles être arrondies?
Raymond Chen, développeur de l'équipe Windows de Microsoft, confirme cet algorithme (voir la réponse de Valmiky ci-dessus) dans un post sur son blog. Il explique également pourquoi cela peut être faux.
Pourquoi le dialogue de copie donne-t-il des estimations si horribles??
Avez-vous quelque chose à ajouter à l'explication? Sound off dans les commentaires. Voulez-vous lire plus de réponses d'autres utilisateurs de Stack Exchange doués en technologie? Découvrez le fil de discussion complet ici.