המתג של 16KB מאפשר לכם לנסות ליבה (kernel) של 16KB. המתג הזה מאפשר לעבור בין ליבה (kernel) בגודל 4KB לבין ליבה בגודל 16KB, והוא נמצא בתפריט 'אפשרויות למפתחים' באפליקציית ההגדרות. אפשר להשתמש במתג של 16KB כדי לבדוק את תאימות האפליקציה לליבה בגודל 16KB, אבל יכול להיות שהיא לא תשקף את הביצועים של מכשיר בפועל עם ליבה בגודל 16KB בגלל השימוש בבלוק של דף משנה (כשמשתמשים ב-EXT4 למחיצות /data
ו-/metadata
) במצב 16KB.
שלבים להגדרת המתג
חשוב לוודא שהמשתנים מוגדרים במכשיר כך שלא יהיו תלויים בדף (כדי לעבוד עם ליבות בגודל דף של 4KB ו-16KB). מומלץ להתקין את הליבה של 16KB ישירות כדי לוודא שהמכשיר פועל במצב 16KB ישירות לפני שממשיכים להוסיף את האפשרות למפתחים. target config של מכשיר וירטואלי לדוגמה.
PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
הגדרת משתנה מוצר להצגת האפשרות 'אפשרויות למפתחים' בהגדרות
PRODUCT_16K_DEVELOPER_OPTION := true
מגדירים את נתיב הליבה באמצעות
BOARD_KERNEL_PATH_16K
. צריך ליצור את הליבה הזו באמצעותCONFIG_ARM64_16K_PAGES=y.
BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
מגדירים את נתיב התצורה של המודולים
BOARD_KERNEL_MODULES_16K
. הפקודה הזו מפנה למודולים של הליבה שתומכים ב-16KB. הגדרת הפרמטרים האלה תיצור שני עדכוני OTA במחיצה של המערכת –boot_ota_16k.zip
(כדי לעבור לליבה של 16KB) ו-boot_ota_4k.zip
(כדי לעבור לליבה של 4KB). כדי להפעיל עדכוני OTA מצטברים, מגדירים את הערךBOARD_16K_OTA_USE_INCREMENTAL := true
לעדכוני OTA לטעינה בגודל קטן יותר.BOARD_KERNEL_MODULES_16K += $(wildcard kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/*.ko) BOARD_KERNEL_MODULES_16K += $(wildcard kernel/prebuilts/common-modules/virtual-device/mainline/$(TARGET_KERNEL_ARCH)/16k/*.ko)
מגדירים את
BOARD_16K_OTA_MOVE_VENDOR := true
כדי להעביר עדכוני OTA למחיצה של הספק. אופציונלי, וברוב המכשירים לא צריך להגדיר את הערך הזה.
אימות
אחרי שמגדירים את זה
- המתג של 16 KB מופיע באפליקציית ההגדרות עם הכיתוב 'הפעלה בגודל דף של 16 KB'.
/system/boot_otas
או/vendor/boot_otas
מכיל שני קובצי ZIP ל-OTA –boot_ota_16k.zip
ו-boot_ota_4k.zip
.
שימוש במתג 16KB
- מפעילים את האפשרויות למפתחים לפי ההוראות שמפורטות במסמכי העזרה בנושא אפשרויות למפתחים.
- אם המכשיר מזוהה כנעולה של יצרן ציוד מקורי, תוצג תיבת דו-שיח שבה המשתמש יתבקש לבטל את נעילת הטלפון על ידי יצרן הציוד המקורי. פועלים לפי השלבים לביטול הנעילה של OEM.
- כשהמשתמש לוחץ על 'הפעלה בגודל דף של 16KB', המחיצות
/data
ו-/metadata
צריכות להיות מסוג ext4. אם לא, תוצג תיבת דו-שיח שבה המשתמש יתבקש למחוק את המכשיר. אם תבחרו באפשרות 'כן', המכשיר יימחק ותצטרכו להפעיל מחדש את האפשרויות למפתחים. - כשמעבירים את המתג ל-16KB, מוצגת עכשיו תיבת דו-שיח לאישור המעבר ל-16KB. אחרי האישור, מתבצעת החלה של עדכוני OTA לאתחול. לאחר מכן תוכלו לעבור בין מצב 4KB למצב 16KB בלי לנקות את מחיצת הנתונים כדי לבדוק את התנהגות האפליקציה.
בדיקת מצב 16KB
כדי לאמת את גודל הדף, פועלים לפי השלבים המפורטים במאמר קבלת גודל הדף.