¿Por qué funciona tan mal la barra de progreso de Windows?

Escrito por Manuel Santos

Muchas veces cuando estamos copiando un archivo a nuestro disco duro la barra de progreso no avanza como debería y al llegar a cierto punto se queda atascada hasta que de repente llega al final. Cuando ocurre esto podemos pensar que el ordenador no va bien o se ha producido algún problema; sin embargo, la realidad es que el único problema que hay es que la parte del software que mide cuánto tardará el archivo en transmitirse no está bien implementado. ¿Por qué esto es así?

Llevamos más de 20 años con este problema en las barras de progreso

Este problema se remonta a la salida de Windows 95, hace 22 años, y no parece que haya mejorado mucho en este tiempo. Microsoft ha añadido Cortana que lo aprende todo de nosotros y cada vez interactúa mejor, pero no ha sido capaz de calcular correctamente el tiempo que tardará nuestro archivo en transferirse en tiempo real.

La barra de progreso cuenta con una información limitada para hacer sus estimaciones: cuántos elementos se están copiando y cuanto ocupan estos archivos. Teniendo en cuenta que nuestro sistema operativo sabe cuán rápido es nuestro hardware, no parece descabellado pensar que tiene la información necesaria para hacer un cálculo acertado.

El principal problema al que se enfrenta esa función es la variación constante de las salidas de nuestro sistema operativo. Por ejemplo, cuando estamos transfiriendo un archivo a nuestro disco duro y diferentes programas empiezan a actuar también sobre éste (como por ejemplo una actualización de Steam, o un proceso interno de comprobación de Windows), la velocidad de la transferencia se reduce y la barra de progreso no tiene forma de anticiparse a ello.

Cuando no tenemos diferentes programas actuando de forma paralela en nuestra unidad de almacenamiento, puede que sí tengamos nuestro disco duro muy fragmentado -esto no afecta a los SSD-, y el tiempo de transferencia también puede variar si debe repartir un mismo archivo en diferentes zonas del disco. Este tipo de situaciones no pueden ser predichas por la barra de progreso y puede que se paralice durante un tiempo su avance.

Sí se puede hacer una barra de progreso que haga una lectura mucho más precisa del tiempo que tarda el archivo en transferirse, pero los desarrolladores deciden invertir su tiempo en otras funciones que los usuarios vamos a disfrutar más. Ya que el tener en cuenta todas las variables que afectan a la transferencia del archivo requiere mucho trabajo e introducir algoritmos complejos, los desarrolladores perderían mucho tiempo y eso no es rentable.

Continúa leyendo
  • El problema no es por la barra de progreso en sí es por el sistema de archivos y como funciona en Windows. De hecho tardas menos en copiar 10 archivos de 10 GB que 1.000 archivos de 100 MB o peor 100.000 archivos de 1 MB

    Se nota mucho cuando se copia contenido mixto, es decir archivos grandes y archivos pequeños. Imaginemos que vamos a copiar una carpeta con archivos de 2 GB (por ejemplo películas HD) y miles de archivos de fotos. Incluso aunque el total de los archivos grandes supere con creces al de los archivos pequeños. Veremos en la barra de progreso cosas como “Tiempo estimado: 5 minutos” cuando está copiando los archivos grandes, pero en el momento que empiece a copiar los archivos pequeños (recordemos que el total del tamaño de los archivos pequeños es muy inferior al total de los archivos grandes) pondrá algo como “Tiempo estimado: 35 minutos” o peor Tiempo estimado “1 hora y 25 minutos”

    De hecho, como resumen, se puede decir que a mayor cantidad de archivos de menor tamaño, el tiempo a copiar dichos archivos es muy superior a copiar la misma cantidad total (suma de tamaño de todos los archivos a copiar) en archivos grandes.

    Salu2

  • Leonardo Alvarado

    Decir que no a cambiado nada en 22 años es muestra de que se desconoce la historia de Windows, no olviden la barra de Windows XP, en muchos casos estimaba siglos para hacer una copia…