เปิดใช้งานการสลับ 16 KB

การสลับ 16 KB ให้คุณลองใช้เคอร์เนลขนาด 16 KB ซึ่งจะสลับระหว่างเคอร์เนล 4 KB และเคอร์เนล 16 KB ปุ่มสลับนี้อยู่ในเมนู "ตัวเลือกสำหรับนักพัฒนา" ในแอปการตั้งค่า จำเป็นต้องเปิดใช้งานสำหรับอุปกรณ์ทีละเครื่อง

ขั้นตอนในการกำหนดค่าสลับ

  1. ตรวจสอบให้แน่ใจว่าอุปกรณ์ได้ตั้งค่าตัวแปรให้ไม่เชื่อเรื่องพระเจ้า (เพื่อทำงานกับเคอร์เนลขนาดเพจทั้ง 4 KB และ 16 KB) คุณอาจต้องการติดตั้งเคอร์เนล 16k โดยตรงเพื่อให้แน่ใจว่าอุปกรณ์ทำงานในโหมด 16 KB โดยตรง ก่อนที่จะเพิ่มตัวเลือกสำหรับนักพัฒนาต่อไป ดู การกำหนดค่าเป้าหมาย ตัวอย่างอุปกรณ์เสมือน

        PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true
        PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
    
  2. ตั้งค่าตัวแปรผลิตภัณฑ์เพื่อแสดงตัวเลือกของนักพัฒนาในการตั้งค่า PRODUCT_16K_DEVELOPER_OPTION := true

  3. ตั้งค่าเส้นทางเคอร์เนลโดยใช้ BOARD_KERNEL_PATH_16K เคอร์เนลนี้ควรสร้างด้วย CONFIG_ARM64_16K_PAGES=y.

      BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
    
  4. ตั้งค่าเส้นทางการกำหนดค่าโมดูล BOARD_KERNEL_MODULES_16K สิ่งนี้ชี้ไปที่โมดูลเคอร์เนลที่รองรับ 16KB การตั้งค่าพารามิเตอร์เหล่านี้จะสร้าง OTA สองตัวบนพาร์ติชันระบบ - boot_ota_16k.zip (เพื่อสลับเป็นเคอร์เนล 16 KB) และ boot_ota_4k.zip (เพื่อสลับเป็นเคอร์เนล 4 KB) เปิดใช้งาน OTA แบบเพิ่มหน่วยโดยการตั้งค่า BOARD_16K_OTA_USE_INCREMENTAL := true สำหรับ 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. ตั้ง BOARD_16K_OTA_MOVE_VENDOR := true เพื่อย้าย OTA ไปยังพาร์ติชันผู้ขาย เป็นทางเลือก และอุปกรณ์ส่วนใหญ่ไม่ควรตั้งค่านี้

การยืนยัน

หลังจากตั้งค่านี้สำเร็จแล้ว

  1. การสลับขนาด 16 KB สามารถมองเห็นได้ในแอปการตั้งค่าด้วย "บูตด้วยขนาดหน้า 16 KB"
  2. /system/boot_otas หรือ /vendor/boot_otas มีไฟล์ zip OTA สองไฟล์ - boot_ota_16k.zip และ boot_ota_4k.zip

ใช้การสลับขนาด 16 KB

  1. เปิดใช้งานตัวเลือกสำหรับนักพัฒนาตามที่ระบุไว้ใน เอกสารประกอบตัวเลือก dev
  2. หากตรวจพบอุปกรณ์ว่า OEM ล็อคอยู่ กล่องโต้ตอบจะปรากฏขึ้นเพื่อขอให้ผู้ใช้ OEM ปลดล็อคโทรศัพท์ ทำตามขั้นตอนเพื่อ ปลดล็อค OEM
  3. เมื่อผู้ใช้กด "บูตด้วยขนาดหน้า 16 KB" พาร์ติชัน /data และ /metadata จะต้องเป็น ext4 หากไม่เป็นเช่นนั้น หน้าต่างโต้ตอบจะปรากฏขึ้นเพื่อล้างอุปกรณ์
  4. ขณะนี้การสลับขนาด 16 KB จะแสดงกล่องโต้ตอบการยืนยันเพื่อเปลี่ยนเป็น 16 KB และเมื่อยืนยัน OTA สำหรับบูตจะถูกใช้

ตรวจสอบโหมด 16 KB

ทำตามขั้นตอนใน การรับขนาดหน้า เพื่อตรวจสอบขนาดหน้า