تتوفّر مستودعات Trusty في دليل مشروع المصدر (AOSP).
استخدِم الروابط التالية للعثور على فروع Trusty kernel المناسبة في AOSP:
تثبيت Repo
لتنزيل Trusty، عليك أولاً تنزيل Repo وتثبيته.
بعد تثبيت Repo بنجاح، يمكنك استنساخ مستودع Android Trusty:
mkdir trusty
cd trusty
repo init -u https://android.googlesource.com/trusty/manifest -b main
repo sync -j32
إنشاء
استخدِم ما يلي لإنشاء صورة arm64 العامة لنظام التشغيل Trusty:
./trusty/vendor/google/aosp/scripts/build.py generic-arm64
تظهر نتائج الإنشاء ضمن build-root/build-generic-arm64/.
ابحث عن lk.bin
، وهي صورة TEE تتضمّن جميع التطبيقات المجمّعة في:
ls build-root/build-generic-arm64/lk.bin
تثبيت
يمكنك تجميع lk.bin
في صورة برنامج ثابت وفلاشها على الجهاز.
يختلف إنشاء صور البرامج الثابتة بناءً على اللوحة المستخدمة.
يُرجى التواصل مع الشركة المصنّعة لللوحة للحصول على التعليمات.
موثوق به على QEMU
ثبِّت الحِزم المطلوبة على المضيف إذا لم يسبق لك ذلك:
sudo apt install libpixman-1-dev libstdc++-8-dev pkg-config libglib2.0-dev libusb-1.0-0-dev
إنشاء (باستخدام النصوص البرمجية الخاصة بخادم الإصدار) صور موثوقة وصور qemu:
trusty/vendor/google/aosp/scripts/build.py qemu-generic-arm64-test-debug
يؤدي هذا أيضًا إلى إجراء جميع الاختبارات التي تم ضبطها لهذا الهدف.
لإجراء اختبار أداة تشغيل الاختبار يدويًا (تفعيل المنفذ) (com.android.ipc-unittest.ctrl):
build-root/build-qemu-generic-arm64-test-debug/run --headless --boot-test "com.android.ipc-unittest.ctrl"
لإجراء اختبار تشغيل تجريبي (com.android.ipc-unittest.ctrl) مع نتائج تصحيح أخطاء kernel عند التشغيل:
build-root/build-qemu-generic-arm64-test-debug/run-qemu --boot-test "com.android.ipc-unittest.ctrl" --headless --verbose
يعطِّل ATF وحدة التحكّم قبل العودة إلى برنامج تشغيل الاختبار. لإيقاف هذا الإجراء على الجهاز، يمكنك وضع تعليق توضيحي على
كل الرمز البرمجي في bl31_plat_runtime_setup in external/arm-trusted-firmware/plat/common/aarch64/plat_common.c
.
لإجراء اختبار من خلال Android Shell:
build-root/build-qemu-generic-arm64-test-debug/run-qemu --shell-command "/data/nativetest64/tipc-test/tipc-test -t ta2ta-ipc" --headless
للتشغيل على واجهة برمجة تطبيقات تفاعلية (من واجهة برمجة تطبيقات تم التحقق منها مسبقًا):
build-root/build-qemu-generic-arm64-test-debug/run
يتوفّر لهذا الأمر أيضًا مجموعة متنوعة من عمليات إلغاء أخرى - يمكنك الاطّلاع على --help للحصول على مزيد من المعلومات.
إذا تعذّر تنفيذ adb devices -l
عند تشغيل qmeu.py
، قد يكون إصدار خادم adb
الذي يتم تشغيله على نظامك غير صحيح:
adb kill-server
لتشغيل إصدار Android، لديك على الجهاز:
build-root/build-qemu-generic-arm64-test-debug/run --android path/to/your/android/source/dir
لإنشاء Android for Trusty، اتّبِع الخطوات التالية:
mkdir android cd android repo init -u https://android.googlesource.com/platform/manifest -b main repo sync -j32 source build/envsetup.sh lunch qemu_trusty_arm64-userdebug m