A alternância 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 de páginas (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. Veja o exemplo de dispositivo virtual configuração de destino.
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 com suporte a 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). Ativar OTAs incrementais definindoBOARD_16K_OTA_USE_INCREMENTAL := true
para OTAs de inicialização menores.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 precisa definir isso.
Verificação
Após a configuração,
- O botão de ativação de 16 KB fica visível no app Configurações com a opção "Inicialização com tamanho de página de 16 KB".
/system/boot_otas
ou/vendor/boot_otas
contém dois arquivos ZIP OTA:boot_ota_16k.zip
eboot_ota_4k.zip
.
Usar alternância de 16 KB
- Ative as opções do desenvolvedor conforme indicado na documentação das opções de desenvolvedor.
- Se o dispositivo for detectado como bloqueado pelo OEM, uma caixa de diálogo será mostrada para solicitar que o usuário desbloqueie o smartphone pelo OEM. Siga as etapas para desbloqueio OEM.
- Quando o usuário clica em "Inicialização com tamanho de página de 16 KB",
/data
e/metadata
. as partições precisam ser ext4. Se não estiverem, uma caixa de diálogo será exibida para solicitar o usuário limpar o dispositivo. Responder "Sim" limpa o dispositivo e você terá para reativar as opções do desenvolvedor. - 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. É possível alternar entre as opções entre os modos de 4 KB e 16 KB sem limpar a partição de dados para e 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.