DEENESPTFRRUARHIKOZHNL

نطاق أسماء ara::sm::s2r

دليل المستخدممولَّد بالذكاء الاصطناعي

ينسق الدخول إلى حالة Suspend-to-RAM والخروج منها للتطبيقات التكيفية.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a8390997dcdf المصدر أسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

ينسق الدخول إلى حالة Suspend-to-RAM والخروج منها للتطبيقات التكيفية.

ينسّق نطاق الأسماء ara::sm::s2r آلية Suspend-to-RAM لتحسين أوقات إيقاف التشغيل وبدء التشغيل في AUTOSAR Adaptive Platform (SWS StateManagement §7.5 «Interaction with Suspend-to-RAM Functionality»). ومن خلال المكوّن المركزي S2RHub ومثيلات S2RSatellite المسجلة، يتم إخطار العمليات القادرة على S2R قبل الدخول في حالة خمول نظام التشغيل، وإعادتها إلى التشغيل المنتظم عند الاستيقاظ. وبوصفه قيدًا أساسيًا، فإن الاستخدام عبر نهج StateMachine الداخلي يستبعد بشكل صارم الوصول عبر C++-API، بينما تؤمّن عمليات التحقق من IAM جميع سياقات العمليات المعنية ([SWS_SM_00684]).

السياق

يوفر نطاق الأسماء ara::sm::s2r وظائف لتنسيق Suspend-to-RAM (S2R) داخل الموديل State Management. ويتمثل الهدف من هذه الآلية في تحسين أوقات إيقاف تشغيل الآلة وبدء تشغيلها، من خلال استخدام حالة خمول لنظام التشغيل قائمة على RAM بدلاً من إيقاف التشغيل الكامل وبدء التشغيل على البارد (SWS StateManagement §7.5 «Interaction with Suspend-to-RAM Functionality»). وقبل الانتقال إلى حالة تعليق نظام التشغيل، يجب إلغاء تنشيط الكيانات الوظيفية التي تفتقر إلى دعم S2R، وإخطار العمليات التي تم تمييز ملفها التنفيذي بوصفه suspendToRamAware في الوقت المناسب (SWS StateManagement §7.5 «Interaction with Suspend-to-RAM Functionality»).

تمثل الفئة S2RHub المحور المركزي، حيث تتحكم في الاتصال مع مثيلات الفئة المجردة S2RSatellite (SWS StateManagement §7.5.1 «S2R Hub»). ويمكن أن تتم أوركسترا S2RHub إما داخليًا عبر نهج StateMachine الخاص بـ State Management أو خارجيًا عبر C++-API (على سبيل المثال في SMControlApplication)؛ ويستبعد كلا النهجين بعضهما البعض بشكل صارم ([SWS_SM_00684]، SWS StateManagement ص. 96). وتكون عمليات الوصول إلى المركز وتسجيل التوابع مؤمّنة بواسطة Identity and Access Management (IAM) ([SWS_SM_00706]، [SWS_SM_00714]، [SWS_SM_00715]).

diag_s2r_kontext sm_control SMControlApplication / State Management hub ara::sm::s2r::S2RHub sm_control->hub ينسق التعليق والاستئناف satellite ara::sm::s2r::S2RSatellite hub->satellite koordiniert Suspend-Modus process S2R-Aware Process satellite->process يستدعي عمليات معاودة الاتصال iam IAM (Identity & Access Management) iam->hub validiert Prozesskontext iam->satellite authentifiziert Satelliten

مخطط السياق: التفاعل بين State Management وS2RHub وS2RSatellite وIAM. المصادر: SWS StateManagement §7.5.1 «S2R Hub»، [SWS_SM_00684]، [SWS_SM_00715].

دورة الحياة

