Gobernadores y planificadores de E/S para la CPU en Android

Una de las cosas más interesantes que tiene Android sobre otras plataformas como iOs o BB, es que uno se puede meter a las entrañas del sistema operativo y hacer muchas cosas que en otras plataformas es imposible hacerlas o es mucho más restringido.

Una de esas cosas que se puede hacer con Android es jugar con el kernel y el uso de gobernadores para el manejo de la CPU así como los planificadores de E/S para decidir la forma cómo se maneja la lectura/escritura en el dispositivo.

Si este tema te parece muy técnico te recomiendo no seguir leyendo, pero si te gusta y te emociona, adelante, sigue leyendo y conoce más de Android.




Antes de entrar a describir cada opción, primero explicaré que es un gobernador y que es un planificador de E/S.

Gobernador
El gobernador del móvil es quien dicta cuando el procesador debe trabajar más rápido o cuando entrar en reposo, esto ayuda a mejorar la duración de la batería y también alarga la vida útil del móvil.

Para que el gobernador funcione se debe establecer el valor mínimo de CPU así como el máximo.


Planificador de E/S
La planificación de Entrada/Salida (Input/Output Scheduling, o I/O scheduling) consiste en el método mediante el cual los sistemas android deciden el orden en que se procesan las peticiones de lectura/escritura en el móvil o unidad de almacenamiento. El objetivo de optimizar el sistema, eligiendo un algoritmo de planificación de Entrada/salida, es disminuir los tiempos de búsqueda (seek times), priorizar las peticiones de ciertos procesos de Entrada/salida.


En Android estos valores vienen seteados en el firmware, y es personalizable en la mayoría de firmwares personalizados o kernels personalizados, casi siempre esta configuración se hace con No-frills CPU Control que puedes encontrar en la PlayStore.



Como gobernadores existen varias opciones, entre ellas están intellidemand2, interactive, conservative, ondemand, userpsace, powersave, smarassv2 y performances.

Como planificador de E/S existen otras opciones como noop, deadline, cfq, bfq y sio

Si quires conocer que significa cada opción en español te recomiendo que sigas leyendo este post en HTCMania, si deseas preguntar o llegar a más profunidad, te recomiendo revisar este post en XDA (inglés).

Igualmente revisa esta sección de preguntas y respuestas que es muy interesante.

La opción que yo recomiendo es la que se ve en la imagen que anexo a este post.

Entradas más populares de este blog

Android 6.0.1 Marshmallow para Moto X Play (XT1563)