9Sep

Cómo gestiona Android los procesos

click fraud protection

Windows permite que las aplicaciones de escritorio permanezcan en funcionamiento, ya sean visibles o no, mientras que el iOS de Apple solo permite que las aplicaciones realicen algunas tareas limitadas en segundo plano. Android ocupa un lugar intermedio: las aplicaciones que se ejecutan en primer plano tienen prioridad, pero las aplicaciones tienen mucha más libertad para ejecutarse en segundo plano que en iOS.

Echaremos un vistazo a cómo exactamente Android está administrando las aplicaciones y los procesos que se ejecutan en su teléfono o tableta, desmitificando lo que sucede en segundo plano.

La jerarquía del ciclo de vida del proceso

Un proceso en Android puede estar en uno de los cinco estados diferentes en un momento dado, de lo más importante a lo menos importante:

  • 1. Proceso en primer plano : la aplicación que está utilizando se considera el proceso en primer plano. Otros procesos también se pueden considerar procesos en primer plano, por ejemplo, si están interactuando con el proceso que está actualmente en primer plano. Hay solo unos pocos procesos en primer plano en un momento dado.
    instagram viewer
  • 2. Proceso visible : un proceso visible no está en primer plano, pero aún afecta lo que ve en la pantalla. Por ejemplo, el proceso en primer plano puede ser un diálogo que le permite ver una aplicación detrás de él: la aplicación visible en el fondo sería un proceso visible.
  • 3. Proceso de servicio : Un proceso de servicio no está vinculado a ninguna aplicación que esté visible en su pantalla. Sin embargo, está haciendo algo en segundo plano, como reproducir música o descargar datos en segundo plano. Por ejemplo, si comienza a reproducir música y cambia a otra aplicación, la música que se reproduce en segundo plano está siendo manejada por un proceso de servicio.
  • 4. Proceso en segundo plano : los procesos en segundo plano no están actualmente visibles para el usuario. No tienen ningún impacto en la experiencia de usar el teléfono. En un momento dado, muchos procesos en segundo plano se están ejecutando actualmente. Puede pensar en estos procesos en segundo plano como aplicaciones "en pausa".Se guardan en la memoria para que puedas volver a usarlos rápidamente cuando vuelvas a ellos, pero no están usando un valioso tiempo de CPU u otros recursos que no son de memoria.
  • 5. Proceso vacío : un proceso vacío ya no contiene datos de la aplicación. Se puede mantener con fines de almacenamiento en caché para acelerar los lanzamientos de aplicaciones más tarde, o el sistema puede matarlo según sea necesario.

Por ejemplo, supongamos que enciendes tu teléfono y abres una aplicación de música. Mientras lo usa, la aplicación de música será un proceso en primer plano. Cuando empiece a reproducir música y abandone la aplicación de música, la música continuará reproduciéndose como un proceso de servicio.

Veamos Angry Birds como otro ejemplo. Angry Birds sería un proceso en primer plano mientras lo estabas jugando. Cuando abandonas Angry Birds e ingresas a la aplicación de Gmail para ver tu correo electrónico, Angry Birds se convierte en un proceso en segundo plano( porque no tiene que hacer nada en segundo plano), mientras que Gmail se convierte en el proceso en primer plano. Cuando vuelvas a Angry Birds, se convertirá en tu proceso en primer plano y el juego se reanudará rápidamente. Angry Birds no estaba utilizando recursos en segundo plano, aparte de algunos RAM, pero se reanuda rápidamente porque permaneció en la memoria caché y listo para reanudar.

Android administra automáticamente los procesos

Android hace un buen trabajo al administrar automáticamente estos procesos, por lo que no necesita un asesino de tareas en Android.

Cuando Android necesita más recursos del sistema, primero comenzará a eliminar los procesos menos importantes. Android comenzará a matar los procesos vacíos y en segundo plano para liberar memoria si se está agotando. Si necesita más memoria, por ejemplo, si está jugando un juego particularmente exigente en un dispositivo sin mucha RAM, Android comenzará a matar los procesos de servicio, por lo que su transmisión de música y descargas de archivos puede detenerse.

En la mayoría de los casos, Android hace todo esto sin que tengas que preocuparte por ello. Android utiliza de forma inteligente la memoria RAM de su dispositivo para almacenar en caché aplicaciones y otros datos, porque no tiene sentido dejar su memoria RAM vacía.

Por supuesto, Android proporciona aplicaciones con tanta flexibilidad que tienen espacio para portarse mal. Por ejemplo, una aplicación mal codificada podría iniciar un proceso de servicio que se ejecuta en segundo plano todo el tiempo, consumiendo todo el tiempo de su CPU y reduciendo drásticamente la duración de la batería.

¡Algo interesante que notarás en aplicaciones antivirus como Avast!para Android es que la aplicación antivirus usa un ícono de notificación.si intentas desactivar el icono de notificación, ¡Avast!recomendará en contra de esto. Al tener un ícono de notificación visible, Avast!se convierte en una aplicación de mayor prioridad, lo que impide que Android la considere una aplicación en segundo plano y la mate. Las aplicaciones de Android

pueden comenzar en respuesta a los eventos

Las aplicaciones de Android también pueden comenzar en respuesta a eventos. Por ejemplo, un desarrollador podría programar su aplicación para que se ejecute automáticamente al inicio y ejecutar un servicio en segundo plano. Las aplicaciones pueden comenzar en respuesta a una variedad de otros eventos, como cuando toma una foto, cuando cambia su conexión de datos, y así sucesivamente. Esto permite que las aplicaciones realicen acciones en respuesta a eventos sin ejecutar constantemente en segundo plano.

Gestión de procesos

No debería necesitar administrar procesos manualmente, pero hay algunas maneras de hacerlo si lo desea. Puede utilizar el menú multitarea en Android 4.0 y versiones posteriores para realizar una gestión básica del proceso. Para acceder, toca el botón multitarea dedicado en los dispositivos Nexus. En otros dispositivos Android, es posible que tenga que tocar dos veces o presionar prolongadamente el botón Inicio. Las aplicaciones

que se muestran en el menú probablemente estén en estado de "proceso en segundo plano".Puede matarlos deslizando una aplicación hacia la izquierda o hacia la derecha, lo que eliminará de la memoria de su dispositivo. Esto no debería ser necesario, pero puede ayudar cuando desee matar rápidamente una aplicación, tal vez se comporte mal.

También puede ir a la pantalla de Configuración, tocar Aplicaciones, tocar una aplicación y usar el botón de detención Forzar para eliminar una aplicación que no funciona.

Android está basado en Linux, y cada aplicación en Android está asignada a una ID de usuario de Linux diferente o cuenta de usuario. Esto aísla aplicaciones entre sí.Si rooteas tu dispositivo, las aplicaciones pueden escapar de sus entornos limitados de usuario y ejecutarse con privilegios de administrador.

Crédito de la imagen: JD Hancock en Flickr