ما هو DFU؟ نظرة عملية على تحديث برامج الأجهزة الثابتة (Device Firmware Update)

July 29, 2026 · زوار

إذا سبق لك أن وصّلت لوحة أنظمة مدمجة (embedded board) بحاسوبك ورأيتها تظهر كجهاز USB غريب بلا أي تعريف (driver)، فمن المرجح جدًا أنها كانت في وضع DFU — أي Device Firmware Update.

ما هو DFU فعليًا

DFU هو فئة أجهزة USB معرّفة من قبل USB Implementers Forum، وقد صُمم أصلًا لتحديث البرامج الثابتة (firmware) لملحقات USB دون الحاجة إلى أدوات خاصة بكل منتج. يعرض الجهاز الذي يدعمه واجهة صغيرة وموحّدة: يمكن لأداة تعمل على المضيف (host) الاستعلام منه، وإرسال صورة برنامج ثابت جديدة، وتشغيل إعادة إقلاع نحو الكود الجديد — وكل ذلك عبر نفس كابل USB المستخدم لكل شيء آخر.

على اللوحات المدمجة، عادة ما يعني "وضع DFU" أن المُحمِّل الإقلاعي (bootloader) نفسه — مثل U-Boot — يُشغّل حزمة DFU بسيطة بدلًا من إقلاع لينكس. تظهر اللوحة للمضيف كجهاز USB من فئة DFU، وتستطيع أداة مثل dfu-util سرد الأهداف القابلة للبرمجة (partitions، مناطق ذاكرة، أو أي شيء يختار المُحمِّل الإقلاعي كشفه) والكتابة إليها مباشرة.

لماذا يُعد مهمًا

هناك عدة أمور تجعل DFU مفيدًا حقًا في التطوير المدمج والإنتاج.

يستحق الأمر مقارنة DFU بآليات مجاورة ستصادفها على نفس اللوحات: fastboot (بروتوكول أندرويد، بهدف مشابه لكن بتنسيق سلكي مختلف)، وأدوات الصور الكاملة للنظام مثل swupdate أو RAUC، والتي تتولى توصيل التحديثات والتراجع عنها (rollback) بعد أن يكون لينكس يعمل بالفعل — بينما يعمل DFU عادة في طبقة أدنى من ذلك، أقرب إلى المُحمِّل الإقلاعي.

سير عمل مبسّط

جلسة DFU نموذجية من جهة المضيف تبدو كالتالي:

# see what the board exposes in DFU mode
dfu-util -l

# flash an image to a specific alt-setting/partition
dfu-util -a 0 -D firmware.bin

تُعاد اللوحة إلى معالج DFU الخاص بالمُحمِّل الإقلاعي، وتتفاوض أداة المضيف على عملية النقل، وتستقر الصورة حيثما ربط المُحمِّل الإقلاعي ذلك الـ alt-setting — وغالبًا ما يكون ذلك جزءًا محددًا من eMMC/NAND أو منطقة تجهيز (staging area) يبرمجها المُحمِّل الإقلاعي عند الإقلاع التالي.

خاطرة ختامية

DFU هو أحد أجزاء البنية التحتية التي تصبح غير مرئية عندما تعمل بشكل صحيح: توصّل كابلًا، وتشغّل أمرًا واحدًا، وإذا باللوحة التي لم تكن تستطيع الإقلاع قبل دقيقة تعود للعمل من جديد. معظم الهندسة المثيرة للاهتمام تكمن في ضبط جانب المُحمِّل الإقلاعي بشكل صحيح — ما الذي يُكشف عنه، وكيف يُترجَم إلى تخزين حقيقي، وكيف يفشل بأمان عندما ينقطع النقل في منتصف الطريق.

كانت هذه تدوينة قصيرة — سأتعمق في تفاصيل تطبيقات محددة (وأين تصبح معقدة) في تدوينة قادمة.

قراءات إضافية

قراءات ذات صلة

التعليقات