يُستخدم لاستيعاب وإرجاع بيانات الحمولة النافعة في الاستجابات الإيجابية لخدمات الروتينات العامة.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: d9df3888892fالمصدرأسئلة مفتوحة (3)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
يُستخدم لاستيعاب وإرجاع بيانات الحمولة النافعة في الاستجابات الإيجابية لخدمات الروتينات العامة.
يُستخدم الهيكل ara::diag::GenericRoutine::OperationOutput كهيكل إرجاع لرسائل الاستجابة الإيجابية لخدمات الروتينات العامة في AUTOSAR Adaptive [SWS_DM_00633]. بعد التنفيذ الناجح لروتين ما، يقوم التطبيق بإنشاء مثيل للهيكل وتعبئة العضو responseData ببيانات الحمولة النافعة للنتيجة SWS Diagnostics ص. 80. والشرط الأساسي الحاسم هو أن المتجه responseData يحتوي حصرياً على بيانات النتيجة الصرفة ويجب ألا يحتوي صراحة على RoutineIdentifier[SWS_DM_00633].
السياق
يُستخدم الهيكل ara::diag::GenericRoutine::OperationOutput في وحدة التشخيص في AUTOSAR Adaptive كحاوية بيانات مخصصة لرسائل الاستجابة الإيجابية لخدمات الروتينات العامة [SWS_DM_00633]. وهو متاح عبر ملف الترويسة ara/diag/generic_routine.h[SWS_DM_00633] ويغلف بيانات الحمولة النافعة التي يعيدها تطبيق تشخيص تكيّفي بعد المعالجة الناجحة لروتين ما إلى إدارة التشخيص (ara::diag). وتشارك في هذا التفاعل بصورة أساسية ثلاث جهات: جهاز اختبار التشخيص الخارجي كمرسل لطلبات الروتين، وإطار عمل المنصة ara::diag لمعالجة البروتوكول، والتنفيذ الخاص بالتطبيق لـ GenericRoutine الذي ينفذ المنطق الوظيفي ويوفر النتيجة SWS Diagnostics ص. 80. وتتمثل المهمة الجوهرية لـ OperationOutput في توفير بيانات الإخراج الصرفة للروتين بشكل مهيكل، مع التأكيد الصريح على أن RoutineIdentifier ليس جزءاً من هيكل البيانات هذا [SWS_DM_00633].
دورة الحياة
بصفته هيكل بيانات خفيف الوزن (struct)، يمتلك OperationOutput دورة حياة قيمة بسيطة. ويتم إنشاء المثيل عند الحاجة بواسطة تطبيق التشخيص التكيّفي بمجرد إتمام أمر موجه إلى الروتين (مثل البدء أو الإيقاف أو الاستعلام عن النتيجة) بنجاح. عنصر البيانات الوحيد هو responseData من النوع ara::core::Vector<std::uint8_t>[SWS_DM_00633]. يخصص التطبيق المتجه ويملؤه ببيانات الإرجاع الخاصة بالتطبيق ويمرر الهيكل الجاهز إلى نظام التشخيص الفرعي. ويُرجح أن يتم الإرجاع إلى إطار عمل التشخيص بشكل غير متزامن عبر أنواع Result أو Future الخاصة بـ ara::core (Interpretation: اتفاقية الواجهة غير المتزامنة لـ Adaptive Platform). سؤال Q-e672dfb8b9ff416a (مفتوح) بعد التمرير، تنتقل مسؤولية التسلسل إلى ara::diag. بمجرد إرسال البيانات أو إدراجها في مخازن مؤقتة داخلية، يتم إتلاف الهيكل مرة أخرى عند مغادرة نطاق الصلاحية المعني. وفيما يتعلق بالتزامن، تجدر الإشارة إلى أن OperationOutput يُنشأ لسياق تنفيذ عملية مفردة؛ ولا يحدث وصول مشترك غير محمي عبر عدة خيوط معالجة بشكل معتاد.
مسار الاستخدام
يتضمن المسار المعتاد لاستخدام OperationOutput عدة مراحل متتالية:
استلام الطلب: يرسل عميل التشخيص طلب RoutineControl خاصاً بـ UDS، وتقوم طبقة التشخيص بإعادة توجيهه إلى مثيل GenericRoutine المختص SWS Diagnostics ص. 84.
إنشاء النتيجة: بعد التنفيذ الناجح، يُنشئ التطبيق نسخة من OperationOutput ويملأ responseData بقيم البايتات الناتجة [SWS_DM_00633].
تمرير الاستجابة: يُعاد الهيكل كنتيجة عملية إيجابية إلى ara::diag.
إرسال الاستجابة: من المفترض أن تتولى إدارة التشخيص الإضافة التلقائية لـ RoutineIdentifier كبادئة لحقل responseData عند تجميع استجابة UDS (Interpretation: استكمال ترويسة البروتوكول بواسطة الخفي) وترسل الحزمة بأكملها إلى العميل [SWS_DM_00633]. سؤال Q-ccdd2867b87d00d1 (مفتوح)
مخطط تسلسلي: المسار النموذجي لتوفير البيانات عبر OperationOutput عند التنفيذ الناجح للروتين. المصادر: [SWS_DM_00633]، SWS Diagnostics ص. 80.
سيناريوهات الأخطاء
إذا حدث خطأ أثناء معالجة الروتين أو كانت بيانات الإدخال الممررة غير صالحة، فسيتم إحباط مسار استخدام OperationOutput. وفي حالة حدوث خطأ، يُرجح أن يرسل التطبيق رمز خطأ إلى إدارة التشخيص بدلاً من OperationOutput، مما يثير استجابة UDS سلبية (Interpretation: مسار الخطأ عبر Result/Error-Domain). سؤال (مفتوح) وبذلك، فإن الشرط المسبق الأساسي لاستخدام OperationOutput هو اكتمال عملية الروتين بالكامل وخلوها من الأخطاء. وكشرط لاحق، يضمن التطبيق أن responseData يحتوي حصرياً على بيانات الحمولة النافعة الصرفة لرسالة الاستجابة الإيجابية ولا يحتوي على أي بادئات بروتوكول مثل RoutineIdentifier[SWS_DM_00633]. وإذا اكتمل روتين ما بنجاح ولكنه لم يولد أي بيانات إرجاع إضافية، فسيظل المتجه responseData فارغاً SWS Diagnostics ص. 70.
يستند هذا الدليل إلى مواصفة AUTOSAR Adaptive لوحدة Diagnostics (R25-11). تعتمد التوضيحات على مقتطف المواصفة وتخضع لإطار الافتراضات الموثق.
مخطط الفئات UML
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني