Jak przyspieszyć Androida podczas uruchamiania?

13

Patrzę na czas uruchamiania Androida na moim urządzeniu wbudowanym i staram się znaleźć sposób na zaoszczędzenie czasu.

1) Jakie rzeczy zrobiłeś, aby naprawdę przyspieszyć uruchamianie?

Do tej pory patrzyłem na czas animacji rozruchu. Jeśli usunę animację uruchamiania razem, zaoszczędzę około 6 sekund, co wydawało mi się bardzo dużo. Następnie zastąpiłem animację rozruchową tylko jednym obrazem, który będzie wyświetlany przez czas trwania animacji rozruchowej i który stracił jakiekolwiek wcześniejsze oszczędności czasu. Ale proces animacji rozruchu trwał około ~ 1 sekundy. (Dołączyłem zdjęcie wygenerowane za pomocą Bootchart. Na razie tylko na emulatorze)

2) Czy warto spojrzeć na czas animacji uruchamiania systemu Android? Masz jakieś pojęcie, dlaczego proces animacji uruchamiania tak dziwnie wpływa na czas uruchamiania?

Dziękuję za Twój czas.

Wizualizacja czasu rozruchu z 1 obrazem jako animacją rozruchu

Pływ
źródło

Odpowiedzi:

2

Dwa kroki w celu przyspieszenia rozruchu jądra Linux:

  1. Skonfiguruj jądro Linux z minimalnym zestawem sterowników urządzeń, to znaczy, że tylko sterowniki muszą się uruchomić i załadować główny system plików. Każdy sterownik, system plików lub podsystemy, które można zbudować jako moduł (które chcesz w jądrze, ale nie są używane podczas rozruchu) powinny być skonfigurowane jako moduł, a nie statycznie połączone.

    Aby zobaczyć, ile czasu zajmuje ładowanie sterowników podczas uruchamiania, należy zmodyfikować wiersz poleceń jądra za pomocą opcji „initcall_debug” . Spowoduje to, że informacje o taktowaniu będą drukowane w konsoli dla każdego wywołania . wywołania init są używane do inicjowania statycznie połączonych sterowników jądra i podsystemów oraz przyczyniają się do znacznego czasu w procesie rozruchu systemu Linux. Ponowna konfiguracja niepotrzebnych sterowników w modułach ładowalnych odejmie ten czas inicjalizacji od czasu rozruchu jądra.

  2. Zmodyfikuj wiersz komend jądra za pomocą opcji „quiet” . Spowoduje to wyłączenie większości danych wyjściowych komunikatów dziennika do konsoli. Oczywiście należy to zrobić dopiero po uzyskaniu stabilnego jądra.

Więcej technik jest tutaj


źródło