Profile obrazów rozruchowych

Profil obrazu rozruchowego ma na celu zwiększenie wydajności systemu poprzez optymalizację kodu w czasie kompilacji. Jest to zbiór danych, który informuje system o tym, które części kodu są najczęściej używane podczas procesu uruchamiania i przez podstawowe komponenty systemu. Te informacje pozwalają środowisku wykonawczemu systemu na wyprzedzające kompilowanie i optymalizowanie tego krytycznego kodu, co przekłada się na szybsze uruchamianie, płynniejsze otwieranie aplikacji i ogólnie lepszą responsywność systemu.

Więcej informacji o profilach obrazu rozruchowego znajdziesz w artykule Profile obrazu rozruchowego.

Dane profilu obrazu rozruchowego

Profile obrazów rozruchowych AAOS obejmują:

  • Profil ścieżki klas uruchamiania (vendor/auto/embedded/products/boot-image-profile.txt). Określa, które metody ze ścieżki klas uruchamiania mają być optymalizowane.

Przykładowa zawartość profilu

Landroid/accounts/AccountManager;
Landroid/app/ActivityManager;
Landroid/app/ActivityTaskManager;
Landroid/app/ActivityThread;
Landroid/app/AlarmManager;
Landroid/app/AlertDialog;
Landroid/car/Car;
Landroid/car/input/CarInputManager;
Landroid/car/media/CarAudioManager;

Generowanie profili obrazów rozruchowych

Aby skutecznie profilować i generować realistyczny profil obrazu rozruchowego, zapoznaj się z artykułem Generowanie profili obrazów rozruchowych, w którym znajdziesz informacje o dostosowanych do Twoich potrzeb przypadkach użycia.

Aby szybko wygenerować profil obrazu rozruchowego specjalnie dla przykładowych przypadków użycia AAOS, które uruchamiają Mapy Google i Google Play, użyj skryptu art/tools/boot-image-profile-aaos-sample-generate.py. Ten skrypt zawiera kroki opisane w linku powyżej.

Rozpocznij

Uruchom to polecenie, aby utworzyć Androida, uruchomić Cuttlefish i wykonać skrypt generujący przykładowy profil obrazu rozruchowego AAOS.

Kompilowanie Androida

Wybierz cel i uruchom to polecenie (np.aosp_cf_x86_64_auto-ap4a-userdebug):

source build/envsetup.sh
lunch <target>
m

Uruchamianie Cuttlefish

Postępuj zgodnie z instrukcjami w sekcji Rozpoczęcie, aby uruchomić urządzenie docelowe Cuttlefish.

Uruchamianie skryptu

python3 art/tools/boot-image-profile-aaos-sample-generate.py

Opcjonalnie: określ urządzenie ADB

export ANDROID_SERIAL=<your_device_serial>