تتم تهيئة مثيل ara::sm::s2r::S2RHub اعتمادًا على النهج المعماري: في وضع StateMachine، يُنشئ State Management المثيل تلقائيًا بمجرد انتهاء عناصر قائمة الإجراءات EnterSuspendToRam أو EnterSuspendToRamOS أو LeaveSuspendToRam ([SWS_SM_00690]). وعند استدعاء منشئ الفئة ara::sm::s2r::S2RHub::S2RHub، يتم التحقق عبر IAM مما إذا كان سياق العملية الحالي يتطابق مع التكوين SuspendToRamHubMapping.process ([SWS_SM_00706]). ولا يُسمح إلا للعمليات المصرح لها بإجراء إنشاء المثيل ([SWS_SM_00714]).

تتم تهيئة التوابع عبر دالة المصنع ara::sm::s2r::S2RSatellite::Create ([SWS_SM_00716]). وبما أن S2RSatellite فئة مجردة، فيُرجّح أن يتم تنفيذ اشتقاق خاص بالتطبيق لتوفير الاستجابات المحددة (تفسير). سؤال Q-e4747345883235e0 (مفتوح) ويتم التسجيل في المركز بصورة نشطة من خلال استدعاء ara::sm::s2r::S2RSatellite::Offer ([SWS_SM_00710]). ويتحقق المركز من صحة سياق عملية التابع استنادًا إلى SuspendToRamSatelliteMapping.process ([SWS_SM_00715]). ويظل التابع في حالة التسجيل النشط حتى يُلغي تسجيله مجددًا عبر ara::sm::s2r::S2RSatellite::StopOffer ([SWS_SM_00710]، [SWS_SM_00713]).

فيما يتعلق بدورة حياة آلات الحالة، يسري القيد الذي يقضي بعدم جواز تكوين الحالات المسؤولة عن حالة التعليق باستخدام عنصر قائمة الإجراءات LeaveSuspendToRam ([SWS_SM_CONSTR_00035]). وهذا العنصر مخصص حصريًا لمرحلة العودة عند الاستيقاظ (SWS StateManagement ص. 98).

مسار الاستخدام

ينقسم الاستخدام النموذجي لنطاق الأسماء إلى التسجيل، والتحضير لحالة الخمول، وتعليق نظام التشغيل، بالإضافة إلى الاستيقاظ اللاحق:

  1. التسجيل: يُنشئ التطبيق القادر على S2R التابع الخاص به ويستدعي ara::sm::s2r::S2RSatellite::Offer لتسجيل الدخول في المركز ([SWS_SM_00710]). ومن المفترض أن يتم الإخطار بين المركز والتوابع عبر الاتصال بين العمليات الداخلي للمنصة (تفسير). سؤال (مفتوح)
  2. طلب التعليق: يستدعي مستوى التحكم ara::sm::s2r::S2RHub::RequestToEnterSuspendMode ([SWS_SM_00701]). وفي نهج StateMachine، يتم إطلاق ذلك بواسطة العنصر EnterSuspendToRam، مع تمرير قيمة التكوين الخاصة به maxActionItemDuration كمعلمة مهلة زمنية ([SWS_SM_00689]).
  3. إخطار التوابع: يعنون المركز جميع التوابع المسجلة ويباشر تنفيذ رد النداء ara::sm::s2r::S2RSatellite::EnterSuspendMode ([SWS_SM_00701]، [SWS_SM_00711]). ويعود RequestToEnterSuspendMode بمجرد استجابة جميع التوابع، أو إلغاء تسجيلها، أو حدوث مهلة زمنية ([SWS_SM_00702]).
  4. إيقاف نظام التشغيل مؤقتًا: من خلال استدعاء ara::sm::s2r::S2RHub::EnterSuspendToRamOs (أو عبر عنصر قائمة الإجراءات EnterSuspendToRamOs)، يتم بدء حالة الخمول الفعلية لنظام التشغيل ([SWS_SM_00692]).
  5. تنسيق الاستيقاظ: بعد إعادة التشغيل، يتم استدعاء ara::sm::s2r::S2RHub::RequestToLeaveSuspendMode ([SWS_SM_00703]، [SWS_SM_00691]). ويوجّه المركز التوابع لتنفيذ رد النداء ara::sm::s2r::S2RSatellite::LeaveSuspendMode ([SWS_SM_00703]، [SWS_SM_00711]).
  6. إلغاء التسجيل: إذا لم تعد إحدى العمليات ترغب في مواصلة المشاركة، فإنها تُلغي تسجيلها عبر ara::sm::s2r::S2RSatellite::StopOffer ([SWS_SM_00710]، [SWS_SM_00713]).
