العودة إلى التحديثات
New releaseJul 14, 2026

tamago v1.26.5

إطار لتجميع وتنفيذ تطبيقات Go على معالجات عارية (bare metal)، مما يتيح تطوير برامج ثابتة آمنة مع تقليل سطح الهجوم من خلال إزالة اعتماديات نظام التشغيل وC.

مشاركة

TamaGo - bare metal Go

tamago | https://github.com/usbarmory/tamago

حقوق النشر (ج) مؤلفو TamaGo. جميع الحقوق محفوظة.

TamaGo gopher

مقدمة

TamaGo هو إطار عمل يُمكّن من تجميع وتنفيذ تطبيقات Go غير المقيدة على معالجات العارية (AMD64, ARM, ARM64, RISCV64).

ينبثق المشروع من الرغبة في تقليل مساحة الهجوم للبرامج الثابتة للأنظمة المدمجة عن طريق إزالة أي اعتماد زمني على كود C وأنظمة التشغيل.

يتكون إطار عمل TamaGo من المكونات التالية:

  • توزيعة Go معدلة والتي تمدد دعم GOOS إلى الهدف tamago، مما يسمح بالتنفيذ العاري من خلال طبقة تراكب runtime/goos يتم تعيينها بواسطة GOOSPKG.

  • حزم Go لدعم المعالج/SoC.

  • حزم Go لدعم اللوحة.

التعديلات ضئيلة مقارنة بمترجم Go الأصلي ووقت التشغيل والتطبيق المستهدف (استيراد واحد مطلوب)، مع فصل نظيف عن البنى الأخرى.

يتم التركيز بشدة على إعادة استخدام الكود من البنى الموجودة بالفعل في وقت تشغيل Go القياسي، انظر الداخلية.

تحافظ التعديلات على دعم كامل للمكتبة القياسية.

هذه الجوانب مدفوعة بالرغبة في توفير إطار عمل يسمح بتطوير برامج Go آمنة على الأنظمة المدمجة.

الإصدارات الحالية

الروابط التالية هي أحدث إصدارات توزيعة Go المعدلة لـ TamaGo، والتي تضيف دعم GOOS=tamago لإصدار Go المقابل، و مكتبة TamaGo:

GitHub release Build Status
GitHub release

التوثيق

Go Reference

يمكن العثور على التوثيق الرئيسي على مشروع ويكي.

يمكن العثور على توثيق واجهة برمجة التطبيقات (API) على pkg.go.dev.

أهداف AMD64 المدعومة

يلخص الجدول التالي أهداف x86-64 المدعومة حاليًا (GOOS=tamago GOARCH=amd64).

CPUPlatformCPU packagePlatform package
AMD/Intel 64-bitCloud Hypervisoramd64cloud_hypervisor/vm
AMD/Intel 64-bitFirecracker microvmamd64firecracker/microvm
AMD/Intel 64-bitQEMU microvmamd64qemu/microvm
AMD/Intel 64-bitUEFIamd64uefi/x64
AMD/Intel 64-bitGoogle Compute Engineamd64google/gcp, uefi/x64

أهداف ARM المدعومة

يلخص الجدول التالي معالجات SoC واللوحات ARM المدعومة حاليًا (GOOS=tamago GOARCH=arm).

الفئات