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 4 KB a 16 KB. Znajdziesz go w menu „Opcje programisty” w aplikacji Ustawienia. Przełącznik 16 KB może służyć do sprawdzania zgodności aplikacji z jądrem 16 KB, ale może nie odzwierciedlać wydajności rzeczywistego urządzenia 16 KB z powodu używania bloków pod-stron (w przypadku użycia EXT4 na partycjach /data/metadata) w trybie 16 KB.

Konfigurowanie przełącznika

  1. Upewnij się, że na urządzeniu zmienne są skonfigurowane tak, aby były niezależne od rozmiaru strony (aby działały z jądrami o rozmiarze strony 4 KB i 16 KB). Przed dodaniem opcji dla programistów warto zainstalować jądro 16K bezpośrednio, aby mieć pewność, że urządzenie działa w trybie 16 KB. Zapoznaj się z przykładem konfiguracji docelowej na urządzeniu wirtualnym.

        PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true
        PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
    
  2. Konfiguracja zmiennej produktu, która wyświetla opcję dla deweloperów w ustawieniach PRODUCT_16K_DEVELOPER_OPTION := true

  3. Ustaw ścieżkę jądra za pomocą BOARD_KERNEL_PATH_16K. To jądro powinno być skompilowane za pomocą CONFIG_ARM64_16K_PAGES=y.

      BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
    
  4. Ustaw ścieżkę konfiguracji modułów BOARD_KERNEL_MODULES_16K. Wskazuje moduły jądra, które obsługują strony pamięci o rozmiarze 16 KB. Ustawienie tych parametrów spowoduje 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łączanie OTAs przyrostowych przez ustawienie BOARD_16K_OTA_USE_INCREMENTAL := true w przypadku mniejszych OTAs rozruchowych.

      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. Opcjonalne, większość urządzeń nie powinna mieć ustawionej tej wartości.

Weryfikacja

Po skonfigurowaniu

  1. Przełącznik 16 KB jest widoczny w aplikacji Ustawienia w sekcji „Uruchom z rozmiarem strony 16 KB”.
  2. Plik /system/boot_otas lub /vendor/boot_otas zawiera 2 pliki ZIP OTA: boot_ota_16k.zipboot_ota_4k.zip.

Używanie przełącznika 16 KB

  1. Włącz opcje programisty zgodnie z instrukcjami podanymi w dokumentacji opcji programisty.
  2. Jeśli urządzenie zostanie wykryte jako zablokowane przez producenta, wyświetli się okno z prośbą o odblokowanie telefonu przez producenta. Wykonaj czynności opisane w sekcji Odblokowanie przez producenta.
  3. Gdy użytkownik kliknie „Uruchom z rozmiarem strony 16 KB”, partycje /data/metadata muszą być w systemie ext4. Jeśli tak nie jest, wyświetla się okno z prośbą o wyczyszczenie urządzenia. Odpowiedź „Tak” spowoduje wyczyszczenie urządzenia. Będzie trzeba ponownie włączyć opcje programisty.
  4. Przełącznik 16 KB wyświetla teraz okno potwierdzenia przełączenia na 16 KB. Po potwierdzeniu zostaną zastosowane aktualizacje OTA rozruchu. 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 sekcji Pobieranie rozmiaru strony.