¿Cómo acelerar Android durante el tiempo de arranque?

13

Estoy mirando el tiempo de arranque de Android en mi dispositivo integrado y estoy tratando de tener una idea de dónde puedo ahorrar algo de tiempo.

1) ¿Cuáles son algunas de las cosas que ha hecho para ayudar a acelerar el tiempo de arranque?

Hasta ahora miré el tiempo de animación de arranque. Si elimino la animación de arranque todos juntos, estaba ahorrando unos 6 segundos, lo que me pareció mucho. Luego reemplacé la animación de arranque con solo una imagen que se mostrará durante el tiempo de animación de arranque y que perdió cualquier ahorro de tiempo anterior. Pero el proceso de animación de arranque real solo tardaba ~ 1 segundo en ejecutarse. (Adjunto una imagen generada con Bootchart. Por ahora solo en un emulador)

2) ¿Vale la pena mirar el tiempo de animación de arranque de Android? ¿Alguna pista de por qué el proceso de animación de arranque afecta el tiempo de arranque tan extrañamente?

Gracias por tu tiempo.

Visualización del tiempo de arranque del diagrama de arranque con 1 imagen como animación de arranque

Fluir
fuente

Respuestas:

2

Dos pasos para acelerar el arranque del kernel de Linux:

  1. Configure el kernel de Linux con un conjunto mínimo de controladores de dispositivo, es decir, solo los controladores necesitan arrancar y cargar el sistema de archivos raíz. Todos los controladores, sistemas de archivos o subsistemas que se pueden construir como un módulo (que desea en el núcleo pero que no se usa durante el arranque) deben configurarse como un módulo en lugar de estar vinculados estáticamente.

    Para ver cuánto tiempo se usa para cargar controladores durante el arranque, debe modificar la línea de comando del núcleo con la opción "initcall_debug" . Esto hará que se imprima información de tiempo en la consola para cada llamada inicial . initcalls se utilizan para inicializar controladores y subsistemas de kernel enlazados estáticamente, y contribuyen una cantidad significativa de tiempo al proceso de arranque de Linux. La reconfiguración de los controladores innecesarios en módulos cargables restará ese tiempo de inicio de llamada del tiempo de arranque del núcleo.

  2. Modifique la línea de comando del kernel con la opción "quiet" . Esto deshabilitará la mayor parte de la salida de mensajes de registro a la consola. Por supuesto, esto solo debe hacerse después de tener un núcleo estable.

Más técnicas están aquí.


fuente