Hvordan fastslår Windows, hvor meget tid det skal udføre en handling med en fil?
De 'resterende' estimater på Windows er nok til at køre nogen skøre til tider, men har du nogensinde spekuleret på, hvordan Windows bestemmer disse gange? Dagens SuperUser Q & A-indlæg har nogle svar på et nysgerrig, men alligevel frustreret, læsers spørgsmål.
Dagens Spørgsmål & Svar session kommer til os med venlig hilsen af SuperUser-en underafdeling af Stack Exchange, en community-driven gruppe af Q & A-websteder.
Windows 8.1 filoverførsel vindue screenshot høflighed af jeg virkelig famecore.
Spørgsmålet
SuperUser læser 'jeg virkelig famecore' ønsker at vide, hvordan Windows bestemmer hvor lang tid det tager at udføre en operation med en fil:
Jeg ønskede at vide, om der er en ligning, som Windows bruger til at bestemme, hvor lang tid det tager at udføre en handling med en fil som: at slette, kopiere, slette eller installere.
For eksempel, når jeg sletter en fil, og Windows siger Tid tilbage: 18 sekunder, hvordan beregner det dette tal, og hvad bruger det til at beregne det?
Bruger Windows en speciel ligning til at bestemme den resterende tid til at udføre en operation, eller giver det bare et "bedste gæt" skøn?
Svaret
SuperUser bidragsydere Valmiky Arquissandas og Richard har svaret for os. Først op, Valmiky Arquissandas:
Har du bemærket, at det normalt ikke giver dig nogen overslag i løbet af de første par sekunder?
Det skyldes, at det i løbet af de første par sekunder gør det bare den operation, den skal gøre. Så kender det efter kort tid hvor meget det allerede har kopieret / slettet / etc, og hvor lang tid tog det. Det giver dig den gennemsnitshastighed af operationen.
Derefter deles de resterende byte med hastigheden, og du har den tid, det tager at fuldføre operationen.
Dette er grundskole matematik. Hvis du vil rejse 360 km, og i slutningen af det første minut har du rejst 1 km, hvor lang tid tager det dig at nå din destination?
Nå er hastigheden 1 km / minut, så det er 60 km / time. 360 km divideret med 60 km / time giver dig en estimeret tid på 6 timer (eller 360 km / 1 km / minut = 360 minutter = 6 timer). Da du allerede har rejst i et minut, er den forventede tid tilbage 5 timer og 59 minutter.
Stedfortræder rejse med kopi, km med bytes, og der svarer dit spørgsmål.
Forskellige systemer har forskellige måder at estimere tid på. Du kan tage sidste øjeblik, og estimaterne kan variere vildt. Eller du kan tage fuld tid, og hvis hastigheden rent faktisk ændres permanent, kan dine estimater være langt fjernet fra virkeligheden. Det, jeg beskrev, er den enkleste metode.
Efterfulgt af svaret fra Richard:
Hvis du er interesseret, fortæller dette spørgsmål, hvordan Windows og OSX formaterer den tid, der er tilbage i fremdriftslinjen, når den har en ide om, hvor længe den er tilbage.
Når der trykkes på klokkeslætudtryk i dialogbokse, skal de afrundes op eller ned?
Raymond Chen, en udvikler på Windows-teamet i Microsoft, bekræfter denne algoritme (se Valmikys svar ovenfor) i en udstationering på sin blog. Han forklarer også hvorfor det kan være forkert.
Hvorfor giver kopi-dialogboksen sådanne forfærdelige estimater?
Har du noget at tilføje til forklaringen? Lyde af i kommentarerne. Vil du læse flere svar fra andre tech-savvy Stack Exchange brugere? Tjek den fulde diskussionstråd her.