تتوفر المستودعات الموثوقة في مشروع Android مفتوح المصدر (AOSP).
استخدم هذه الروابط للعثور على فروع Trusty kernel المناسبة في AOSP:
تثبيت الريبو
لتنزيل 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 في 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 لـ 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