تتوفّر مستودعات Trusty في "مشروع Android المفتوح المصدر" (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
في صورة برنامج ثابت وفلاشها على الجهاز.
يختلف إنشاء صور البرامج الثابتة حسب اللوحة المستخدَمة.
يُرجى التواصل مع الشركة المصنّعة للوحة للحصول على التعليمات.
Trusty على QEMU
ثبِّت الحِزم المطلوبة على المضيف إذا لم يسبق لك ذلك:
sudo apt install libpixman-1-dev libstdc++-8-dev pkg-config libglib2.0-dev libusb-1.0-0-dev
أنشئ (باستخدام نصوص خادم الإنشاء) صور trusty و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
.
لإجراء اختبار من shell في Android:
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 لأجهزة 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