Le bouton 16 ko vous permet d'essayer un kernel de 16 ko. Il permet de passer d'un kernel de 4 ko à un kernel de 16 ko. Vous le trouverez dans le menu "Options pour les développeurs" de l'application Paramètres. Vous pouvez l'utiliser pour vérifier la compatibilité des applications avec le kernel de 16 ko, mais il est possible qu'il ne reflète pas les performances d'un appareil de 16 ko réel en raison de l'utilisation de blocs de sous-page (lorsque vous utilisez EXT4 pour les partitions /data et /metadata) en mode 16 ko.
Étapes de configuration du bouton
Assurez-vous que l'appareil a configuré les variables pour qu'elles soient agnostiques de la page (afin de fonctionner avec les kernels de taille de page de 4 ko et de 16 ko). Vous pouvez installer directement le kernel de 16 ko pour vous assurer que l'appareil fonctionne directement en mode 16 ko avant de continuer à ajouter l'option pour les développeurs. Consultez l'exemple de configuration cible de l'appareil virtuel .
PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384Configurez la variable de produit pour afficher l'option pour les développeurs dans les paramètres
PRODUCT_16K_DEVELOPER_OPTION := true.Définissez le chemin d'accès au kernel à l'aide de
BOARD_KERNEL_PATH_16K. Ce kernel doit être créé avecCONFIG_ARM64_16K_PAGES=y..BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.Définissez la variable de chemin d'accès à la configuration des modules
BOARD_KERNEL_MODULES_16K. Cette variable pointe vers les modules de kernel compatibles avec 16 ko. La définition de ces paramètres crée deux OTA sur la partition système :boot_ota_16k.zip(pour passer au kernel de 16 ko) etboot_ota_4k.zip(pour passer au kernel de 4 ko). Activez les OTA incrémentales en définissantBOARD_16K_OTA_USE_INCREMENTAL := truepour les OTA de démarrage de plus petite taille.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)Définissez
BOARD_16K_OTA_MOVE_VENDOR := truepour déplacer les OTA vers la partition du fournisseur. Ne définissez ce paramètre que pour déplacer les OTA du système vers la partition du fournisseur.
Validation
Une fois le bouton configuré, procédez comme suit :
- Vérifiez si le bouton Démarrer avec une page de 16 ko est visible dans l'application Paramètres.
- Vérifiez si
/system/boot_otasou/vendor/boot_otascontient deux fichiers ZIP OTA :boot_ota_16k.zipetboot_ota_4k.zip.
Utiliser le bouton 16 ko
- Accédez à Paramètres > Système > Mises à jour logicielles et appliquez toutes les mises à jour disponibles.
- Activez les options pour les développeurs. Pour obtenir des instructions, consultez Configurer les options pour développeurs sur l'appareil.
Si l'appareil est détecté comme étant verrouillé par l'OEM, une boîte de dialogue s'affiche et vous demande de le déverrouiller. Pour obtenir des instructions, consultez Verrouiller et déverrouiller le bootloader. Si le matériel de l'appareil est entièrement compatible avec 16 ko, le déverrouillage OEM n'est peut-être pas nécessaire. Vous pouvez ignorer cette étape.
Cliquez sur Démarrer avec une page de 16 ko. Si
/dataet/metadatane sont pas au format ext4, une boîte de dialogue s'affiche et vous demande d'effacer les données de l'appareil. Cliquez sur Effacer toutes les données et mettre à jour pour effacer les données de l'appareil et appliquer les OTA de démarrage. Les données de l'appareil sont effacées et il démarre en mode 16 ko. Réactivez les options pour les développeurs. Vous pouvez ensuite passer du mode 4 ko au mode 16 ko et inversement sans effacer la partition de données pour tester le comportement de l'application.
Vérifier le mode 16 ko
Suivez les étapes de la section Obtenir la taille de la page pour vérifier la taille de la page.