يصل الإصدار التاسع من Rust for Linux ويقول وداعًا لدعم الإصدارات السابقة لـ Linux 3.2

واو ، وظيفة يتم الآن دعم برنامج تشغيل Rust لنظام Linux وقد بدأ تطوير مستمر إلى حد ما ، لأنه ليس لديه الكثير تم الإعلان عن الإصدار 8 من البقع وهذا كل شيء الآن لدينا الإصدار 9.

وفي هذا الإصدار التاسع الذي تم اقتراحه ، تجدر الإشارة إلى ذلك على هذا النحو إنها نسخة مبسطة من الطبعة الثامنة نُشرت قبل أيام قليلة. تتميز المجموعة بتخفيض كبير في الحجم وترك فقط الحد الأدنى الضروري ، وهو ما يكفي لبناء وحدة kernel مكتوبة بلغة Rust.

يُفترض الحد الأدنى من التصحيح سيجعل من السهل اعتماد دعم Rust في النواة الرئيسية. بعد توفير الحد الأدنى من الدعم ، من المخطط زيادة الوظائف الحالية تدريجياً ، ونقل التغييرات الأخرى من فرع Rust-for-Linux.

هذه هي سلسلة التصحيحات (الإصدار 9) لإضافة دعم لـ Rust كلغة ثانية إلى Linux kernel ...

كالعادة ، شكر خاص لـ ISRG (مجموعة أبحاث أمان الإنترنت) وجوجل لدعمهم المالي في هذا الجهد.

مقارنة بالإصدار 8 ، تم تقليل حجم التصحيح من 40 إلى 000 سطر من التعليمات البرمجية. على سبيل المثال ، يتضمن الإصدار 3 500٪ فقط من الكود (60 سطر) من حزمة مربع "kernel" و 32٪ من مكتبة التخصيص ، مما يسمح لك بإنشاء أبسط وحدات kernel باستخدام نوع Vec. وعرض المعلومات في سجل kernel باستخدام الماكرو "pr_info!".

وعلاوة على ذلك، فيما يتعلق بـ Rust و Linux ، تجدر الإشارة إلى أن ملف حذر مطورو مشروع الصدأ للمستخدمين حول الزيادة الوشيكة في متطلبات بيئة Linux في المترجم ومدير حزم الشحن ومكتبة libstd القياسية.

اعتبارًا من Rust 1.64 ، المقرر في 22 سبتمبر 2022، سيتم رفع الحد الأدنى لمتطلبات Glibc من الإصدار 2.11 إلى 2.17 و Linux kernel من 2.6.32 إلى 3.2. تنطبق القيود أيضًا على ثنائيات Rust المبنية باستخدام libstd.

تفي توزيعات RHEL 7 و SLES 12-SP5 و Debian 8 و Ubuntu 14.04 بالمتطلبات الجديدة. سيتوقف دعم RHEL 6 و SLES 11-SP4 و Debian 7 و Ubuntu 12.04. تتضمن أسباب إهمال دعم أنظمة Linux القديمة موارد محدودة لمواصلة دعم البيئات القديمة.

لماذا زيادة المتطلبات؟
نريد أن يكون الصدأ والثنائيات التي ينتجها Rust قابلة للاستخدام على نطاق واسع قدر الإمكان. في الوقت نفسه ، لا يمتلك مشروع Rust سوى موارد محدودة للحفاظ على التوافق مع البيئات القديمة.

هناك جزأان لمتطلبات سلسلة الأدوات: الحد الأدنى لمتطلبات تشغيل برنامج التحويل البرمجي Rust على نظام مضيف ، والحد الأدنى من المتطلبات للثنائيات المجمعة.

يؤثر الحد الأدنى من متطلبات سلاسل أدوات المضيف على نظام البناء الخاص بنا. ينتج Rust CI المشغولات الثنائية لعشرات الأهداف المختلفة. يتطلب بناء الثنائيات التي تدعم الإصدارات القديمة من glibc بناء نظام تشغيل مع glibc أقدم (للبنيات الأصلية) أو استخدام جذر إنشاء مع إصدار أقدم من glibc (للبنيات المتقاطعة).

على وجه الخصوص ، يتطلب التوافق مع Glibcs ​​الأقدم استخدام أدوات قديمة عند التحقق منها في نظام تكامل مستمر ، مقابل متطلبات الإصدار المتزايدة على LLVM والأدوات المساعدة للترجمة المشتركة. تعود الزيادة في متطلبات إصدار kernel إلى قدرة libstd على استخدام استدعاءات النظام الجديدة دون الحاجة إلى الحفاظ على الطبقات لضمان التوافق مع النواة القديمة.

يُنصح المستخدمون الذين يستخدمون الملفات التنفيذية التي تم إنشاؤها من قبل Rust في البيئات ذات نوى Linux القديمة بترقية أنظمتهم ، أو البقاء على الإصدارات القديمة من المترجم ، أو الحفاظ على تفرع libstd ذي الطبقات الخاصة بهم للحفاظ على التوافق.

أخيرًا ، إذا كنت مهتمًا بأن تكون قادرًا على معرفة المزيد عنها ، فيمكنك الرجوع إلى التفاصيل في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: AB Internet Networks 2008 SL
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.