Quá trình thiết lập này yêu cầu một máy chủ Linux ARM64. Trang này trình bày cách tạo và khởi động Cuttlefish với khả năng hỗ trợ kích thước trang 16 KB trên ARM64. Hướng dẫn trên trang này giả định rằng các gói Cuttlefish đã được cài đặt trong máy của bạn. Để biết
hướng dẫn cài đặt các gói này, hãy xem Bước 1 trong bài viết Cài đặt Cuttlefish.
Bạn có thể chạy Cuttlefish bằng cách tải các cấu phần phần mềm được tạo sẵn xuống ngay từ trang web Tích hợp liên tục của Android hoặc tạo các cấu phần phần mềm đó từ AOSP nếu cần sửa đổi mã nguồn.
Chạy Cuttlefish bằng cách tải các cấu phần phần mềm xuống
Chuyển đến trang web Tích hợp liên tục của Android rồi
nhập aosp-main-throttled làm tên nhánh. Nhấp vào bản dựng mới nhất cho mục tiêu aosp_cf_arm64_phone_pgagnostic. Bây giờ, hãy làm theo hướng dẫn ở Bước
5 trong bài viết Cài đặt Cuttlefish.
Chạy Cuttlefish bằng cách tạo từ AOSP
Tạo và chạy Cuttlefish với mục tiêu không phụ thuộc vào trang:
$ mkdir android-latest-branch && cd android-latest-branch
$ repo init -u https://android.googlesource.com/platform/manifest -b android-latest-release
$ repo sync -c -j32
# Build cf agnostic target.
$ source build/envsetup.sh
$ lunch aosp_cf_arm64_phone_pgagnostic-trunk_staging-userdebug
$ m
# Launch cf with a kernel with 16 KB page size support.
$ launch_cvd
...
...
VIRTUAL_DEVICE_DISPLAY_POWER_MODE_CHANGED
virtio_input_hid_handle_status: unknown type 20
virtio_input_hid_handle_status: unknown type 20
virtio_input_hid_handle_status: unknown type 20
virtio_input_hid_handle_status: unknown type 20
Generating new secret with slot ID: 4
VIRTUAL_DEVICE_BOOT_STARTED
VIRTUAL_DEVICE_NETWORK_MOBILE_CONNECTED
Xác minh kích thước trang và quá trình khởi động
Cách xác minh kích thước trang và trạng thái khởi động:
Truy cập vào shell với tư cách gốc:
$ adb root adbd is already running as root $ adb shell vsoc_arm64_pgagnostic:/ #Xác minh kích thước trang và trạng thái khởi động:
vsoc_arm64_pgagnostic:/ # getconf PAGE_SIZE 16384 vsoc_arm64_pgagnostic:/ # getprop | grep sys.boot.completed sys.boot_completed: 1
Sử dụng Cuttlefish với nhân tuỳ chỉnh có kích thước trang 16 KB
Cách sử dụng nhân tuỳ chỉnh thay vì nhân được tạo sẵn:
Tạo thư mục kho lưu trữ cho nhân chung của Android và đồng bộ hoá thư mục đó:
$ mkdir common-android14-6.1 && cd common-android14-6.1 $ repo init -u https://android.googlesource.com/kernel/manifest -b common-android14-6.1 $ repo sync -c -j$(nproc)Tạo nhân có kích thước trang 16 KB:
$ tools/bazel run --lto=none //common:kernel_aarch64_16k_dist $ tools/bazel run --lto=none //common-modules/virtual-device:virtual_device_aarch64_16k_dist -- \ --dist_dir=out/android14-6.1/distXác minh rằng bản dựng đã thực thi thành công:
# Generated files $ ls out/android14-6.1/dist/Image $ ls out/android14-6.1/dist/initramfs.img
Khởi động Cuttlefish bằng nhân tuỳ chỉnh có kích thước trang 16 KB
Cách sử dụng nhân mới tạo trong Cuttlefish:
$ launch_cvd -kernel_path ~/common-android14-6.1/out/android14-6.1/dist/Image \
-initramfs_path ~/common-android14-6.1/out/android14-6.1/dist/initramfs.img \
--resume=false --userdata_format=ext4 \
--data_policy=always_create --blank_data_image_mb=8000
-userdata_format=ext4