Generic Bootloader (GBL) הוא פתרון סטנדרטי וניתן לעדכון של תוכנת אתחול, שנועד לייעל את תהליך האתחול של Android. GBL מחליף את הנוף המקוטע מאוד של טועני אתחול ספציפיים לספקים ברכיב יחיד שמתוחזק באופן עקבי. השינוי הזה מצמצם את הכפילות, משפר את האבטחה ומפשט את העדכונים בסביבה העסקית של Android.
GBL מורכב מהרכיבים הבאים:
- הלוגיקה הבסיסית של אתחול Android
- הלוגיקה שכוללת את לולאת התוכנית הראשית, זיהוי מצב ההפעלה וטעינת הליבה.
- Fastboot
- פרוטוקול תקשורת וכלי אבחון שמשמשים להצגת הודעות שגיאה במכשיר ולניפוי באגים.
- תוספים של ספקים
- הרחבה של הרכיבים שצוינו של GBL על ידי יצירת פרוטוקולים משלכם. הפרוטוקולים האלה מוסכמים מראש לפני ש-GBL מוסיפה אותם לרשימת התלות שלה. תוספים של ספקים הם אופציונליים.
- רכיבי handler של פרוטוקולים ב-UEFI
- הטמעות של פרוטוקולי UEFI נדרשים ומומלצים, כולל קלט/פלט של בלוקים, הקצאת זיכרון ויצירת מספרים אקראיים. הטמעות לדוגמה נמצאות בפרויקטים של קושחת האתחול (EDK2, UBoot, LK).
- הגדרות ספציפיות של פרוטוקול UEFI ל-Android
- פרוטוקולי UEFI מותאמים אישית ל-AVB, Fastboot, בחירת משבצת, הגדרת מערכת הפעלה ועוד. ההטמעות נמצאות בפרויקטים של קושחה של ספקי סיליקון ל-Android.
החל מ-Android 16, אם אתם שולחים מכשיר שמבוסס על ערכת שבבים ARM-64, מומלץ מאוד לפרוס את הגרסה העדכנית ביותר של GBL שחתמה עליה Google ולשלב אותה בשרשרת האתחול.
מה השלב הבא?
הוראות לפריסת Generic Bootloader זמינות במאמר פריסת gbl.