Penyiapan ini memerlukan host Linux ARM64
. Halaman ini menunjukkan cara membangun dan
memulai Sotong dengan dukungan ukuran halaman 16 KB di ARM64
. Instruksi di
halaman ini mengasumsikan bahwa paket Cuttlefish
diinstal di komputer Anda. Sebagai
untuk menginstalnya, lihat Langkah 1 dari Menginstal Cuttlefish.
Anda bisa meluncurkan Cuttlefish dengan mendownload artefak langsung dari Android Continuous Situs integrasi atau build situs dari AOSP jika Anda perlu memodifikasi kode sumbernya.
Luncurkan Cuttlefish dengan mendownload artefak
Buka situs Android Continuous Integration dan
masukkan aosp-main-throttled
sebagai nama cabang. Klik build terbaru untuk
Target aosp_cf_arm64_phone_pgagnostic
. Sekarang, ikuti petunjuk dari Langkah
5 dari Instal Cuttlefish.
Meluncurkan Cuttlefish dengan membangun dari AOSP
Bangun dan luncurkan Cuttlefish dengan target agnostik halaman:
$ mkdir main && cd main
$ repo init -u https://android.googlesource.com/platform/manifest -b main
$ 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
Memverifikasi ukuran halaman dan booting
Untuk memverifikasi ukuran halaman dan status booting:
Akses shell sebagai root:
$ adb root adbd is already running as root $ adb shell vsoc_arm64_pgagnostic:/ #
Memverifikasi ukuran halaman dan status booting:
vsoc_arm64_pgagnostic:/ # getconf PAGE_SIZE 16384 vsoc_arm64_pgagnostic:/ # getprop | grep sys.boot.completed sys.boot_completed: 1
Gunakan Cuttlefish dengan kernel ukuran halaman 16 KB kustom
Untuk menggunakan kernel kustom, sebagai ganti kernel bawaan:
Buat direktori repo untuk kernel umum Android dan sinkronkan direktorinya:
$ 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)
Bangun kernel ukuran halaman 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/dist
Pastikan build berhasil dieksekusi:
# Generated files $ ls out/android14-6.1/dist/Image $ ls out/android14-6.1/dist/initramfs.img
Mulai Cuttlefish dengan kernel ukuran halaman 16 KB kustom
Untuk menggunakan kernel yang baru dibuat di 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