جابجایی 16 کیلوبایتی به شما امکان می دهد یک هسته 16 کیلوبایتی را امتحان کنید. این کلید بین هسته 4 کیلوبایتی و هسته 16 کیلوبایتی سوئیچ می شود و در منوی "گزینه توسعه دهنده" در برنامه تنظیمات یافت می شود. جابجایی 16 کیلوبایتی را می توان برای بررسی سازگاری برنامه با هسته 16 کیلوبایتی استفاده کرد، اما ممکن است عملکرد دستگاه 16 کیلوبایتی واقعی را به دلیل استفاده از بلوک های صفحه فرعی (هنگام استفاده از EXT4 برای پارتیشن های /data
و /metadata
) در 16 کیلوبایت منعکس نکند. حالت
مراحل پیکربندی ضامن
مطمئن شوید که دستگاه متغیرها را به گونه ای تنظیم کرده است که صفحه آگنوستیک باشند (برای کار با هسته های اندازه صفحه 4 کیلوبایت و 16 کیلوبایت). ممکن است بخواهید مستقیماً هسته 16k را نصب کنید تا مطمئن شوید که دستگاه در حالت 16 کیلوبایتی مستقیماً قبل از ادامه افزودن گزینه توسعه دهنده کار می کند. نمونه پیکربندی هدف دستگاه مجازی را ببینید.
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
تنظیم کنید. این به ماژول های هسته ای اشاره دارد که 16 کیلوبایت را پشتیبانی می کنند. تنظیم این پارامترها دو OTA در پارتیشن سیستم ایجاد می کند -boot_ota_16k.zip
(برای تغییر به هسته 16 کیلوبایتی) وboot_ota_4k.zip
(برای تغییر به هسته 4 کیلوبایت). 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 کیلوبایتی در برنامه تنظیمات با "بوت با اندازه صفحه 16 کیلوبایت" قابل مشاهده است.
-
/system/boot_otas
یا/vendor/boot_otas
حاوی دو فایل فشرده OTA است -boot_ota_16k.zip
وboot_ota_4k.zip
.
از کلید 16 کیلوبایتی استفاده کنید
- گزینههای توسعهدهنده را همانطور که در مستندات گزینههای توسعهدهنده راهنمایی شده است، فعال کنید.
- اگر دستگاه بهعنوان قفل OEM تشخیص داده شود، یک گفتگو نمایش داده میشود تا از کاربر بخواهد قفل OEM گوشی را باز کند. مراحل را برای باز کردن قفل OEM دنبال کنید.
- وقتی کاربر "Boot with 16 KB page size" را میزند، پارتیشنهای
/data
و/metadata
باید ext4 باشند. اگر اینطور نیست، یک گفتگو نمایش داده می شود که از کاربر درخواست می کند دستگاه را پاک کند. پاسخ "بله" دستگاه را پاک می کند و باید گزینه های توسعه دهنده را دوباره فعال کنید. - تغییر حالت 16 کیلوبایتی اکنون یک گفتگوی تایید را برای تغییر به 16 کیلوبایت نشان می دهد و در تایید، OTA های بوت اعمال می شوند. سپس می توانید بدون پاک کردن پارتیشن داده، بین حالت 4 کیلوبایت و 16 کیلوبایت به عقب و جلو بروید تا رفتار برنامه را آزمایش کنید.
حالت 16 کیلوبایت را بررسی کنید
مراحل دریافت اندازه صفحه را برای تأیید اندازه صفحه دنبال کنید.