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>