16 KB 切換按鈕可讓您試用 16 KB 的核心。這個切換鈕
介於 4 KB 核心和 16 KB 核心之間,可以位於
「開發人員選項」選單。可以使用 16 KB 切換鈕
可檢查應用程式與 16 KB 核心的相容性,但這通常
反映由於使用子頁面區塊造成的實際 16 KB 裝置效能
以 16 KB 模式 (/data
和 /metadata
分區使用 EXT4)。
設定切換按鈕的步驟
確認裝置已將變數設為適用於所有網頁的變數 (可正常運作 以及 4 KB 和 16 KB 頁面大小核心)。 建議您直接安裝 16k 核心,確保裝置可在 16 KB 模式下運作,再繼續新增開發人員選項。請參閱虛擬裝置範例目標設定。
PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true PRODUCT_MAX_PAGE_SIZE_SUPPORTED := 16384
設定產品變數,在設定中顯示開發人員選項
PRODUCT_16K_DEVELOPER_OPTION := true
使用
BOARD_KERNEL_PATH_16K
設定核心路徑。 這個核心應使用CONFIG_ARM64_16K_PAGES=y.
建構BOARD_KERNEL_PATH_16K := kernel/prebuilts/mainline/$(TARGET_KERNEL_ARCH)/16k/kernel-mainline.
設定模組設定路徑
BOARD_KERNEL_MODULES_16K
。這會指向核心 支援 16 KB 的模組。設定這些參數後,系統會在 系統分區 -boot_ota_16k.zip
(如要改用 16 KB 核心) 和boot_ota_4k.zip
(如要切換至 4 KB 核心)。透過以下方式啟用漸進式 OTA: 為較小的啟動 OTA 設定BOARD_16K_OTA_USE_INCREMENTAL := true
。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)
設定
BOARD_16K_OTA_MOVE_VENDOR := true
,將 OTA 移至供應商分區。選用,大多數裝置不應設定此值。
驗證
完成這項設定後
- 「設定」應用程式會顯示 16 KB 切換按鈕,並顯示「使用 16 KB 頁面大小啟動」選項。
/system/boot_otas
或/vendor/boot_otas
包含兩個 OTA ZIP 檔案 -boot_ota_16k.zip
和boot_ota_4k.zip
。
使用 16 KB 的切換鈕
- 按照開發人員選項說明文件的說明啟用開發人員選項。
- 如果系統偵測到裝置已鎖定 OEM,系統會顯示對話方塊,要求使用者解鎖手機。按照這個頁面中的步驟進行 OEM 解鎖。
- 當使用者點選「Boot with 16 KB page size」時,
/data
和/metadata
分區必須是 ext4。如果沒有,系統會顯示對話方塊 使用者清除裝置資料。回答「是」抹除裝置資料 即可再次啟用開發人員選項。 - 16 KB 切換鈕現在會顯示確認對話方塊,以便切換至 16 KB,並在確認後套用啟動 OTA。接著,您就可以在 4 KB 和 16 KB 模式之間來回切換,無須清除資料分區即可測試應用程式行為。
檢查 16 KB 模式
請按照取得頁面大小一文中的步驟操作 以便驗證網頁大小