Wie kann man Android während des Bootens beschleunigen?

13

Ich schaue nach der Startzeit von Android auf meinem eingebetteten Gerät und versuche herauszufinden, wo ich etwas Zeit sparen kann.

1) Was haben Sie getan, um die Startzeit zu verkürzen?

Bisher habe ich mir die Bootup-Animationszeit angesehen. Wenn ich die Boot-Animation alle zusammen entferne, habe ich ungefähr 6 Sekunden gespart, was mir sehr viel vorkam. Dann habe ich die Startanimation durch nur ein Bild ersetzt, das für die Dauer der Startanimationszeit angezeigt wird und das bisherige Zeitersparnis verloren hat. Der eigentliche Startvorgang dauerte jedoch nur ca. 1 Sekunde. (Ich habe ein mit Bootchart erstelltes Bild angehängt. Jetzt nur auf einem Emulator.)

2) Lohnt es sich, sich die Animationszeit für das Booten von Android anzuschauen? Gibt es einen Anhaltspunkt dafür, warum der Boot-Animationsprozess die Boot-Zeit so merkwürdig beeinflusst?

Vielen Dank für Ihre Zeit.

Bootchart-Boot-Zeit-Visualisierung mit 1 Image als Boot-Animation

Fließen
quelle

Antworten:

2

Zwei Schritte, um den Start des Linux-Kernels zu beschleunigen:

  1. Konfigurieren Sie den Linux-Kernel mit einem minimalen Satz von Gerätetreibern, dh nur die Treiber müssen das Root-Dateisystem starten und laden. Jeder Treiber, jedes Dateisystem oder jedes Subsystem, das als Modul erstellt werden kann (das im Kernel enthalten sein soll, aber beim Booten nicht verwendet wird), sollte als Modul konfiguriert und nicht statisch eingebunden werden.

    Um zu sehen, wie viel Zeit beim Laden von Treibern benötigt wird, sollten Sie die Kernel-Befehlszeile mit der Option "initcall_debug" ändern . Dies bewirkt, dass Zeitinformationen für jeden Initialisierungsaufruf auf die Konsole gedruckt werden . Initcalls werden verwendet, um statisch verknüpfte Kernel-Treiber und -Subsysteme zu initialisieren und den Linux-Startvorgang erheblich zu beschleunigen. Wenn Sie nicht benötigte Treiber für ladbare Module neu konfigurieren, wird diese Initialisierungszeit von der Kernel- Startzeit abgezogen .

  2. Ändern Sie die Kernel-Kommandozeile mit der Option "quiet" . Dadurch wird der Großteil der Ausgabe von Protokollnachrichten an die Konsole deaktiviert. Dies sollte natürlich nur erfolgen, wenn Sie einen stabilen Kernel haben.

Weitere Techniken sind hier


quelle