دکمهی تغییر وضعیت ۱۶ کیلوبایتی به شما امکان میدهد یک هستهی ۱۶ کیلوبایتی را امتحان کنید. این دکمه بین هستهی ۴ کیلوبایتی و هستهی ۱۶ کیلوبایتی جابهجا میشود و میتوانید آن را در منوی «گزینهی توسعهدهندگان» در برنامهی تنظیمات پیدا کنید. دکمهی تغییر وضعیت ۱۶ کیلوبایتی میتواند برای بررسی سازگاری برنامه با هستهی ۱۶ کیلوبایتی استفاده شود، اما ممکن است به دلیل استفاده از بلوکهای زیرصفحه (هنگام استفاده از EXT4 برای پارتیشنهای /data و /metadata ) در حالت ۱۶ کیلوبایتی، عملکرد دستگاه ۱۶ کیلوبایتی واقعی را نشان ندهد.
مراحل پیکربندی ضامن
مطمئن شوید که دستگاه، متغیرها را طوری تنظیم کرده است که مستقل از صفحه باشند (تا با هر دو هسته با اندازه صفحه ۴ کیلوبایت و ۱۶ کیلوبایت کار کنند). ممکن است بخواهید هسته ۱۶ کیلوبایتی را مستقیماً نصب کنید تا مطمئن شوید که دستگاه مستقیماً در حالت ۱۶ کیلوبایت کار میکند، قبل از اینکه به افزودن گزینه توسعهدهنده ادامه دهید. به پیکربندی هدف مثال دستگاه مجازی مراجعه کنید.
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تنظیم کنید. این متغیر به ماژولهای هسته اشاره میکند که از ۱۶ کیلوبایت پشتیبانی میکنند. تنظیم این پارامترها دو OTA در پارتیشن سیستم ایجاد میکند:boot_ota_16k.zip(برای تغییر به هسته ۱۶ کیلوبایتی) وboot_ota_4k.zip(برای تغییر به هسته ۴ کیلوبایتی). 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)برای انتقال فایلهای OTA به پارتیشن فروشنده،
BOARD_16K_OTA_MOVE_VENDOR := trueرا تنظیم کنید. فقط برای انتقال فایلهای OTA از پارتیشن سیستم به پارتیشن فروشنده، این گزینه را تنظیم کنید.
تأیید
پس از پیکربندی موفقیتآمیز تاگل، مراحل زیر را دنبال کنید:
- بررسی کنید که آیا گزینهی «بوت با حجم صفحه ۱۶ کیلوبایت» در تنظیمات برنامه قابل مشاهده است یا خیر.
- بررسی کنید که آیا
/system/boot_otasیا/vendor/boot_otasحاوی دو فایل زیپ OTA به نامهایboot_ota_16k.zipوboot_ota_4k.zipاست یا خیر.
از دکمهی تغییر وضعیت ۱۶ کیلوبایتی استفاده کنید
- به تنظیمات > سیستم > بهروزرسانیهای نرمافزار بروید و هرگونه بهروزرسانی موجود را اعمال کنید.
- گزینههای توسعهدهنده را فعال کنید. برای دستورالعملها، به پیکربندی گزینههای توسعهدهنده روی دستگاه مراجعه کنید.
اگر دستگاه به عنوان قفل OEM شناسایی شود، پنجرهای نمایش داده میشود که از شما میخواهد قفل OEM گوشی را باز کنید. برای دستورالعملها، به قفل کردن و باز کردن قفل بوت لودر مراجعه کنید. اگر سختافزار دستگاه به طور کامل از ۱۶ کیلوبایت پشتیبانی میکند، ممکن است نیازی به باز کردن قفل OEM نباشد و میتوانید از این مرحله صرف نظر کنید.
روی گزینه Boot with 16 KB page size کلیک کنید. اگر
/dataو/metadataاز نوع ext4 نباشند، پنجرهای نمایش داده میشود که از شما میخواهد دستگاه را پاک کنید. برای پاک کردن دستگاه و اعمال OTA های بوت، روی Erase all data and update کلیک کنید. دستگاه پاک میشود و در حالت ۱۶ کیلوبایت بوت میشود. دوباره گزینههای توسعهدهنده را فعال کنید. سپس میتوانید بدون پاک کردن پارتیشن داده، بین حالت ۴ کیلوبایت و ۱۶ کیلوبایت جابجا شوید تا رفتار برنامه را آزمایش کنید.
حالت ۱۶ کیلوبایتی را بررسی کنید
برای تأیید اندازه صفحه، مراحل مربوط به دریافت اندازه صفحه را دنبال کنید.