Cosmopolitan 3.0: اكتب مرة واحدة، شغّل في أي مكان (وأسرع!)

2025-02-01
Cosmopolitan 3.0: اكتب مرة واحدة، شغّل في أي مكان (وأسرع!)

مكتبة Cosmopolitan الإصدار 3.0 متوفرة الآن! بعد عام تقريبًا من التطوير، هذا الإصدار يغيّر قواعد اللعبة. ملفّ واحد قابل للتنفيذ يعمل الآن على أنظمة AMD64 و ARM64 عبر أنظمة Linux و macOS و Windows و FreeBSD و OpenBSD و NetBSD. يُمكن ذلك بفضل مُجمّع جديد، apelink.c، الذي يجمع بذكاء بين صيغ الملفات PE و ELF و Mach-O و PKZIP. كما يوفر Cosmopolitan 3.0 تحسينات كبيرة في توافق Windows و macOS، بالإضافة إلى مكاسب كبيرة في السرعة وكفاءة الذاكرة. يتضمن ذلك توزيع "Linux سميك"، Cosmos، يحتوي على أدوات مثل Emacs و Vim و CoreUtils. يوفر هذا النهج المبتكر ليس فقط قابلية نقل غير مسبوقة، بل وأداءً متفوقًا أيضًا.

اقرأ المزيد

مُفسّر حساب لامدا الثنائي في 383 بايت

2025-01-15
مُفسّر حساب لامدا الثنائي في 383 بايت

تُقدّم هذه المدوّنة تنفيذًا جديدًا لمُفسّر حساب لامدا الثنائي بحجم 383 بايت، بصيغة ملفّ تنفيذي ELF لنظام لينكس x86-64. يُنجز هذا المُفسّر الصغير مهمّة جمع القمامة، والقوائم الكسولة، والتكرار الذّيلية. تُشفّر البرامج بصيغة ثنائية صغيرة بشكلٍ ملحوظ؛ على سبيل المثال، فإنّ مُفسّر الدّورات المتداخلة يبلغ حجمه 232 بت فقط. يُقدّم الكاتب كودًا مُحمّلاً بلغة C، وملفاتٍ ثنائية مُجمعة مُسبقًا لأنظمة أخرى. هذا المُشروع أداة ممتعة للتّعلّم في مجال حساب لامدا، كما يُظهر إمكانيّة تنفيذ العمليّات الحسابيّة المُعقّدة في بيئاتٍ مُقيّدةٍ جدًّا من حيث الموارد.

اقرأ المزيد
التطوير أنظمة مُدمجة

التقليل إلى أقصى حد: إنشاء ملف قابل للتنفيذ متعدد المنصات بحجم أقل من 400 بايت

2025-01-07

تتناول هذه المدونة تقنيات تحسين حجم الكود من مشروع Cosmopolitan Libc، باستخدام تجميع x86 وتقنيات تجميع ذكية للحد بشكل كبير من حجم الملفات القابلة للتنفيذ. تُناقش الطرق الرئيسية ترميز طول التشغيل، والأقسام اللامركزية، وإزالة الكود الميت، وترميز δzd، والوظائف المتداخلة، وتحسين printf. والنتيجة النهائية؟ ملف قابل للتنفيذ ELF بحجم أقل من 400 بايت يعمل على أنظمة Linux وFreeBSD وNetBSD وOpenBSD. يُظهر هذا الاستخدام الفعال للموارد ويقدم منظورات جديدة حول قابلية التوسع لقواعد البيانات الكبيرة.

اقرأ المزيد