برنامج تشغيل نواة مُوجز بلغة Rust: مثال وحدة التحكم Ethernet AX88796B

2025-06-28

تتناول هذه المقالة تجربة كتابة برنامج تشغيل نواة لينكس لوحدة التحكم Ethernet المدمجة AX88796B باستخدام لغة Rust. يقارن الكاتب بين إصدار Rust ونظيره بلغة C، مُسلطًا الضوء على الاختلافات في بناء الجملة، والأنواع، وواجهات برمجة التطبيقات. يتميز إصدار Rust بإيجاز ملحوظ، حيث يتكون من أكثر من 100 سطر بقليل، مُستفيدًا من وحدات الماكرو لتبسيط عملية تسجيل برنامج التشغيل، واستخدام الصفات والماكرو `#[vtable]` من أجل دمج سلس مع الرمز C الحالي. تشرح المقالة بوضوح مزايا Rust في تطوير برامج تشغيل النواة، مثل ضمانات سلامة الذاكرة من خلال المراجع، ومعالجة الأخطاء المُبسطة باستخدام `Result` وعامل التشغيل `try`، مما يوفر رؤى قيّمة لتطوير برامج تشغيل النواة بلغة Rust.

التطوير