3 votos

¿Las aplicaciones en primer plano tienen asignados más recursos del sistema que otras?

A veces parece que las copias de seguridad de Time Machine, las transferencias de archivos y las actualizaciones de software se aceleran después de enfocar su Windows.

¿Es esto sólo psicológico o una característica real?

1voto

Jose Chavez Puntos 645

Lo más probable es que no sea psicológico, ya que hay muchas cosas que afectan a la asignación de recursos del sistema, y ser una ventana en primer plano es una de ellas.

En general, todos los procesos (e incluso los hilos) que se ejecutan en un sistema tienen una prioridad, que se utiliza para determinar la cantidad de recursos de la CPU que se ponen a su disposición. Si abres un programa GUI normal, comenzará con una prioridad de 46. Si es la ventana en primer plano, la prioridad se incrementa en 1 hasta 47.

El rango real de prioridades en un sistema vivo es mucho mayor, ya que hay otros factores que influyen en la prioridad del proceso. Van desde 0 (prioridad más baja) hasta normalmente 97 (cola en un proceso en tiempo real). En el caso de los programas ordinarios que se ejecutan, se suelen ver prioridades como 20 (programa de utilidad), 31 (prioridad base), 46 (fondo) y 47 (primer plano).

Puede que estés experimentando el impacto de una función conocida como "App Nap". Básicamente, ralentiza las aplicaciones que el sistema cree que el usuario no está utilizando activamente para acelerar el ahorro de energía y/o mejorar el rendimiento de otras aplicaciones.

Especialmente se dirige a las aplicaciones que son:

  • no la aplicación en primer plano (seleccionada)
  • no ha actualizado recientemente la información visible en pantalla
  • no reproduce el audio
  • no está usando gráficos 3D OpenGL
  • no está gestionando activamente el uso de la energía mediante IOKit/NSProcessInfo

Cuando se dan esas condiciones, la aplicación puede entrar en App Nap. Si miras el Monitor de Actividad en la pestaña de Energía, verás una columna llamada "App Nap". Si ésta dice "Sí", la aplicación está durmiendo la siesta.

Cuando una aplicación está en App Nap se ejecuta más lentamente debido a la reducción de su prioridad en la CPU, la estrangulación de E/S y la estrangulación de los temporizadores.

Puede leer más sobre App Nap en la documentación de Apple aquí:

https://developer.apple.com/library/archive/documentation/Performance/Conceptual/power_efficiency_guidelines_osx/AppNap.html

Que yo recuerde, la prioridad de un programa de App Nap'ed es 4.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X