Simuler la seiche avec une taille de page de 16 Ko sur x86_64

Cette configuration nécessite un hôte Linux x86_64. Cette page vous montre comment créer Démarrez Settlefish avec une taille de page de 16 Ko disponible sur x86_64. Les instructions sur cette page suppose que les packages Cuttlefish sont installés sur votre machine. Pour pour les installer, consultez l'étape 1 de la section Installer Cuttlefish.

Vous pouvez lancer Cuttlefish en téléchargeant les artefacts prédéfinis directement à partir de l'intégration continue Android. site ou créez-les à partir d'AOSP si vous devez modifier le code source du code source.

Implémentation du noyau

La prise en charge de l'émulation des pages x86_64 de 16 Ko est ajoutée dans Android 14 6.6. GKI en Série de correctifs page_size_emulation. La transmission de page_shift=14 à la ligne de commande active cette émulation. Cibles x86_64 avec le suffixe _16k (ou anciennes cibles avec _pgagnostic) ), tel que aosp_cf_x86_64_phone_pgagnostic, transmettent cette option par défaut. et fonctionnent par défaut en mode 16 Ko.

Lancez Settlefish en téléchargeant les artefacts

Accédez au site Android Continuous Integration (Intégration continue Android) et saisissez aosp-main-throttled comme nom de branche. Cliquez sur le dernier build pour Cible : aosp_cf_x86_64_phone_pgagnostic. Suivez ensuite les instructions de l'étape 5 sur Install Cuttlefish (Installer Cuttlefish).

Lancer Cuttlefish à partir d'AOSP

Créez et lancez Cuttlefish avec une cible indépendante de la page:

$ 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_x86_64_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

Vérifier la taille de la page et le démarrage

Pour vérifier la taille de la page et l'état de démarrage:

  1. Accédez au shell en tant que racine:

    $ adb root
    adbd is already running as root
    $ adb shell
    vsoc_x86_64_pgagnostic:/ #
    
  2. Vérifiez la taille de la page et l'état de démarrage:

    vsoc_x86_64_pgagnostic::/ # getconf PAGE_SIZE
    16384
    vsoc_x86_64_pgagnostic::/ # getprop | grep sys.boot.completed
    sys.boot_completed: 1