2Sep

Hvordan bestemmer Windows hvor mye tid det tar å utføre en handling med en fil?

Slik gjør-vinduer bestemme-den-mengde-av-tid-det-tar-å-utføre-en-handling-med-en-fil-00

De 'gjenstående' 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-innlegg 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 ønsket å vite om det finnes en ligning som Windows bruker for å bestemme hvor lenge det ertar for å utføre en handling med en fil som: slette, kopiere, slette eller installere.

hvordan-gjør-vinduer bestemme-the-mengde-of-time-det-tar-til-utfører-en-action-med-en-file-01

For eksempel, når jeg sletter en fil og Windows sier Tid gjenstår: 18 sekunder , hvordan beregner dette dette nummeret, 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 opp, 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 det hvor mye det allerede har kopiert /deleted/ etc , og ​​ hvor lenge det tok .Det gir deg gjennomsnittlig hastighet av operasjonen.

Del deretter de resterende bytene med hastigheten, og du har tid det tar å fullføre operasjonen.

Dette er grunnskolematematikk. 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å målet ditt?

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.

Stedreiser 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 korttidsuttrykk pågår, skal de avrundes opp eller ned?

Raymond Chen, en utvikler på Windows-teamet i Microsoft, bekrefter denne algoritmen( se Valmikys svar ovenfor ) i en innlegg på bloggen sin. Han forklarer også hvorfor det kan gå galt.

Hvorfor gir kopieringsdialogen slike forferdelige 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.