توضّح هذه الصفحة كيفية تطوير نواة Android على أجهزة الحبار.
بيانات النواة المتوافقة
يدعم حبَّار بيانات النواة التالية على إصدارات GSI الرئيسية وAOSP.
- في
aosp-main
common-android-mainline
common-android16-6.12
common-android15-6.6
common-android14-6.1
common-android14-5.15
- في
aosp-android13-gsi
common-android13-5.15
common-android13-5.10
- في
aosp-android12-gsi
common-android12-5.10
common-android12-5.4
common-android-4.19-stable
- في
aosp-android11-gsi
common-android11-5.4
common-android-4.19-stable
common-android-4.14-stable
في ما يلي مصادر نواة نظام التشغيل لتطويرها على أجهزة Cuttlefish.
kernel/common-android-mainline
kernel/common-android16-6.12
kernel/common-android15-6.6
kernel/common-android14-6.1
kernel/common-android14-5.15
kernel/common-android13-5.15
kernel/common-android13-5.10
تطوير نواة Android
لتطوير نواة على أجهزة Cuttlefish، اتّبِع الخطوات التالية:
يمكنك استنساخ بيان مستودع نواة الجهاز المناسب لجهاز Cuttlefish و إجراء أي تغييرات.
mkdir common-android-mainline
cd common-android-mainline
repo init -u https://android.googlesource.com/kernel/manifest -b common-android-mainline
repo sync -c -j$(nproc) -q
قم ببناء النواة والنواة. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة إنشاء وحدات المورّد للجهاز الافتراضي.
tools/bazel run //common-modules/virtual-device:virtual_device_x86_64_dist
في حال استخدام بيانَي
common-android-4.19-stable
أوcommon-android-4.14-stable
أوcommon-android11-5.4
للنواة، شغِّل:BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh && BUILD_CONFIG=common-modules/virtual-device/build.config.cuttlefish.x86_64 build/build.sh
بدلاً من الإنشاء على الجهاز (لتجنُّب تنزيل مصدر النواة، إعداد بيئة تطوير نواة)، يمكنك تنزيل العناصر ذات الصلة على ci.android.com.
أطلق النواة kernel و ramdisk مع الحبار.
cvd create \ -kernel_path=./out/virtual_device_x86_64/dist/bzImage \ -initramfs_path=./out/virtual_device_x86_64/dist/initramfs.img
في حال تشغيل نواة غير نواة GKI (أي إصدار 4.19 أو إصدار أقدم)، يجب حذف الوسيطة
-initramfs_path
.إذا كنت بصدد تشغيل النواة على إصدار aarch64 من Cuttlefish، استخدِم ملف إعدادات الإنشاء
aarch64
واستخدِم العنصرImage
بدلاً منbzImage
.cvd create \ -kernel_path=./out/virtual_device_aarch64/dist/Image \ -initramfs_path=./out/virtual_device_aarch64/dist/initramfs.img