يحدد سلوك التزامن لعمليات الوصول بالقراءة والكتابة على محتويات SOVD في Diagnostic Management.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 21b2907a6642المصدرأسئلة مفتوحة (3)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
يحدد سلوك التزامن لعمليات الوصول بالقراءة والكتابة على محتويات SOVD في Diagnostic Management.
يحدد الهيكل ara::diag::SovdContentConcurrencyType سلوك التزامن لمحتويات SOVD المرتبطة بالمنافذ في AUTOSAR Adaptive [SWS_DM_02182]. ويتحكم عبر ثلاث سمات فيما إذا كان يجوز لـ Diagnostic Management تنفيذ عمليات القراءة والكتابة على منفذ التطبيق بالتوازي أو يجب عليه تسلسلها. وافتراضيًا، يتم تهيئة جميع الحقول بشكل وقائي على kNotConcurrent، بحيث يتعين على المطورين تمكين التزامن صراحةً كما في readWrite[SWS_DM_02185]. وينبغي إتمام التهيئة قبل بدء اتصال التشخيص لضمان معالجة آمنة للخيوط (thread-safe).
السياق
تم التصريح عن بنية البيانات ara::diag::SovdContentConcurrencyType في ملف الرأس ara/diag/concurrency.h وتُستخدم لتحديد سلوك التزامن للمنافذ في سياق Service-Oriented Vehicle Diagnostics (SOVD) [SWS_DM_02182]. في البنى القائمة على AUTOSAR Adaptive Platform، يعمل Diagnostic Management (DM) ككيان مركزي لمعالجة طلبات التشخيص الواردة SWS Diagnostics ص. 79. عندما تبدأ عملاء التشخيص الخارجيون عمليات وصول للقراءة أو الكتابة إلى محتويات التشخيص عبر SOVD، يجب أن يكون Diagnostic Management قادراً على تحديد ما إذا كان Adaptive Application الموفّر أو المنفذ المقترن به قادراً على معالجة عدة طلبات بشكل متزامن وآمن للخيوط (thread-safe).
لهذا الغرض، يحدد SovdContentConcurrencyType ثلاث سمات تكوين لعمليات القراءة فقط، وعمليات الكتابة فقط، بالإضافة إلى عمليات القراءة والكتابة المشتركة SWS Diagnostics §8.8.3 «Struct: SovdContentConcurrencyType». وبالتالي، تعمل البنية كواجهة تكوين بين تنفيذ المنفذ من جانب التطبيق والتحكم في تسلسل التشغيل الخاص بـ Diagnostic Management.
باعتبارها بنية (struct) لنقل البيانات والتكوين فقط، تمتلك SovdContentConcurrencyType دورة حياة بسيطة دون إدارة ديناميكية للموارد أو آليات معقدة للتحكم في الحالة الداخلية [SWS_DM_02182].
يتم إنشاء النسخة عادةً خلال مرحلة التكوين والتهيئة لـ Adaptive Application، ويُرجح أن يكون ذلك على مكدس الذاكرة (stack) أو كجزء من فئة إدارة منافذ عليا قبل بدء اتصال التشخيص. سؤال Q-f78487eff58a4775 (مفتوح) تتم تهيئة جميع المتغيرات الأعضاء افتراضياً بشكل دفاعي عند إنشاء الكائن:
يتم ملء read مسبقاً بشكل افتراضي بـ ConcurrencyType::kNotConcurrent[SWS_DM_02183].
يتم ملء write مسبقاً بشكل افتراضي بـ ConcurrencyType::kNotConcurrent[SWS_DM_02184].
يتم ملء readWrite مسبقاً بشكل افتراضي بـ ConcurrencyType::kNotConcurrent[SWS_DM_02185].
فيما يتعلق بالتزامن ومسارات التنفيذ (threading): البنية نفسها هي كائن تكوين غير تفاعلي (passive) دون آليات مزامنة خاصة به. لذلك، يجب الانتهاء من التعديلات على الحقول قبل تسليم البنية إلى Diagnostic Management أو قراءتها من قبل عدة خيوط. بعد التسجيل في المنفذ، يظل التكوين دون تغيير طوال فترة تشغيل منفذ التشخيص المعني (تفسير: التعديل الديناميكي في وقت التشغيل لاتصال التشخيص غير منصوص عليه في المواصفة). سؤال Q-71f96ed7cd3a6f61 (مفتوح) يتم تنظيف نسخة البنية بعد انتهاء نطاق صلاحيتها وفقاً لدلالات C++ القياسية دون الحاجة إلى إجراءات تنظيف إضافية.
مسار الاستخدام
يتضمن مسار الاستخدام النموذجي تعريف إمكانيات المنفذ بواسطة التطبيق، وتوفيرها في وقت التشغيل، وتقييمها بواسطة Diagnostic Management:
تكوين الإمكانيات: يقوم Adaptive Application بإنشاء كائن من النوع SovdContentConcurrencyType. إذا كان تنفيذ دوال المنفذ مصمماً ليكون آمناً للخيوط، يتم تعيين السمات المقابلة بشكل هادف إلى ConcurrencyType::kConcurrent. يشير ضبط readWrite على kConcurrent صراحةً إلى Diagnostic Management بأنه يُسمح باستدعاء واجهات برمجة التطبيقات (APIs) للقراءة والكتابة في آنٍ واحد [SWS_DM_02185].
الحفاظ على السلوك الافتراضي: ما لم يكن تنفيذ المنفذ قابلاً لإعادة الدخول (reentrant) أو متزامناً داخلياً، يترك المطور القيم على kNotConcurrent[SWS_DM_02183]، [SWS_DM_02184]. تفسير: يضمن Diagnostic Management في هذه الحالة تنفيذ الطلبات الواردة لهذا المنفذ بشكل تسلسلي لتجنب تعارض البيانات. سؤال (مفتوح)
التحكم في تسلسل التشغيل بواسطة DM: أثناء التشغيل، يستقبل Diagnostic Management طلبات SOVD خارجية. استناداً إلى التكوين المحفوظ، يحدد DM ما إذا كان يمكن توجيه استدعاءات الدوال المتوازية لروتينات القراءة والكتابة إلى المنفذ أو ما إذا كانت التسلسلة إلزامية تماماً SWS Diagnostics §8.8.3.1.2 «readWrite».
تم إنشاء هذا الدليل بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R25-11.
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني