Włącz przełącznik 16 KB

Przełącznik 16 KB umożliwia wypróbowanie jądra 16 KB. Ten przełącznik umożliwia przełączanie się między jądrem systemu 4 KB a jądrem systemu 16 KB. Znajduje się w menu „Opcje programisty” w aplikacji Ustawienia. Przełącznik 16 KB można używać do sprawdzania zgodności aplikacji z jądrem systemu 16 KB, ale ze względu na używanie bloków podstron (w przypadku korzystania z systemu EXT4 na partycjach /data/metadata) w trybie 16 KB może nie odzwierciedlać wydajności rzeczywistego urządzenia 16 KB.

Kroki konfigurowania przełącznika

  1. Upewnij się, że na urządzeniu skonfigurowano zmienne tak, aby były niezależne od rozmiaru strony (działały zarówno z jądrami systemu o rozmiarze strony 4 KB, jak i 16 KB). Aby mieć pewność, że urządzenie działa w trybie 16 KB, możesz zainstalować jądro 16 KB bezpośrednio przed dodaniem opcji dla programistów. Zobacz przykładową konfigurację urządzenia docelowego.

        PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true
        PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
    
  2. Skonfiguruj zmienną produktu, aby wyświetlać opcje programisty w ustawieniach PRODUCT_16K_DEVELOPER_OPTION := true

  3. Ustaw ścieżkę jądra za pomocą BOARD_KERNEL_PATH_16K. Ten kernel powinien być zbudowany za pomocą CONFIG_ARM64_16K_PAGES=y.

      BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
    
  4. Ustaw zmienną ścieżki konfiguracji modułów BOARD_KERNEL_MODULES_16K. Ta zmienna wskazuje moduły jądra, które obsługują strony pamięci o rozmiarze 16 KB. Ustawienie tych parametrów powoduje utworzenie 2 aktualizacji OTA na partycji systemowej : boot_ota_16k.zip(aby przełączyć się na jądro 16 KB) i boot_ota_4k.zip(aby przełączyć się na jądro 4 KB). Włącz przyrostowe aktualizacje OTA, ustawiając BOARD_16K_OTA_USE_INCREMENTAL := true dla mniejszych aktualizacji 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)
    
  5. Ustaw BOARD_16K_OTA_MOVE_VENDOR := true, aby przenieść OTA do partycji dostawcy. Ustaw to tylko w przypadku przenoszenia aktualizacji OTA z partycji systemowej na partycję dostawcy.

Weryfikacja

Po skonfigurowaniu przełącznika wykonaj te czynności:

  1. Sprawdź, czy w aplikacji Ustawienia jest widoczny przełącznik Uruchom ze stroną 16 KB.
  2. Sprawdź, czy /system/boot_otas lub /vendor/boot_otas zawiera 2 pliki ZIP OTA : boot_ota_16k.zipboot_ota_4k.zip.

Użyj przełącznika 16 KB

  1. Otwórz Ustawienia > System > Aktualizacje oprogramowania i zastosuj dostępne aktualizacje.
  2. Włącz opcje programisty. Instrukcje znajdziesz w artykule Konfigurowanie opcji programisty na urządzeniu.
  3. Jeśli urządzenie zostanie wykryte jako zablokowane przez producenta, pojawi się okno z prośbą o odblokowanie telefonu. Instrukcje znajdziesz w artykule Blokowanie i odblokowywanie programu rozruchowego.
  4. Kliknij Uruchom z rozmiarem strony 16 KB. Jeśli /data/metadata nie są w formacie ext4, pojawi się okno dialogowe z prośbą o wyczyszczenie urządzenia. Kliknij Usuń wszystkie dane i zaktualizuj, aby wyczyścić urządzenie i zastosować aktualizacje OTA. Urządzenie zostanie wyczyszczone i uruchomi się w trybie 16 KB. Ponownie włącz opcje programisty. Następnie możesz przełączać się między trybami 4 KB i 16 KB bez czyszczenia partycji danych, aby przetestować działanie aplikacji.

Sprawdź tryb 16 KB

Aby sprawdzić rozmiar strony, wykonaj czynności opisane w artykule Uzyskiwanie rozmiaru strony.