O botão de 16 KB permite testar um kernel de 16 KB. Esse botão alterna
entre um kernel de 4 KB e um de 16 KB e pode ser encontrado no
menu "Opção para desenvolvedores" no app de configurações. O botão de 16 KB pode ser usado
para verificar a compatibilidade do aplicativo com o kernel de 16 KB, mas pode não
refletir o desempenho do dispositivo de 16 KB devido ao uso de blocos de subpágina
(ao usar EXT4 para partições /data
e /metadata
) no modo de 16 KB.
Etapas para configurar a alternância
Verifique se o dispositivo configurou as variáveis para serem independentes da página (para funcionar com kernels de tamanho de página de 4 KB e 16 KB). Talvez seja necessário instalar o kernel de 16 KB diretamente para garantir que o dispositivo funcione no modo de 16 KB antes de continuar adicionando a opção para desenvolvedores. Consulte o exemplo de configuração de destino do dispositivo virtual.
PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
Configurar a variável do produto para mostrar a opção de desenvolvedor nas configurações
PRODUCT_16K_DEVELOPER_OPTION := true
Defina o caminho do kernel usando
BOARD_KERNEL_PATH_16K
. Esse kernel precisa ser criado comCONFIG_ARM64_16K_PAGES=y.
.BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
Defina o caminho de configuração dos módulos
BOARD_KERNEL_MODULES_16K
. Isso aponta para módulos do kernel que aceitam 16 KB. A configuração desses parâmetros vai criar duas OTAs na partição do sistema:boot_ota_16k.zip
(para mudar para o kernel de 16 KB) eboot_ota_4k.zip
(para mudar para o kernel de 4 KB). Ative as OTAs incrementais definindoBOARD_16K_OTA_USE_INCREMENTAL := true
para OTAs de inicialização de tamanho menor.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)
Defina
BOARD_16K_OTA_MOVE_VENDOR := true
para mover as OTAs para a partição do fornecedor. Opcional, e a maioria dos dispositivos não deve definir isso.
Verificação
Depois de configurar isso
- O botão de 16 KB fica visível no app Configurações com a opção "Inicializar com páginas de 16 KB".
/system/boot_otas
ou/vendor/boot_otas
contém dois arquivos ZIP de OTA:boot_ota_16k.zip
eboot_ota_4k.zip
.
Usar o botão de 16 KB
- Ative as opções do desenvolvedor conforme indicado na documentação de opções do desenvolvedor.
- Se o dispositivo for detectado como bloqueado pelo OEM, uma caixa de diálogo vai aparecer para solicitar que o usuário desbloqueie o smartphone pelo OEM. Siga as etapas para desbloqueio OEM.
- Quando o usuário clica em "Inicializar com páginas de 16 KB", as partições
/data
e/metadata
precisam ser ext4. Se não forem, uma caixa de diálogo será exibida para solicitar que o usuário limpe o dispositivo. A resposta "Sim" vai apagar o dispositivo, e você vai precisar ativar as opções do desenvolvedor novamente. - O botão de 16 KB agora mostra uma caixa de diálogo de confirmação para mudar para 16 KB. Ao confirmar, as OTAs de inicialização são aplicadas. Em seguida, você pode alternar entre os modos 4 KB e 16 KB sem limpar a partição de dados para testar o comportamento do app.
Verificar o modo de 16 KB
Siga as etapas em como conferir o tamanho da página para verificar o tamanho da página.