פרופיל של תמונת אתחול נועד לשפר את ביצועי המערכת על ידי הנחיית האופטימיזציה של הקוד בזמן ההידור. בעצם, מדובר בקבוצת נתונים שמספקת למערכת מידע על החלקים בקוד שנמצאים בשימוש הכי תדיר במהלך תהליך האתחול ועל ידי רכיבי מערכת הליבה. המידע הזה מאפשר לסביבת זמן הריצה של המערכת לבצע קומפילציה ואופטימיזציה מראש של הקוד הקריטי הזה, וכתוצאה מכך זמני האתחול מהירים יותר, הפעלת האפליקציות חלקה יותר וההיענות הכוללת של המערכת משתפרת.
מידע נוסף על פרופילים של תמונות אתחול זמין במאמר פרופילים של תמונות אתחול.
נתוני פרופיל של קובץ אימג' לאתחול
פרופילים של תמונות אתחול ב-AAOS כוללים את הפרטים הבאים:
- פרופיל עבור נתיב המחלקה של האתחול
(
vendor/auto/embedded/products/boot-image-profile.txt
). קובע אילו שיטות מנתיב המחלקה של האתחול יעברו אופטימיזציה.
דוגמאות לתוכן בפרופיל
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;
יצירת פרופילים של תמונות אתחול
כדי ליצור פרופיל ריאליסטי של תמונת אתחול, מומלץ לעיין במאמר בנושא יצירת פרופילים של תמונות אתחול עם CUJ מותאם אישית.
כדי ליצור במהירות פרופיל של תמונת אתחול במיוחד לתרחישי שימוש לדוגמה ב-AAOS, כלומר להפעלת מפות Google ו-Google Play, משתמשים בסקריפט art/tools/boot-image-profile-aaos-sample-generate.py
. הסקריפט הזה
כולל את השלבים שמפורטים בקישור שצוין למעלה.
שנתחיל?
מריצים את הפקודות הבאות כדי ליצור את Android, להפעיל את Cuttlefish ולהריץ את הסקריפט כדי ליצור פרופיל לדוגמה של קובץ אימג' לאתחול של AAOS.
Build Android
בוחרים יעד ומריצים את הפקודה הבאה (לדוגמה
aosp_cf_x86_64_auto-ap4a-userdebug
):
source build/envsetup.sh
lunch <target>
m
הפעלת Cuttlefish
פועלים לפי ההוראות שבקטע תחילת העבודה כדי להפעיל את יעד Cuttlefish.
הפעלת הסקריפט
python3 art/tools/boot-image-profile-aaos-sample-generate.py
אופציונלי: מציינים מכשיר ADB
export ANDROID_SERIAL=<your_device_serial>