تصحيح أخطاء USB Mass Storage BOT: CBW وCSW وبيانات الإحساس وعمليات النقل الفاشلة

كيفية تصحيح حالات فشل النقل Bulk-Only Transport لتخزين USB كبير السعة باستخدام command block wrappers وcommand status wrappers وبيانات الإحساس.

USB, تخزين كبير السعة, BOT, CBW, CSW

تبدو أجهزة تخزين USB كبيرة السعة بسيطة من جانب المستخدم: "قم بتوصيل محرك أقراص فلاش، أو مسجل بيانات، أو جهاز تحديث برامج ثابتة، أو جهاز تخزين مدمج، ويظهر قرص. عندما تفشل، يمكن أن يكون الخطأ غامضًا: الجهاز غير جاهز، خطأ إدخال/إخراج، مطالبة تهيئة، فشل التحميل، أو قرص يختفي." تحت السطح، تستخدم العديد من الأجهزة Bulk-Only Transport. لدى BOT تدفق أوامر يمكن التعرف عليه: "Command Block Wrapper، مرحلة بيانات، Command Status Wrapper. إذا انكسر هذا النمط، يمكن للالتقاط عادة أن يُظهر أين."

افهم تدفق BOT

النمط العادي هو:

  • يرسل المضيف CBW عبر bulk OUT
  • مرحلة بيانات اختيارية عبر bulk IN أو OUT
  • يرسل الجهاز CSW عبر bulk IN

يحمل CBW أمر SCSI. يُبلغ CSW عن حالة الأمر. إذا فشل الأمر، قد يصدر المضيف REQUEST SENSE لمعرفة السبب.

أدلة مفيدة:

  • توقيع CBW
  • علامة الأمر
  • طول نقل البيانات
  • علامة الاتجاه
  • بايتات أمر SCSI
  • طول مرحلة البيانات
  • توقيع CSW
  • حالة CSW
  • الباقي
  • بيانات الإحساس بعد الفشل

إذا لم تتطابق العلامات، لا يمكن للمضيف الوثوق بالحالة. إذا لم يتطابق طول البيانات مع السلوك، قد تحدث مهلات أو توقفات.

بيانات الإحساس تشرح حالات الفشل العديدة

أمر SCSI الفاشل ليس نهاية التشخيص. غالبًا ما تعطي بيانات الإحساس السبب الحقيقي:

  • غير جاهز
  • خطأ وسيط
  • طلب غير قانوني
  • محمي ضد الكتابة
  • عنوان الكتلة المنطقي خارج النطاق
  • انتباه الوحدة بعد إعادة الضبط

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

توقف نقطة النهاية واستعادة إعادة الضبط

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

افحص:

  • أي نقطة نهاية توقفت
  • ما إذا كان المضيف أرسل clear feature
  • ما إذا كانت إعادة تعيين BOT قد حدثت
  • ما إذا كان تدفق CBW/CSW اللاحق قد استؤنف
  • ما إذا كانت العلامات لا تزال متسقة

هذا الدليل أفضل من التخمين في آلات حالة البرامج الثابتة.

أين يتناسب Bus Scope

Bus Scope منصة عمل فحص USB. لحالات تخزين الكتلة، لا تكفي البايتات الخام وحدها؛ بنية BOT المفكوكة وحالة النقل تساعد المهندسين في العثور على الخطأ بشكل أسرع.

يجب أن يجيب تقرير Bus Scope المفيد لتصحيح أخطاء BOT:

  • أي أمر SCSI فشل؟
  • هل طابقت مرحلة البيانات اتجاه CBW وطوله؟
  • هل وصل CSW؟
  • هل طابقت علامة CSW علامة CBW؟
  • ما بيانات الإحساس التي تلت ذلك؟
  • هل عملت استعادة إعادة الضبط؟

لاستعلامات البحث مثل "فشل BOT لتخزين USB كبير السعة"، أو "عدم تطابق CBW CSW"، أو "خطأ إدخال/إخراج لمحرك أقراص فلاش USB البرامج الثابتة"، هذا هو المسار من عرض المستخدم إلى أدلة الناقل.