سير تنسيق Suspend-to-RAMAufrufer (SMControlApplication / SM)ara::sm::s2r::S2RHubara::sm::s2r::S2RSatelliteOffer()Use Case: الانتقال إلى حالة التعليقRequestToEnterSuspendMode(timeout)EnterSuspendMode()إشعار الرد بالجاهزيةResultEnterSuspendToRamOs()Use Case: مغادرة حالة التعليقRequestToLeaveSuspendMode()LeaveSuspendMode()تأكيد أو kRejectedGesamtergebnisUse Case: DeregistrierungStopOffer()

مخطط التسلسل: ترتيب الاستدعاءات لتحضير وإنهاء Suspend-to-RAM. المصادر: [SWS_SM_00701]، [SWS_SM_00702]، [SWS_SM_00703]، [SWS_SM_00707]، [SWS_SM_00710]، [SWS_SM_00711].

سيناريوهات الأخطاء

تظهر شروط خطأ محددة في التفاعل بين الفئات:

  • انتهاك IAM عند إنشاء المركز: إذا لم يتطابق سياق العملية عند استدعاء منشئ الفئة مع SuspendToRamHubMapping.process، فسيتم إطلاق الانتهاك InsufficientPermissionsViolation والإبلاغ عن حدث الأمان SEV_ACCESS_CONTROL_SM_IAM_ACCESS_DENIED</a> ([SWS_SM_00706]).
  • رفض التوابع غير الموثقة: إذا انحرف سياق S2RSatellite عن العملية المودعة في SuspendToRamSatelliteMapping، يرفض المركز التسجيل ([SWS_SM_00715]).
  • متطلب المصادقة لدى التابع: في حالة تعيين التكوين Force IAM switch، يفشل ara::sm::s2r::S2RSatellite::Create برمز الخطأ kAuthenticationRequired ([SWS_SM_00716]).
  • تجاوز مهلة الاتصال: إذا لم يستجب تابع معنْوَن خلال مرحلة التعليق أو الاستيقاظ ضمن المهلة الزمنية timeout، تُرجع العملية رمز الخطأ kCommunicationTimeout ([SWS_SM_00707]).
  • مشكلات عند مغادرة وضع التعليق: إذا استجاب تابع واحد على الأقل بصورة سلبية بـ kRejected على طلب مغادرة وضع التعليق، فإن RequestToLeaveSuspendMode يؤكد النتيجة الإجمالية بـ kAtLeastOneHadIssuesToLeave ([SWS_SM_00707]).
  • استخدام API متزامن: يُحظر الاستخدام المتزامن لـ C++-API الخاصة بـ S2RHub إلى جانب نهج StateMachine الداخلي، ويؤدي ذلك إلى حالات عدم اتساق ([SWS_SM_00684]).

يستند هذا الدليل إلى مواصفة AUTOSAR_AP_SWS_StateManagement (الإصدار R25-11).

الفئات

S2RHub فئة

S2RHub class.

S2RSatellite abstract class.

مخطط الفئة

Abgerundete Rahmen = Namespace- bzw. Klassen-Scopes; hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); graue Boxen = namespace-fremde bzw. externe Basisklassen. Klicken öffnet die jeweilige Klassen- bzw. cppreference-Seite.

G cluster_ns ara::sm::s2r nara__sm__s2r__S2RHub S2RHub nara__sm__s2r__S2RSatellite S2RSatellite