Переключатель 16 КБ позволяет попробовать ядро размером 16 КБ. Этот переключатель переключает между ядром размером 4 КБ и ядром размером 16 КБ и находится в меню «Параметры разработчика» приложения «Настройки». Переключатель 16 КБ можно использовать для проверки совместимости приложений с ядром размером 16 КБ, но он может не отражать фактическую производительность устройства размером 16 КБ из-за использования блоков подстраниц (при использовании EXT4 для разделов /data и /metadata ) в режиме 16 КБ.
Шаги по настройке переключателя
- Убедитесь, что устройство настроило переменные как независимые от страницы (для работы с ядрами размером страниц 4 КБ и 16 КБ). Рекомендуется установить ядро 16 КБ напрямую, чтобы устройство работало в режиме 16 КБ, прежде чем продолжить добавление параметра разработчика. См. пример виртуального устройства 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в пути конфигурации модулей. Эта переменная указывает на модули ядра, поддерживающие 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-запросы в раздел поставщика. Устанавливайте этот параметр только для перемещения OTA-запросов из системы в раздел поставщика.
Проверка
После успешной настройки переключателя выполните следующие действия:
- Проверьте, отображается ли в приложении «Настройки» переключатель «Загрузка с размером страницы 16 КБ» .
-  Проверьте, содержат ли /system/boot_otasили/vendor/boot_otasдва OTA-zip-файла:boot_ota_16k.zipиboot_ota_4k.zip.
Использовать переключатель 16 КБ
- Откройте «Настройки» > «Система» > «Обновления ПО» и примените все доступные обновления.
- Включите параметры разработчика. Инструкции см. в разделе Настройка параметров разработчика на устройстве .
- Если устройство обнаружено как заблокированное OEM, появится диалоговое окно с предложением разблокировать телефон OEM. Инструкции см. в разделе Блокировка и разблокировка загрузчика .
-  Нажмите «Загрузить с размером страницы 16 КБ» . Если /dataи/metadataне являются разделами ext4, появится диалоговое окно с предложением очистить устройство. Нажмите «Стереть все данные и обновить» , чтобы очистить устройство и применить загрузочные обновления OTA. Устройство будет очищено, и оно загрузится в режиме 16 КБ. Снова включите режим разработчика. После этого вы сможете переключаться между режимами 4 КБ и 16 КБ, не очищая раздел данных, чтобы протестировать работу приложения.
Проверьте режим 16 КБ
Чтобы проверить размер страницы, следуйте инструкциям по получению размера страницы.
