Jak Windows určuje dobu potřebnou k provedení akce se souborem?
Odhady "zbývajícího času" na systému Windows jsou dostatečné k tomu, aby někdy šel někdo blázen, ale přemýšleli jste někdy o tom, jak Windows určuje tyto časy? Dnešní příspěvek SuperUser Q & A obsahuje několik odpovědí na zvědavou, ale frustrovanou čtenářskou otázku.
Dnešní zasedání Otázky a odpovědi nás přichází s laskavým svolením SuperUser - podřízené rozdělení Stack Exchange, které je založeno na komunitě prostřednictvím skupin webových stránek.
Okna 8.1 screenshot přenosu okna screenshot s laskavým svolením im opravdu famecore.
Otázka
Čtečka SuperUser 'im really famecore' chce vědět, jak Windows určuje dobu potřebnou k provedení operace se souborem:
Chtěla jsem vědět, zda existuje rovnice, kterou používá systém Windows k určení doby trvání akce se souborem, jako je: smazání, kopírování, mazání nebo instalace.
Například když odstraním soubor a Windows říká Zbývající čas: 18 sekund, jak vypočítává toto číslo a co jej používá k výpočtu?
Používá systém Windows speciální rovnici pro určení zbývajícího času pro provedení operace nebo pouze pro odhad "nejlepšího odhadu"?
Odpověď
Příznivci SuperUseru Valmiky Arquissandas a Richard mají pro nás odpověď. První, Valmiky Arquissandas:
Všimli jste si, že vám obvykle nedává žádné odhady během několika prvních vteřin?
Je to proto, že během prvních pár vteřin to jen dělá operaci, kterou musí udělat. Pak, po krátkém čase, to ví kolik již bylo zkopírováno / odstraněno / etc, a jak dlouho to trvalo. To vám dává průměrná rychlost operace.
Pak rozdělit zbývající bajty o rychlost a máte čas potřebný k dokončení operace.
Toto je základní matematická škola. Pokud chcete cestovat po 360 km a na konci první minuty jste cestovali 1 km, jak dlouho trvá, než dorazíte na cíl?
Rychlost je 1 km / min, takže je 60 km / hod. 360 km děleno rychlostí 60 km / h vám poskytne odhadovaný čas 6 hodin (nebo 360 km / 1 km / min = 360 minut = 6 hodin). Vzhledem k tomu, že jste již cestovali po dobu jedné minuty, odhadovaný čas je 5 hodin a 59 minut.
Náhradní cestování s kopií, km s bajty, a to odpovídá na vaši otázku.
Různé systémy mají různé způsoby odhadování času. Můžete si vzít poslední minutu a odhady se mohou lišit divoce. Nebo můžete mít plný úvazek a pokud se rychlost skutečně změní trvale, vaše odhady mohou být daleko od reality. Co jsem popsal, je nejjednodušší metoda.
Následuje odpověď od Richarda:
Máte-li zájem, tato otázka vám řekne, jak Windows a OSX formátují čas zbývající do lišty postupu, jakmile zjistí, jak dlouho zbývá.
Při zkrácení dialogových oken časových výrazů by měly být zaokrouhleny nahoru nebo dolů?
Raymond Chen, vývojář týmu Windows společnosti Microsoft, tento algoritmus potvrzuje (viz odpověď Valmikyho výše) v příspěvku na svém blogu. Vysvětluje také, proč to může být špatné.
Proč kopírovací dialog poskytuje takové hrozné odhady?
Musíte něco přidat k vysvětlení? Vyjměte v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.