Hvordan bestemmer Windows hvor mye tid det tar å utføre en handling med en fil?
De "gjenværende" estimatene på Windows er nok til å drive noen galte til tider, men har du noen gang lurt på hvordan Windows bestemmer disse tider? Dagens SuperUser Q & A-post har noen svar på et nysgjerrig, men likevel frustrert, lesers spørsmål.
Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.
Windows 8.1 filoverføring vindu skjermbilde høflighet av jeg virkelig famecore.
Spørsmålet
SuperUser leser 'jeg virkelig famecore' vil vite hvordan Windows bestemmer hvor lang tid det tar å utføre en operasjon med en fil:
Jeg ville vite om det finnes en ligning som Windows bruker for å bestemme hvor lang tid det tar å utføre en handling med en fil som: å slette, kopiere, slette eller installere.
For eksempel, når jeg sletter en fil og Windows sier Resterende tid: 18 sekunder, hvordan beregnes dette tallet, og hva bruker det til å beregne det?
Bruker Windows en spesiell ligning for å bestemme tiden som gjenstår for å utføre en operasjon, eller gir det bare et "beste gjetning" estimat?
Svaret
SuperUser-bidragsytere Valmiky Arquissandas og Richard har svaret for oss. Først oppe, Valmiky Arquissandas:
Har du lagt merke til at det vanligvis ikke gir deg noen estimater i løpet av de første sekundene?
Det er fordi de første par sekunder gjør det bare operasjonen den må gjøre. Så, etter kort tid, vet den hvor mye det allerede har kopiert / slettet / etc, og hvor lenge tok det. Det gir deg den gjennomsnittshastighet av operasjonen.
Del deretter de resterende bytene med hastigheten, og du har tid det tar å fullføre operasjonen.
Dette er grunnskole matematikk. Hvis du vil reise 360 km, og på slutten av første minuttet har du reist 1 km, hvor lenge vil det ta deg for å nå destinasjonen?
Vel, hastigheten er 1 km / minutt, så det er 60 km / time. 360 km delt med 60 km / time gir deg en estimert tid på 6 timer (eller 360 km / 1 km / minutt = 360 minutter = 6 timer). Siden du allerede har reist i ett minutt, er den estimerte tiden igjen 5 timer og 59 minutter.
Bytte reise med kopi, km med byte, og som svarer på spørsmålet ditt.
Ulike systemer har forskjellige måter å estimere tid på. Du kan ta siste øyeblikk, og estimatene kan variere vilt. Eller du kan ta full tid, og hvis hastigheten faktisk endres permanent, kan dine estimater være langt fjernet fra virkeligheten. Det jeg beskrev, er den enkleste metoden.
Etterfulgt av svaret fra Richard:
Hvis du er interessert, forteller dette spørsmålet hvordan Windows og OSX formater tiden som er igjen i fremdriftslinjen når den har en ide hvor lenge den er igjen.
Når dialogbokser for korttidsuttrykk pågår, bør de avrundes opp eller ned?
Raymond Chen, en utvikler på Windows-teamet i Microsoft, bekrefter denne algoritmen (se Valmikys svar ovenfor) i et innlegg på sin blogg. Han forklarer også hvorfor det kan gå galt.
Hvorfor gir kopieringsdialogen slike horrible estimater?
Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.