Oszacowanie czasu pozostające w systemie Windows wystarcza, by czasami doprowadzić do szaleństwa, ale czy kiedykolwiek zastanawiałeś się, jak system Windows określa te czasy? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedzi na ciekawe, ale sfrustrowane pytanie czytelnika.
Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, społecznościowego forum z pytaniami i odpowiedziami.
Zrzut ekranu okna transferu plików Windows 8.1 dzięki uprzejmości im really famecore.
Czytnik SuperUser "im really famecore" chce wiedzieć, w jaki sposób system Windows określa czas potrzebny na wykonanie operacji z plikiem:
Chciałem się dowiedzieć, czy istnieje równanie, którego system Windows używa do określenia czasu potrzebnego na wykonanie czynności z plikiem, takim jak: usuwanie, kopiowanie, usuwanie lub instalowanie.
Na przykład, gdy usuwam plik, a Windows mówi Pozostały czas: 18 sekund, w jaki sposób oblicza się tę liczbę i co wykorzystuje do jej obliczenia?
Czy system Windows używa specjalnego równania, aby określić czas pozostały do wykonania operacji, czy też zapewnia jedynie oszacowanie "najlepszego odgadnięcia"?
Współautorzy SuperUser Valmiky Arquissandas i Richard mają dla nas odpowiedź. Najpierw Valmiky Arquissandas:
Czy zauważyłeś, że zazwyczaj nie daje żadnych szacunków w ciągu pierwszych kilku sekund?
To dlatego, że przez pierwsze kilka sekund po prostu robi operację, którą musi wykonać. Potem, po krótkim czasie, wie ile już skopiowało / usunęło / etc, i jak długo to trwało. To daje ci Średnia prędkość operacji.
Następnie podziel pozostałe bajty o prędkość, a ty masz czas, aby wykonać operację.
To jest matematyka w szkole podstawowej. Jeśli chcesz podróżować 360 km, a pod koniec pierwszej minuty przejechałeś 1 km, ile czasu zajmie Ci dotarcie do celu?
Cóż, prędkość wynosi 1 km / minutę, czyli 60 km / h. 360 km podzielone przez 60 km / godzinę daje szacowany czas 6 godzin (lub 360 km / 1 km / minutę = 360 minut = 6 godzin). Ponieważ podróżowałeś już przez minutę, pozostały szacunkowy czas to 5 godzin i 59 minut.
Podróż zastępcza z kopią, km z bajtami, która odpowiada na twoje pytanie.
Różne systemy mają różne sposoby szacowania czasu. Możesz wziąć ostatnią minutę, a szacunki mogą się znacznie różnić. Lub możesz wziąć cały czas, a jeśli prędkość rzeczywiście zmienia się na stałe, twoje prognozy mogą być dalekie od rzeczywistości. To, co opisałem, jest najprostszą metodą.
Poniżej odpowiedź Richarda:
Jeśli jesteś zainteresowany, to pytanie wyjaśnia, w jaki sposób system Windows i OSX formatuje czas pozostały na pasku postępu, gdy tylko ma pojęcie, ile czasu pozostało.
Czy podczas skracania wyrażeń czasowych w okienkach postępu należy je zaokrąglać w górę lub w dół?
Raymond Chen, programista zespołu Windows w firmie Microsoft, potwierdza ten algorytm (zobacz odpowiedź Valmiky powyżej) w poście na swoim blogu. Wyjaśnia również, dlaczego może być nie tak.
Dlaczego okno dialogowe kopiowania podaje tak straszne dane szacunkowe?
Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.