Bật nút bật/tắt 16 KB

Nút bật/tắt 16 KB cho phép bạn dùng thử nhân hệ điều hành 16 KB. Nút bật/tắt này giữa nhân 4 KB và nhân hệ điều hành 16 KB và có thể được tìm thấy trong nhân "Tuỳ chọn cho nhà phát triển" trong ứng dụng cài đặt. Nút bật/tắt 16 KB để kiểm tra khả năng tương thích của ứng dụng với nhân hệ điều hành 16 KB, nhưng hệ thống có thể không phản ánh hiệu suất của thiết bị 16 KB thực tế do sử dụng các khối trang con (khi sử dụng EXT4 cho phân vùng /data/metadata) ở chế độ 16 KB.

Các bước định cấu hình nút bật/tắt

  1. Đảm bảo thiết bị đã thiết lập các biến không phụ thuộc vào trang (để hoạt động với cả nhân có kích thước trang 4 KB và 16 KB). Bạn nên cài đặt trực tiếp nhân hệ điều hành 16 KB để đảm bảo thiết bị hoạt động ở chế độ 16 KB trước khi tiếp tục thêm tuỳ chọn cho nhà phát triển. Xem cấu hình mục tiêu của ví dụ về thiết bị ảo.

        PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true
        PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
    
  2. Thiết lập biến sản phẩm để hiển thị tuỳ chọn cho nhà phát triển trong phần cài đặt PRODUCT_16K_DEVELOPER_OPTION := true

  3. Đặt đường dẫn hạt nhân bằng BOARD_KERNEL_PATH_16K. Hạt nhân này phải được tạo bằng CONFIG_ARM64_16K_PAGES=y.

      BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
    
  4. Đặt đường dẫn cấu hình mô-đun BOARD_KERNEL_MODULES_16K. Thuộc tính này trỏ đến các mô-đun nhân hệ điều hành hỗ trợ 16 KB. Việc đặt các tham số này sẽ tạo ra hai OTA trên phân vùng hệ thống – boot_ota_16k.zip(Để chuyển sang nhân hệ điều hành 16 KB) và boot_ota_4k.zip(Để chuyển sang nhân hệ điều hành 4 KB). Bật OTA gia tăng bằng cách đặt BOARD_16K_OTA_USE_INCREMENTAL := true cho các OTA khởi động ở kích thước nhỏ hơn.

      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. Đặt BOARD_16K_OTA_MOVE_VENDOR := true để di chuyển OTA sang phân vùng nhà cung cấp. Không bắt buộc và hầu hết các thiết bị không nên đặt giá trị này.

Xác minh

Sau khi thiết lập thành công

  1. Nút bật/tắt 16 KB sẽ hiển thị trong ứng dụng cài đặt với lựa chọn "Khởi động có kích thước trang 16 KB".
  2. /system/boot_otas hoặc /vendor/boot_otas chứa hai tệp zip OTA - boot_ota_16k.zipboot_ota_4k.zip.

Sử dụng nút bật/tắt 16 KB

  1. Bật tuỳ chọn cho nhà phát triển theo hướng dẫn trong tài liệu về tuỳ chọn cho nhà phát triển.
  2. Nếu thiết bị được phát hiện là OEM đã khoá, một hộp thoại sẽ xuất hiện để yêu cầu người dùng mở khoá OEM điện thoại. Làm theo các bước để mở khoá OEM.
  3. Khi người dùng nhấn vào "Khởi động với kích thước trang 16 KB", /data/metadata phân vùng cần phải là định dạng ext4. Nếu không, một hộp thoại sẽ xuất hiện để yêu cầu để người dùng xoá thiết bị. Nếu trả lời "Có", thiết bị sẽ bị xoá sạch và bạn sẽ phải kích hoạt lại các tuỳ chọn cho nhà phát triển.
  4. Nút bật/tắt 16 KB giờ đây sẽ hiển thị hộp thoại xác nhận để chuyển sang 16 KB, và khi xác nhận, OTA khởi động sẽ được áp dụng. Sau đó, bạn có thể bật/tắt qua lại giữa chế độ 4 KB và 16 KB mà không cần xoá phân vùng dữ liệu để kiểm thử hành vi của ứng dụng.

Kiểm tra Chế độ 16 KB

Làm theo các bước trong phần lấy kích thước trang để xác minh kích thước trang.