DEENESPTFRRUARHIKOZHNL

Intrusion Detection System Manager (IdsM)

ModulIdsM (Intrusion Detection System Manager)
BSW-Modul-ID108
Standard-Header#include "IdsM.h"
SWS-SpezifikationAUTOSAR_SWS_IntrusionDetectionSystemManager.pdf
ClusterSecurity & Intrusion Detection

دليل الوحدةمولَّد بالذكاء الاصطناعي

يجمع الأحداث الأمنية من الحساسات، ويصفيها، ويمرر الأحداث المؤهلة إلى المصارف.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: claude-opus-5-5 · الجهد: high · درجة الحرارة: غير قابل للتحكم · الموجّه: cd24ae65ba9c المصدر أسئلة مفتوحة (2)
المرساة السببية: R20-11 صالح اعتبارًا من R20-11 مُركَّب حديثًا لهذا الإصدار من المواصفة.
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يجمع الأحداث الأمنية من الحساسات، ويصفيها، ويمرر الأحداث المؤهلة إلى المصارف.

يجمع IdsM أحداث الأمان (Security Events) التي تبلغ عنها وحدات BSW وCDDs وSW-Cs، ويخزنها مؤقتًا ويعالجها بشكل غير متزامن في IdsM_MainFunction [SWS_IdsM_00702]. ويحولها كل من Reporting Mode وسلسلة ترشيح تتكون من مرشحات حالة الحظر وأخذ العينات والتجميع وعتبة الحد إلى أحداث مؤهلة [SWS_IdsM_01004]. وتنتقل هذه الأحداث عبر PduR إلى IdsR أو تُخزن في DEM/Sem. وتُعد الطوابع الزمنية والتوقيع والوصول التشخيصي اختيارية. ولا يقيّم IdsM دلالة بيانات السياق؛ وتقع الاستجابة للهجمات خارج نطاق الوحدة.

يستقبل IdsM أحداث الأمان (SEv) من حساسات الأمان، أي من وحدات BSW وCDDs وSW-Cs. وعبر سلسلة ترشيح، يحولها إلى أحداث أمان مؤهلة (QSEv) [SWS_IdsM_00902]. ويرسل أحداث QSEv عبر PduR إلى IdsR، أو يخزنها في DEM/Sem أو كليهما [SWS_IdsM_01202] [SWS_IdsM_01600]. ولا يقيّم دلالة بيانات السياق. وتقع الاستجابة للهجمات خارج نطاق الوحدة، في مركز العمليات الأمنية (SOC) مثلًا [SWS_IdsM_CONSTR_00001].

kontext sensoren المستشعرات (BSW، CDD، SW-C عبر RTE) idsm IdsM sensoren->idsm IdsM_SetSecurityEvent… bswm BswM bswm->idsm IdsM_BswM_StateChanged dcm Dcm dcm->idsm IdsM_Dcm_…ReportingMode… stbm StbM idsm->stbm StbM_GetCurrentTime swc SW-C (CustomTimestamp) idsm->swc IdsM_CustomTimestamp.Get csm Csm idsm->csm Csm_SignatureGenerate nvm NvM idsm->nvm NvM_WriteBlock pdur PduR idsm->pdur PduR_IdsMTransmit dem Dem / Sem (DRAFT) idsm->dem QSEv speichern det Det idsm->det Det_ReportError csm->idsm IdsM_CsmNotification pdur->idsm IdsM_CopyTxData, IdsM_TxConfirmation, IdsM_TpTxConfirmation idsr IdsR (وحدة تحكم إلكترونية أخرى ECU) pdur->idsr IDS-Nachricht

مخطط السياق: يربط IdsM الحساسات المُبلغة بمصارف PduR/IdsR وDEM/Sem. ويرتبط كل من BswM وStbM وCSM وDCM وNvM اختياريًا. المصادر: SWS IdsM ص. 20، [SWS_IdsM_91023]

تبلغ الحساسات عبر IdsM_SetSecurityEvent أو أحد المتغيرات الخمسة مع بيانات السياق (حتى 1500 بايت)، والعداد، والطابع الزمني [SWS_IdsM_00300] [SWS_IdsM_00404] [SWS_IdsM_00501]. وتستخدم دائمًا الاسم الرمزي لـ IdsMEvent [SWS_IdsM_00607] أثناء ذلك. ولا تقوم خدمة الإبلاغ إلا بالتخزين المؤقت لـ SEv. أما المعالجة الفعلية فتجري بشكل غير متزامن في IdsM_MainFunction [SWS_IdsM_00702]. وإذا لم يتوفر مخزن أحداث مؤقت (Event Buffer) شاغر، يطلق IdsM حدث SEv داخليًا، إذا كان قد تم تكوينه [SWS_IdsM_00703].

يبدأ التأهيل بـ Reporting Mode. والقيم المحتملة هي OFF وBRIEF وDETAILED والمتغيرات التي تتجاوز المرشحات [SWS_IdsM_01002] [SWS_IdsM_91013]. بعد ذلك، تعمل المرشحات النشطة بترتيب ثابت: Block State وForward Every n-th وAggregation وThreshold [SWS_IdsM_01004]. وإذا استبعد أحد المرشحات حدث SEv، ينتهي التقييم [SWS_IdsM_01005]. وقبل الإرسال إلى IdsR، تُطبق بالإضافة إلى ذلك قيود المعدل وحركة المرور [SWS_IdsM_01070]. ويُرجح أن تنطبق هذه القيود أيضًا على أوضاع التجاوز (تفسير). سؤال (مفتوح)

filterkette a SEv من ذاكرة الأحداث المؤقتة (Event Buffer) (IdsM_MainFunction) rm Reporting Mode? (IdsMReportingModeFilter) a->rm bs Block State Filter: aktueller Zustand in IdsMBlockState? rm->bs BRIEF / DETAILED drop SEv verworfen rm->drop OFF q QSEv rm->q BRIEF_ / DETAILED_ BYPASSING_FILTERS fn Forward Every n-th Filter: weiterzuleitendes Ereignis? bs->fn لا bs->drop نعم ag Event Aggregation Filter: Intervallende erreicht? fn->ag نعم fn->drop لا coll تم تجميعه في فاصل التجميع الزمني (تجميع العداد) ag->coll لا th Event Threshold Filter: Summe mindestens IdsMEventThresholdNumber? ag->th نعم، عداد إجمالي th->drop لا th->q نعم sink Konfigurierte Senken q->sink lim Rate Limitation، ثم Traffic Limitation sink->lim IdsMSinkIdsR (تفسير: حتى في حالة التجاوز) dem Dem / Sem (DRAFT) sink->dem IdsMSinkDem lim->drop تجاوز الحد idsr PduR an IdsR lim->idsr ضمن الحدود

مخطط الأنشطة: أولاً Reporting Mode، ثم سلسلة الترشيح، وأخيرًا قيود المثيل قبل IdsR. المصادر: SWS IdsM ص. 35، [SWS_IdsM_01004]، [SWS_IdsM_01070]

اختياريًا، يمكن تفعيل وظائف إضافية [SWS_IdsM_01100] [SWS_IdsM_01204] [SWS_IdsM_01901] [SWS_IdsM_01702]:

  • طابع زمني من StbM أو من التطبيق
  • توقيع عبر CSM
  • قراءة Reporting Mode وتعديله عبر DCM، مع الاستدامة عبر NvM والتراجع عند حدوث أخطاء

لا يُبلغ IdsM وحدة DET بأخطاء التطوير إلا عند تفعيل IdsMDevErrorDetect [SWS_IdsM_02003]. ويكون لمصرف DEM/Sem في R20-11 الحالة DRAFT [SWS_IdsM_01601].

الدور: من حدث الأمان المُبلغ عنه إلى الحدث المؤهل

يجمع Intrusion Detection System Manager (IdsM) أحداث الأمان (SEv). وتكتشفها حساسات الأمان وتبلغ عنها، أي وحدات BSW أو Complex Device Drivers أو SW-Cs SWS IdsM ص. 10. يفحص IdsM كل SEv بمقارنته مع تسلسل قابل للتكوين من المرشحات، يُدعى سلسلة الترشيح. وإذا اجتاز SEv هذا الفحص، فإنه يصبح حدث أمان مؤهلاً (QSEv) [SWS_IdsM_00902]. ولا تتم معالجة سوى أحداث QSEv فقط. وتنتقل عبر PduR إلى IdsR على وحدة تحكم إلكترونية أخرى، أو تُحفظ في DEM/Sem أو كليهما [SWS_IdsM_01202] [SWS_IdsM_01600] SWS IdsM ص. 35.

حُددت حدود النظام بدقة متناهية. لا يعرف IdsM دلالة بيانات السياق، وبالتالي لا يقرر بنفسه ما إذا كان النظام قد تعرض للاختراق. يقع الاكتشاف والاستجابة خارج نطاق الوحدة، في مركز العمليات الأمنية (SOC) مثلًا [SWS_IdsM_CONSTR_00001]. ولا توجد واجهات إلزامية مع وحدات أخرى [SWS_IdsM_91023]. ويتم تفعيل كل ربط عبر التكوين. ويتضح ذلك من تضمينات ملفات الترويسة الشرطية:

  • Det.h عند IdsMDevErrorDetect
  • Dem.h عند IdsMSinkDem
  • Dcm.h عند IdsMDiagnosticSupport
  • NvM.h عند IdsMNvmBlockDescriptor
  • PduR.h عند IdsMSinkIdsR

أدلة على عمليات التكامل هذه: من [SWS_IdsM_00101] إلى [SWS_IdsM_00105].

kontext sensoren المستشعرات (BSW، CDD، SW-C عبر RTE) idsm IdsM sensoren->idsm IdsM_SetSecurityEvent… bswm BswM bswm->idsm IdsM_BswM_StateChanged dcm Dcm dcm->idsm IdsM_Dcm_…ReportingMode… stbm StbM idsm->stbm StbM_GetCurrentTime swc SW-C (CustomTimestamp) idsm->swc IdsM_CustomTimestamp.Get csm Csm idsm->csm Csm_SignatureGenerate nvm NvM idsm->nvm NvM_WriteBlock pdur PduR idsm->pdur PduR_IdsMTransmit dem Dem / Sem (DRAFT) idsm->dem QSEv speichern det Det idsm->det Det_ReportError csm->idsm IdsM_CsmNotification pdur->idsm IdsM_CopyTxData, IdsM_TxConfirmation, IdsM_TpTxConfirmation idsr IdsR (وحدة تحكم إلكترونية أخرى ECU) pdur->idsr IDS-Nachricht

مخطط السياق: يقع IdsM بين الحساسات المبلغة ومصارف PduR/IdsR وكذلك DEM/Sem. توفر BswM وStbM وCSM وDCM وNvM حالة التشغيل والوقت والتوقيع والوصول التشخيصي. المصادر: SWS IdsM ص. 20، SWS IdsM ص. 14، [SWS_IdsM_01022]، [SWS_IdsM_01104]، [SWS_IdsM_01206]، [SWS_IdsM_01701]

بدء التشغيل، وهوية الحدث، وواجهات الإبلاغ

يقوم IdsM_Init بتهيئة جميع المتغيرات الداخلية وينقل الوحدة إلى الحالة «مهيأة» [SWS_IdsM_00202] [SWS_IdsM_91001]. يُسمح فقط باستدعاء IdsM_Init وIdsM_GetVersionInfo قبل هذا الوقت SWS IdsM ص. 21. لا يؤدي استدعاء IdsM_Init مجددًا إلى تهيئة الوحدة مرة ثانية [SWS_IdsM_00204].

lebenszyklus start Start uninit غير مهيأ start->uninit uninit->uninit واجهة API أخرى غير IdsM_Init / IdsM_GetVersionInfo: Det_ReportError IDSM_E_UNINIT (فقط مع IdsMDevErrorDetect) init Initialisiert uninit->init IdsM_Init(configPtr): تمت تهيئة كافة المتغيرات الداخلية init->init استدعاء IdsM_Init مجدداً: لا تتم إعادة التهيئة، Det_ReportError IDSM_E_ALREADY_INITIALIZED (فقط مع IdsMDevErrorDetect) init->init IdsM_MainFunction, Melde-Dienste, Callbacks

مخطط الحالة: تعرف الوحدة حالتين. تبلغ الاستدعاءات الخاطئة في كلتا الحالتين عن خطأ إلى DET فقط عند تفعيل اكتشاف أخطاء التطوير. المصادر: [SWS_IdsM_00202]، [SWS_IdsM_00203]، [SWS_IdsM_00204]، SWS IdsM ص. 21

يتم تحديد كل SEv من خلال ثلاثة معرفات واسم الحدث [SWS_IdsM_00600]:

  • IdsMExternalEventId فريد عالميًا ومأخوذ من Security Extract. القيمة 0xFFFF غير صالحة [SWS_IdsM_00603] [SWS_IdsM_00604].
  • القيمة الافتراضية لـ IdsMSensorInstanceId هي 0، إذا كان هناك مثيل وحدة واحد فقط [SWS_IdsM_00608].
  • يحسب IdsM القيمة IdsMInternalEventId داخليًا [SWS_IdsM_00601].

تبلغ الحساسات حصريًا عبر الاسم الرمزي لحاوية IdsMEvent. لا يجوز لها الاعتماد على القيمة الداخلية [SWS_IdsM_00602] [SWS_IdsM_00607]. تتوفر ست خدمات للإبلاغ:

الخدمةالبيانات الإضافيةالمرجع
IdsM_SetSecurityEventلا يوجد[SWS_IdsM_00300]
IdsM_SetSecurityEventWithContextDataبيانات السياق[SWS_IdsM_00301]
IdsM_SetSecurityEventWithCountعداد (Smart Sensor)[SWS_IdsM_00401]
IdsM_SetSecurityEventWithCountContextDataعداد، بيانات السياق[SWS_IdsM_00402]
IdsM_SetSecurityEventWithTimestampCountطابع زمني، عداد[SWS_IdsM_00403]
IdsM_SetSecurityEventWithTimestampCountContextDataطابع زمني، عداد، بيانات السياق[SWS_IdsM_00404]

يمرر الحساس بيانات السياق كمؤشر إلى مصفوفة بايتات. يتم دعم ما يصل إلى 1500 بايت [SWS_IdsM_00501] [SWS_IdsM_00502]. من يمتلك طابعًا زمنيًا ولكن ليس لديه عداد خاص به، يقوم بالإبلاغ باستخدام count = 1 [SWS_IdsM_00405].

تصل SW-Cs ذات المعرفات الخارجية في النطاق 0x8000–0xFFFE إلى IdsM عبر واجهات الخدمة IdsMService_{EventName} أو IdsMSmartSensorService_{EventName}. تعتمد الواجهة المطبقة على IdsMAdditionalParameterOption (None، Count، CountTimestamp) [SWS_IdsM_91027] [SWS_IdsM_91028] [SWS_IdsM_01301] [SWS_IdsM_01303]. في R20-11، تعد هذه الخدمات معيارية. تصنفها الإصدارات اللاحقة على أنها OBSOLETE SWS IdsM ص. 67.

التخزين المؤقت والمعالجة غير المتزامنة في IdsM_MainFunction

لا تعالج خدمات الإبلاغ الـ SEv على الفور. يقوم IdsM أولاً بإيداعه في Event Buffer. تتم التصفية وإعادة التوجيه لاحقًا وبشكل غير متزامن في IdsM_MainFunction المستدعاة دوريًا [SWS_IdsM_00702] [SWS_IdsM_00901] [SWS_IdsM_91000]. عدد الـ Event Buffers (IdsMNumberOfEventBuffers) قابل للتكوين [SWS_IdsM_00701]. كقيمة توجيهية، توصي المواصفة بعدد مثيلات مرشح التجميع مضافًا إليه الحد الأقصى للأحداث المعالجة بشكل متوازٍ SWS IdsM ص. 24.

الإبلاغ والمعالجة غير المتزامنة لحدث SEvSensorIdsMBswDefaultTaskStbMالمصب (PduR / Dem)Use Case: الإبلاغ في سياق المستشعرIdsM_SetSecurityEvent(securityEventId)أو أحد المتغيرات الخمسةSEv in Event Buffer ablegenربط ذاكرة بيانات السياق المؤقتة (Context Data Buffer) عند اللزومالعودة (void)Use Case: Zyklische VerarbeitungIdsM_MainFunction()optIdsMTimestampOption = AUTOSAR, kein Zeitstempel gemeldetStbM_GetCurrentTime()aktuelle Zeitكافة أحداث SEv المخزنة مؤقتاً: Reporting Mode،Filterkette, Zeitstempel zuordnenoptSEv als QSEv qualifiziertQSEv an konfigurierte Senken

مخطط التسلسل: يعود البلاغ فورًا بعد التخزين المؤقت. لا يتبع الطابع الزمني والتصفية وإعادة التوجيه إلا في IdsM_MainFunction. المصادر: SWS IdsM ص. 86، [SWS_IdsM_00702]، [SWS_IdsM_00901]، [SWS_IdsM_01107]

توجد بيانات السياق في Context Data Buffers مخصصة بحجم قابل للتكوين يصل إلى 1500 بايت [SWS_IdsM_00704] SWS IdsM ص. 122. يختار IdsM مخزنًا مؤقتًا بالحجم نفسه أو بالحجم الأكبر التالي ويربطه بـ Event Buffer [SWS_IdsM_00705] [SWS_IdsM_00706]. لا يشغل الـ SEv بدون بيانات سياق مثل هذا المخزن المؤقت [SWS_IdsM_00709]. توجد مخازن مؤقتة مخصصة ومنفصلة لـ SEvs الداخلية الخاصة بـ IdsM نفسه [SWS_IdsM_00802].

puffer a استلام SEv عبر خدمة الإبلاغ b Event Buffer frei? a->b c Interner SEv IDSM_INTERNAL_EVENT_NO_EVENT_BUFFER_AVAILABLE (falls konfiguriert) b->c لا d SEv in Event Buffer speichern b->d نعم x تعذر معالجة SEv c->x e Kontextdaten gemeldet? d->e f هل تتوفر ذاكرة Context Data Buffer شاغرة بنفس الحجم أو بالحجم الأكبر التالي؟ e->f نعم i متابعة معالجة SEv بدون بيانات السياق e->i لا g ربط Context Data Buffer بذاكرة الأحداث المؤقتة Event Buffer f->g نعم h Interner SEv IDSM_INTERNAL_EVENT_NO_CONTEXT_DATA_BUFFER_AVAILABLE (falls konfiguriert) f->h لا j Asynchrone Verarbeitung in IdsM_MainFunction g->j h->i i->j

مخطط النشاط: هكذا يتم تخصيص المخازن المؤقتة عند ورود SEv. في حالة غياب مخزن السياق المؤقت، تتم معالجة الـ SEv بدون بيانات سياق. في حالة غياب Event Buffer، لا يمكن التعامل مع الـ SEv. المصادر: [SWS_IdsM_00703]، [SWS_IdsM_00705]، [SWS_IdsM_00707]، [SWS_IdsM_00708]، [SWS_IdsM_91015]، SWS IdsM ص. 27

التأهيل: Reporting Mode، وسلسلة المرشحات، وحدود المثيل

يقيم IdsM أولاً الـ Reporting Mode. يمتلك كل SEv مرشح Reporting-Mode واحد بالضبط. هذا المرشح إلزامي، ويرتبط مباشرة بالـ SEv ولا ينتمي إلى سلسلة المرشحات [SWS_IdsM_01010] [SWS_IdsM_01011]. تأتي قيمة البدء من IdsMReportingModeFilter [SWS_IdsM_01012]. لا تتبع سلسلة المرشحات إلا بعد ذلك [SWS_IdsM_01002]. يعرف IdsM_Filters_ReportingModeType هذه الأنماط [SWS_IdsM_91013]:

  • IDSM_REPORTING_MODE_OFF: لا يتم الإبلاغ عن الحدث.
  • IDSM_REPORTING_MODE_BRIEF: إبلاغ بدون بيانات سياق.
  • IDSM_REPORTING_MODE_DETAILED: إبلاغ مع بيانات سياق.
  • المتغيران …_BYPASSING_FILTERS: إبلاغ مماثل لـ BRIEF أو DETAILED، ولكن بدون تصفية.

سلسلة المرشحات مخصصة للـ SEv [SWS_IdsM_01001] [SWS_IdsM_00903]. تحتاج كل IdsMFilterChain إلى مرشح واحد على الأقل [SWS_IdsM_CONSTR_00002]. تعمل المرشحات النشطة بترتيب ثابت [SWS_IdsM_01004]. إذا أسقط أحد المرشحات الـ SEv، ينتهي التقييم فورًا. وإلا يذهب الـ SEv إلى المرشح التالي [SWS_IdsM_00904] [SWS_IdsM_00905] [SWS_IdsM_01005]. المرشحات الأربعة بهذا الترتيب:

  1. Block State: يبلغ BswM عن الحالة الحالية عبر IdsM_BswM_StateChanged كقناع بتات من النوع IdsM_Filters_BlockStateType. إذا تمت الإشارة إلى هذه الحالة في IdsMBlockState، يسقط المرشح الـ SEv [SWS_IdsM_01022] [SWS_IdsM_01023] [SWS_IdsM_91017]. يمكن للمرشح الإشارة إلى ما يصل إلى 16 حالة SWS IdsM ص. 85.
  2. Forward Every n-th: يمر أول SEv، وبعد ذلك كل n-th وفقًا لـ IdsMNthParameter. تظل البيانات دون تغيير أثناء ذلك [SWS_IdsM_01031] [SWS_IdsM_01032] [SWS_IdsM_01033].
  3. Event Aggregation: لا يمرر المرشح أي شيء أثناء الفاصل الزمني. في نهاية الفاصل الزمني ينشأ SEv واحد مع عداد المجموع [SWS_IdsM_01043] [SWS_IdsM_01046]. تأتي بيانات السياق والطابع الزمني من الـ SEv الأول أو الأخير في الفاصل الزمني، اعتمادًا على IdsMContextDataSourceSelector [SWS_IdsM_01047] [SWS_IdsM_01049]. يوضح SWS IdsM ص. 40 مثالاً.
  4. Event Threshold: يسقط المرشح SEvs طالما أن مجموع العداد في الفاصل الزمني الجاري أقل من IdsMEventThresholdNumber. مع انتهاء الفاصل الزمني يتم إعادة تعيين المجموع [SWS_IdsM_01061] [SWS_IdsM_01062] [SWS_IdsM_01063]. يوضح SWS IdsM ص. 41 مثالاً.

جميع الفواصل الزمنية هي مضاعفات لـ IdsMMainFunctionPeriod. يبدأ تشغيل فترات التجميع والعتبة اعتبارًا من أول استدعاء لـ Main Function [SWS_IdsM_01050] [SWS_IdsM_01051] [SWS_IdsM_01065].

قبل الإرسال إلى IdsR، يسري حدان على مثيل IdsM بأكمله [SWS_IdsM_01070]:

  • يسمح تحديد المعدل بحد أقصى قدره IdsMRateLimitationMaximumEvents QSEvs لكل فاصل زمني [SWS_IdsM_01081].
  • يسمح تحديد حركة المرور بحد أقصى قدره IdsMTrafficLimitationMaximumBytes بايت لكل فاصل زمني [SWS_IdsM_01091] [SWS_IdsM_01093].

لا تمر الـ SEvs الداخلية الخاصة بـ IdsM عبر مرشحات المثيل هذه. ومع ذلك، يجوز أن يكون لها مرشحات خاصة بالحدث [SWS_IdsM_00803] [SWS_IdsM_00804]. تفسير: تتجاوز أنماط التجاوز (Bypass) سلسلة المرشحات فقط. سؤال (مفتوح) ومن المحتمل أن يسري تحديد المعدل وتحديد حركة المرور عليها أيضًا، لأن [SWS_IdsM_01070] يتطلب هذه القيود قبل كل إرسال إلى IdsR.

filterkette a SEv من ذاكرة الأحداث المؤقتة (Event Buffer) (IdsM_MainFunction) rm Reporting Mode? (IdsMReportingModeFilter) a->rm bs Block State Filter: aktueller Zustand in IdsMBlockState? rm->bs BRIEF / DETAILED drop SEv verworfen rm->drop OFF q QSEv rm->q BRIEF_ / DETAILED_ BYPASSING_FILTERS fn Forward Every n-th Filter: weiterzuleitendes Ereignis? bs->fn لا bs->drop نعم ag Event Aggregation Filter: Intervallende erreicht? fn->ag نعم fn->drop لا coll تم تجميعه في فاصل التجميع الزمني (تجميع العداد) ag->coll لا th Event Threshold Filter: Summe mindestens IdsMEventThresholdNumber? ag->th نعم، عداد إجمالي th->drop لا th->q نعم sink Konfigurierte Senken q->sink lim Rate Limitation، ثم Traffic Limitation sink->lim IdsMSinkIdsR (تفسير: حتى في حالة التجاوز) dem Dem / Sem (DRAFT) sink->dem IdsMSinkDem lim->drop تجاوز الحد idsr PduR an IdsR lim->idsr ضمن الحدود

مخطط النشاط: أولاً Reporting Mode، ثم المرشحات بترتيب ثابت، وأخيرًا حدود المثيل قبل IdsR. يتم حذف المرشحات غير المكونة. المصادر: SWS IdsM ص. 35، [SWS_IdsM_01002]، [SWS_IdsM_01004]، [SWS_IdsM_01070]، [SWS_IdsM_91013]

الطابع الزمني، ورسالة IDS، والمصارف

الطابع الزمني اختياري ويتم التحكم فيه عالميًا عبر IdsMTimestampOption [SWS_IdsM_01100]:

إذا قدم الحساس نفسه طابعًا زمنيًا، فتكون له الأولوية [SWS_IdsM_01108]. يقتطعه IdsM إلى البتات الـ 62 الأقل أهمية [SWS_IdsM_01110]. وفقًا لمخططات التسلسل، يحدد IdsM الطابع الزمني في Main Function لجميع الأحداث المخزنة مؤقتًا SWS IdsM ص. 87.

zeitstempel a QSEv aufbereiten opt IdsMTimestampOption? a->opt none لا يوجد طابع زمني؛ يتم تجاهل الطابع الزمني المبلغ معه opt->none None given هل تم الإبلاغ عن الطابع الزمني من الحساس أيضًا؟ opt->given AUTOSAR / Custom trunc القص إلى 62 بتًا منخفضة الأهمية واستخدامها given->trunc نعم src المصدر وفقًا للخيار؟ given->src لا add Zeitstempel in QSEv aufnehmen trunc->add stbm StbM_GetCurrentTime() src->stbm AUTOSAR cust ‏IdsM_CustomTimestamp، العملية Get عبر المنفذ CustomTimestamp src->cust Custom stbm->add cust->add

مخطط النشاط: كيفية اختيار مصدر الطابع الزمني اعتمادًا على IdsMTimestampOption. المصادر: [SWS_IdsM_01106]، [SWS_IdsM_01107]، [SWS_IdsM_01108]، [SWS_IdsM_01109]، [SWS_IdsM_01110]، SWS IdsM ص. 86

يمتلك الـ QSEv البنية نفسها بغض النظر عن المصرف الذي يتجه إليه [SWS_IdsM_01200]. تتكون رسالة IDS من Event Frame واختياريًا Timestamp وContext Data وSignature PRS IDS ص. 11. يحدد تكوين IdsMEvent المصارف التي يستخدمها الحدث [SWS_IdsM_01201].

التوقيع اختياري. يصبح نشطًا عالميًا بمجرد تكوين IdsMCsmJobReference. ويتم إطلاقه عبر Csm_SignatureGenerate. في المهام المتزامنة يتوفر التوقيع فورًا، وفي المهام غير المتزامنة يبلغ IdsM_CsmNotification عن النتيجة [SWS_IdsM_01204] [SWS_IdsM_01206] [SWS_IdsM_01207] [SWS_IdsM_01208].

بالنسبة للمصرف IdsR، يرسل IdsM عبر PduR_IdsMTransmit [SWS_IdsM_01498]. إذا كانت الرسالة تتسع في Bus-PDU، فإنه يستخدم IF-PDU، وإلا يستخدم TP-PDU [SWS_IdsM_01400] [SWS_IdsM_01401]. لا يتبع أمر إرسال جديد إلا بعد تأكيد الأمر السابق [SWS_IdsM_01499]. يخزن المصرف DEM/Sem رسالة IDS الكاملة. ولديه الحالة DRAFT في R20-11 [SWS_IdsM_01601] [SWS_IdsM_01602].

توقيع QSEv وإرساله إلى IdsRIdsMCsmPduRUse Case: Optional: Signatur (IdsMCsmJobReference konfiguriert)Csm_SignatureGenerate()altsynchroner Csm-Jobالعودة: التوقيع متاح فوراًasynchroner Csm-JobIdsM_CsmNotification()Use Case: الإرسال (IdsMSinkIdsR)PduR_IdsMTransmit()altرسالة IDS تتسع داخل PDU ناقل واحد (IdsMIfTxPdu)IdsM_TxConfirmation(TxPduId, result)وإلا فالتجزئة (IdsMTpTxPdu)loopحتى يتم نسخ PDU بالكاملIdsM_CopyTxData(id, info, retry, availableDataPtr)BufReq_ReturnTypeIdsM_TpTxConfirmation(id, result)Kein weiteres PduR_IdsMTransmitقبل التأكيد

مخطط التسلسل: أولاً التوقيع الاختياري عبر CSM، ثم الإرسال كـ IF-PDU أو TP-PDU مجزأة مع التأكيد. المصادر: [SWS_IdsM_01207]، [SWS_IdsM_01208]، [SWS_IdsM_01500]، [SWS_IdsM_01501]، [SWS_IdsM_01502]، SWS IdsM ص. 49

إعادة التكوين التشخيصي واستمرارية الـ Reporting Mode

الوصول التشخيصي اختياري ويتم تفعيله عبر IdsMDiagnosticSupport [SWS_IdsM_01800].

  • التعديل: يستدعي DCM الدالة IdsM_Dcm_SetReportingMode_Start بالقيمة الجديدة [SWS_IdsM_01901] [SWS_IdsM_91008]. إذا كان النمط أو معرف الحدث غير صالح، يجيب IdsM بـ E_NOT_OK وDCM_E_REQUESTOUTOFRANGE [SWS_IdsM_01902] [SWS_IdsM_01903].
  • القراءة: يستدعي DCM أولاً IdsM_Dcm_GetReportingMode_Start ثم يجلب النتيجة باستخدام IdsM_Dcm_GetReportingMode_RequestResults [SWS_IdsM_02001] [SWS_IdsM_02002].

بعد تعديل ناجح، يطلق IdsM العملية NvM_WriteBlock [SWS_IdsM_01701]. وإذا فشل الحفظ الدائم، فإنه يستعيد القيمة السابقة ويبلغ عن DCM_E_GENERALPROGRAMMINGFAILURE [SWS_IdsM_01702] [SWS_IdsM_01904] [SWS_IdsM_01905].

عند بدء التشغيل، يستخدم IdsM القيم المحفوظة دائمًا. إذا كانت مفقودة، يسري التكوين [SWS_IdsM_01703] [SWS_IdsM_01704]. يجب أن تكون كتلة NvM متضمنة في NvM_ReadAll وتسمى IdsM_NvMRamBlockData أو IdsM_NvMRomBlockData [SWS_IdsM_01705] [SWS_IdsM_01706] [SWS_IdsM_01707]. يُفترض أن يعلم DCM بنتيجة الحفظ الدائم عبر استدعاءات متكررة باستخدام OpStatus DCM_PENDING. سؤال Q-65ac99385a597b7d (مفتوح) تذكر نسخة لاحقة DCM_E_BUSYREPEATREQUEST SWS IdsM ص. 75 لذلك.

تغيير Reporting Mode وقراءته عبر التشخيصDcmIdsMNvMUse Case: تغيير Reporting ModeIdsM_Dcm_SetReportingMode_Start(In_SecurityEventId,In_SensorInstanceId, In_ReportingMode, OpStatus, ErrorCode)altReporting Mode أو Event-ID غير صالحE_NOT_OK, DCM_E_REQUESTOUTOFRANGEالمعلمات صالحةتغيير IdsMReportingModeFilterNvM_WriteBlock()تفسير: يتم الإبلاغ عن نتيجة الحفظ الدائمعبر استدعاءات مع OpStatus DCM_PENDINGaltPersistierung fehlgeschlagenالرجوع إلى Reporting Mode السابقE_NOT_OK, DCM_E_GENERALPROGRAMMINGFAILUREPersistierung erfolgreichE_OKUse Case: Reporting Mode lesenIdsM_Dcm_GetReportingMode_Start(In_SecurityEventId,In_SensorInstanceId, OpStatus, ErrorCode)E_OK / DCM_E_PENDING / E_NOT_OKIdsM_Dcm_GetReportingMode_RequestResults(OpStatus,Out_ReportingMode, ErrorCode)Out_ReportingMode

مخطط التسلسل: تعديل الـ Reporting Mode مع الحفظ الدائم في NvM والتراجع، بالإضافة إلى القراءة على مرحلتين. المصادر: [SWS_IdsM_01901]، [SWS_IdsM_01904]، [SWS_IdsM_01905]، [SWS_IdsM_91007]، SWS IdsM ص. 74. تم تحديد مسار استجابة الحفظ الدائم كتفسير.

التصرف في حالة الخطأ

لا يبلغ IdsM عن أخطاء التطوير إلى DET إلا عند تفعيل IdsMDevErrorDetect. توجد رموز الأخطاء في [SWS_IdsM_02003]:

  • IDSM_E_PARAM_INVALID: تبلغ جميع خدمات الإبلاغ الست عن هذا الخطأ في حال وجود معرف حدث غير معروف. تبلغ متغيرات العداد عنه إضافيًا عندما تكون count = 0 [SWS_IdsM_02101] [SWS_IdsM_02103] [SWS_IdsM_02106].
  • IDSM_E_PARAM_LENGTH: يحدث الخطأ عندما يتجاوز contextDataSize أكبر IdsMContextDataBufferSize [SWS_IdsM_02107] [SWS_IdsM_02109].
  • يتم الإبلاغ أيضًا عن الاستدعاءات قبل التهيئة وعن التهيئة المزدوجة [SWS_IdsM_00203] [SWS_IdsM_00204].

انتبه للتسمية: يذكر [SWS_IdsM_00203] الرمز IDSM_E_PARAM_UNINIT، بينما يدرجه جدول الأخطاء كـ IDSM_E_UNINIT (0x0D) [SWS_IdsM_02003].

يبلغ IdsM عن اختناقات الموارد كـ SEvs داخلية خاصة به، طالما تم تكوينها [SWS_IdsM_91015]:

إذا أسقط أحد المرشحات SEv، فهذا سلوك نظامي وليس خطأ [SWS_IdsM_00904]. يصل خطأ الإرسال كـ E_NOT_OK في التأكيد [SWS_IdsM_91009]. لا تتوفر قاعدة إعادة المحاولة مع IdsMTransmissionRetryDelay إلا في R25-11 SWS IdsM ص. 51.

أدلة تفصيلية إضافية

دليل تم إنشاؤه بواسطة الذكاء الاصطناعي بناءً على مقتطفات المواصفات في الحمولة (AUTOSAR Classic Platform R20-11). المعيارية فقط هي المتطلبات المرتبطة. العبارات المحددة كتفسير ليست مغطاة بالكامل بواسطة المصادر.

Intrusion Detection System Manager (IdsM)

Collects and reports onboard security events to detect threats.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

دالة IdsM_Init [SWS_IdsM_91001] 📄 PDF

void IdsM_Init (const IdsM_ConfigType* configPtr);

Service to initialize the module IdsM. It initializes all variables and sets the module state to initialized.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 27dab8d4c20f المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الواجهة المتزامنة وغير القابلة لإعادة الدخول IdsM_Init للتهيئة الأساسية للوحدة IdsM وفقًا لـ [SWS_IdsM_91001]. عند الاستدعاء، تقوم الخدمة بتهيئة كافة المتغيرات الداخلية وتنقل IdsM إلى الحالة مهيأ ([SWS_IdsM_00202]). عبر معلمة الإدخال configPtr، تقبل الدالة مؤشرًا إلى هيكل التكوين الخاص بالوحدة ([SWS_IdsM_91001]).

يمثل تنفيذ IdsM_Init شرطًا أساسيًا وظيفيًا إلزاميًا لتشغيل الوحدة. إذا تم استدعاء واجهة برمجة تطبيقات (API) لـ IdsM بخلاف IdsM_Init أو IdsM_GetVersionInfo في الحالة غير المهيأة بعد، فستبلغ الوحدة عند تنشيط اكتشاف أخطاء التطوير (IdsMDevErrorDetect) عن الخطأ IDSM_E_PARAM_UNINIT عبر Det_ReportError ([SWS_IdsM_00203]، انظر أيضًا رمز الخطأ 0x0D تحت [SWS_IdsM_02003]).

تنطبق قواعد سلوك محددة على معالجة الأخطاء وسياق الاستدعاء:

  • إذا تم استدعاء IdsM_Init بينما تكون الوحدة بالفعل في الحالة مهيأ، فلن تتم إعادة تهيئة المتغيرات الداخلية ([SWS_IdsM_00204]).
  • بدلاً من ذلك، تبلغ الوحدة عند تنشيط IdsMDevErrorDetect عبر Det_ReportError عن خطأ التطوير IDSM_E_ALREADY_INITIALIZED بالقيمة العددية 0x0E ([SWS_IdsM_00204]، [SWS_IdsM_02003]).
  • لا تحتوي الدالة على قيمة إرجاع وهي معرّفة على أنها غير قابلة لإعادة الدخول ([SWS_IdsM_91001]). لذلك، لا يجوز استدعاؤها في النظام بشكل متزامن أو عبر سياقات مقاطِعة عدة مرات في الوقت نفسه.

تم إنشاء هذه الملاحظة بواسطة ذكاء اصطناعي استناداً إلى مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_MainFunction [SWS_IdsM_91000] 📄 PDF

void IdsM_MainFunction (void);

This function is called periodically. It processes security events asynchronously which are queued during API function calls.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 74bdc1b72d90 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

تُستدعى الدالة IdsM_MainFunction دوريًا وتكون متاحة عبر ملف الترويسة IdsM.h [SWS_IdsM_91000]. تمتلك التوقيع void IdsM_MainFunction(void)، ولا تقبل أي معلمات وليست لها قيمة إرجاع [SWS_IdsM_91000]. استدعاء الدالة نفسه متزامن، ولكنه يخدم المعالجة غير المتزامنة لأحداث الأمان (Security Events, SEv) التي تم إدراجها سابقًا في قوائم انتظار أثناء استدعاءات API متزامنة [SWS_IdsM_91000]. ويُرجح أن يتم التحفيز الدوري نمطيًا بواسطة مجدول BSW أو مهمة نظام تشغيل دورية. سؤال Q-86e2e870c3496bad (مفتوح)

التزامن والقيود

وفقًا للمواصفة، صُنفت IdsM_MainFunction على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_IdsM_91000]. لذلك، يجب على بيئة النظام المستدعية ضمان تنفيذ الدالة في أي وقت ضمن مثيل واحد فقط وعدم حدوث استدعاءات متداخلة.

التفاعل أثناء معالجة الأحداث

تتضمن المهمة الرئيسية في إطار المعالجة الدورية الجوانب التالية:

  • ذاكرة التخزين المؤقت للأحداث: بعد استلام SEv، يقوم IdsM بتخزينه في Event Buffer؛ وتتم إدارة وتصفية ذاكرات التخزين المؤقت هذه بشكل غير متزامن في إطار IdsM_MainFunction [SWS_IdsM_00702].
  • ذاكرة التخزين المؤقت لبيانات السياق: إذا تم استلام SEv مع بيانات السياق، يستخدم IdsM ذاكرات تخزين مؤقت مناسبة من Context Data Buffer Pool؛ كما تتم معالجة وتصفية ذاكرات التخزين المؤقت هذه أيضًا بشكل غير متزامن في IdsM_MainFunction [SWS_IdsM_00705].
  • التأهيل: تتم معالجة أحداث SEv المخزنة في Event Buffers بشكل غير متزامن لتحديدها كأحداث أمان مؤهلة (QSEv) [SWS_IdsM_00901].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على المواصفة R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_CopyTxDataManager [SWS_IdsM_91010] 📄 PDF

BufReq_ReturnType IdsM_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

This function is called to acquire the transmit data of an I-PDU segment (N-PDU). Each call to this function provides the next part of the I-PDU data unless retry->TpDataState is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry->TxTpDataCnt. The size of the remaining data is written to the position indicated by availableDataPtr.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 5f2ff6078796 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستدعى دالة الاسترجاع (Callback) بشكل متزامن وقابل لإعادة الدخول لجلب بيانات الإرسال لأجزاء من I-PDU (N-PDU) [SWS_IdsM_91010]. وهي متاحة عبر ملف الترويسة IdsM_Cbk.h وتخدم معرف الخدمة 0x43 [SWS_IdsM_91010].

يتم تحديد I-PDU المراد نقلها عبر id [SWS_IdsM_91010]. تمرر المعلمة info المخزن المؤقت للوجهة (SduDataPtr) بالإضافة إلى طول البايت المطلوب (SduLength)؛ وتُستخدم القيمة 0 لـ SduLength (حيث يجوز أن يكون SduDataPtr هو NULL_PTR) لتغييرات الحالة في المعلمة retry أو للاستعلام عن البيانات المتبقية [SWS_IdsM_91010]. وعبر availableDataPtr تُبلغ الدالة عن كمية البيانات المتبقية في المخزن المؤقت للإرسال Tx، مما يتيح لبروتوكولات النقل ذات الحمولات الديناميكية (مثل FrIsoTp) تحديد حجم إطارات Consecutive Frames اللاحقة [SWS_IdsM_91010].

إذا كان retry هو NULL_PTR، يجوز تحرير البيانات المنسوخة من المخزن المؤقت فورًا بعد عملية النسخ [SWS_IdsM_91010]. وإلا فإن RetryInfoType يتحكم في معالجة الأخطاء: في حالة TP_CONFPENDING تظل البيانات المنسوخة سابقًا في مخزن TP المؤقت، بينما يؤكد TP_DATACONF ويحرر جميع البيانات المنسوخة قبل هذا الاستدعاء [SWS_IdsM_91010]. وإذا كان TpDataState مضبوطًا على TP_DATARETRY، تنسخ الدالة البيانات المنقولة سابقًا مرة أخرى بدءًا من إزاحة البايت المحددة بواسطة TxTpDataCnt [SWS_IdsM_91010].

تُرجع الدالة BUFREQ_OK عند نجاح النسخ الكامل [SWS_IdsM_91010]. وإذا لم تكن هناك بيانات إرسال كافية متاحة، فلن يتم نسخ أي بيانات وتُرجع BUFREQ_E_BUSY، وبناءً على ذلك يمكن للوحدة النمطية التابعة تكرار الاستدعاء [SWS_IdsM_91010]. وإذا فشل الطلب، يتم إرجاع BUFREQ_E_NOT_OK دون قبول البيانات [SWS_IdsM_91010].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_SetSecurityEvent [SWS_IdsM_91002] 📄 PDF

void IdsM_SetSecurityEvent (IdsM_SecurityEventIdType securityEventId);

This API is the application interface to report security events to the IdsM.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: b7f6437d402e المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة IdsM_SetSecurityEvent كواجهة للتطبيقات للإبلاغ عن أحداث الأمان إلى الوحدة IdsM (Intrusion Detection System Manager) [SWS_IdsM_91002].

الاستخدام وسياق الاستدعاء

يتم الاستدعاء بشكل متزامن عبر ملف الرأس IdsM.h مع معرف الخدمة 0x03 [SWS_IdsM_91002]. يتم تمرير معرف حدث الأمان كمعلمة التمرير الوحيدة:

  • securityEventId (IN، IdsM_SecurityEventIdType): المعرف الفريد لحدث الأمان المبلغ عنه [SWS_IdsM_91002].

لا تحتوي الدالة على قيمة إرجاع (void) [SWS_IdsM_91002].

معالجة الأخطاء

إذا تم تنشيط اكتشاف أخطاء التطوير (IdsMDevErrorDetect)، تتحقق الوحدة من المعلمة securityEventId مقابل أحداث الأمان المكونة [SWS_IdsM_02101]. إذا تم تمرير معرف حدث غير معروف لم يتم تكوينه في IdsMEvent، يبلغ IdsM عن خطأ التطوير IDSM_E_PARAM_INVALID [SWS_IdsM_02101].

التزامن والقيود

تم تحديد الدالة على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_IdsM_91002]. لذلك، يجب مزامنة أو تجنب الاستدعاءات المتزامنة أو المقاطِعة من سياقات مختلفة بواسطة المتصل.

تستند ملاحظة الاستخدام هذه إلى مواصفات منصة AUTOSAR Classic في الإصدار R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_SetSecurityEventWithContextData [SWS_IdsM_91003] 📄 PDF

void IdsM_SetSecurityEventWithContextData (IdsM_SecurityEventIdType securityEventId, const uint8* contextData, uint16 contextDataSize);

This API is the application interface to report security events with context data to the IdsM.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f5f82ae60185 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة IdsM_SetSecurityEventWithContextData كواجهة تطبيق للإبلاغ المتزامن عن أحداث الأمان إلى جانب بيانات السياق الاختيارية إلى Intrusion Detection System Manager ([SWS_IdsM_91003]). وليست لها قيمة إرجاع.

المعاملات والاستخدام

  • securityEventId: معرف فريد لحدث الأمان المُبلَّغ عنه ([SWS_IdsM_91003]).
  • contextData: مؤشر إلى بيانات سياق اختيارية؛ وإذا لم تكن هناك بيانات سياق متاحة، يجب تمرير NULL_PTR ([SWS_IdsM_91003]).
  • contextDataSize: حجم بيانات السياق المقدمة بالبايت ([SWS_IdsM_91003]).

معالجة الأخطاء

عند تفعيل اكتشاف التطوير (IdsMDevErrorDetect)، تجري الوحدة النمطية IdsM عمليات التحقق التالية:

  • إذا لم تكن securityEventId الممررة صادرة من أحداث الأمان المهيأة في IdsMEvent، يُبلَّغ عن خطأ التطوير IDSM_E_PARAM_INVALID ([SWS_IdsM_02102]).
  • إذا تجاوز contextDataSize الحد الأقصى لحجم المخزن المؤقت المهيأ لبيانات السياق (المحدد عبر أكبر قيمة ذات معلمات لـ IdsMContextDataBufferSize)، يُبلَّغ عن خطأ التطوير IDSM_E_PARAM_LENGTH ([SWS_IdsM_02107]).

التزامن والتكامل

حُددت الواجهة على أنها غير قابلة لإعادة الدخول (Non Reentrant) ([SWS_IdsM_91003]). لذلك يجب على المستدعين التأكد من تجنب الاستدعاءات المتزامنة المتنافسة أو مزامنتها وفقًا لذلك. التصريح متاح عبر ملف الترويسة IdsM.h ([SWS_IdsM_91003]).

تم إنشاء هذا النص بواسطة نظام ذكاء اصطناعي استنادًا إلى مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_SetSecurityEventWithCount [SWS_IdsM_91018] 📄 PDF

void IdsM_SetSecurityEventWithCount (IdsM_SecurityEventIdType securityEventId, uint16 count);

This API is the application interface for Smart Sensors to report security events with a count value to the IdsM.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 1b4c7b27b68c المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تمثل الدالة المتزامنة IdsM_SetSecurityEventWithCount (معرّف الخدمة 0x05) واجهة التطبيق للمستشعرات الذكية (Smart Sensors) لنقل أحداث الأمان (Security Events، SEvs) جنبًا إلى جنب مع قيمة عدّ إلى IdsM [SWS_IdsM_91018]، [SWS_IdsM_00401]. وبذلك يمكن لـ IdsM استلام الأحداث مع عدّاد تم حسابه مسبقًا بواسطة المستشعر [SWS_IdsM_00401]. يتم توفير التصريح عن الدالة عبر ملف الترويسة IdsM.h [SWS_IdsM_91018].

تتوقع الدالة عند الاستدعاء معلَمتي إدخال:

  • securityEventId: معرّف حدث الأمان من النوع IdsM_SecurityEventIdType [SWS_IdsM_91018].
  • count: قيمة عدّ من النوع uint16، صادرة عن المستشعر وتعمل كقيمة بدء أولية للحدث [SWS_IdsM_91018]، [SWS_IdsM_00401].

لا تُرجع الدالة أي قيمة إرجاع ولا تحدد معاملات إخراج [SWS_IdsM_91018]. وفيما يتعلق بالتزامن وسياق الاستدعاء، فإن الدالة مُصرّح عنها بأنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_IdsM_91018]؛ لذا يجب تجنب الاستدعاءات المتوازية من جانب البرمجيات.

بالنسبة لمعالجة الأخطاء، تم تحديد أن IdsM يتحقق من المعاملين securityEventId وcount عند تفعيل ميزة اكتشاف التطوير (IdsMDevErrorDetect) [SWS_IdsM_02103]. وإذا تم تمرير معرّف حدث غير معروف أو كانت قيمة count تساوي 0، يتم الإبلاغ عن خطأ التطوير IDSM_E_PARAM_INVALID [SWS_IdsM_02103].

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بواسطة ذكاء اصطناعي استنادًا إلى مواصفات AUTOSAR.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_SetSecurityEventWithCountContextData [SWS_IdsM_91019] 📄 PDF

void IdsM_SetSecurityEventWithCountContextData (IdsM_SecurityEventIdType securityEventId, uint16 count, const uint8* contextData, uint16 contextDataSize);

This API is the application interface for Smart Sensors to report security events with a count value and context data to the IdsM.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 2006a1c85bf9 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة IdsM_SetSecurityEventWithCountContextData كواجهة تطبيق لأجهزة الاستشعار الذكية للإبلاغ المتزامن عن أحداث الأمان بقيمة عداد وبيانات سياق اختيارية إلى [SWS_IdsM_91019].

الاستخدام والمعلمات

يتم الاستدعاء بشكل متزامن وهو محدد على أنه غير قابل لإعادة الدخول (Non Reentrant) [SWS_IdsM_91019]:

  • securityEventId: معرف فريد لحدث الأمان [SWS_IdsM_91019].
  • count: قيمة العداد التي تُستخدم كقيمة أولية لحدث الأمان [SWS_IdsM_91019].
  • contextData: مؤشر إلى مصفوفة بايتات تحتوي على بيانات السياق المراد تقديمها [SWS_IdsM_00502]. إذا لم تكن هناك بيانات سياق متاحة، يجب تمرير NULL_PTR [SWS_IdsM_91019].
  • contextDataSize: حجم بيانات السياق الممررة بالبايت [SWS_IdsM_91019]. تدعم الدالة حدًا أقصى للطول يصل إلى 1500 بايت [SWS_IdsM_00501].

معالجة الأخطاء

عند تفعيل اكتشاف التطوير (IdsMDevErrorDetect)، تراقب الوحدة النمطية المعاملات الممررة للتحقق من صحتها:

  • يُبلَّغ عن خطأ التطوير IDSM_E_PARAM_INVALID إذا تم تمرير securityEventId غير معروفة أو إذا كانت قيمة count تساوي 0 [SWS_IdsM_02104].
  • إذا تجاوز contextDataSize الحد الأقصى لحجم المخزن المؤقت المهيأ (المحدد بواسطة أكبر IdsMContextDataBufferSize مهيأة)، يبلغ IdsM عن خطأ التطوير IDSM_E_PARAM_LENGTH [SWS_IdsM_02108].

لا تُرجع الدالة أي قيمة إرجاع [SWS_IdsM_91019]؛ ويُرجح أن يستند التفاعل مع الخطأ في حالة حدوثه بشكل أساسي إلى الإبلاغ عبر DET. سؤال Q-135f4b865790f34d (مفتوح)

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة IdsM_SetSecurityEventWithTimestampCount [SWS_IdsM_91020] 📄 PDF

void IdsM_SetSecurityEventWithTimestampCount (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count);

This API is the application interface for Smart Sensors to report security events with a timestamp and a count value to the IdsM.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 2451b7e4c502 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الواجهة المتزامنة IdsM_SetSecurityEventWithTimestampCount للمستشعرات الذكية (Smart Sensors) للإبلاغ عن أحداث الأمان مع طابع زمني وقيمة عدّ إلى IdsM [SWS_IdsM_91020]. ولا تمتلك الدالة أي قيمة إرجاع وهي متاحة عبر ملف الترويسة IdsM.h [SWS_IdsM_91020].

تتم معالجة معاملات الإدخال التالية:

  • securityEventId: معرّف محدد لحدث الأمان المُبلّغ عنه [SWS_IdsM_91020].
  • timestamp: طابع زمني للإشارة إلى توقيت الحدث [SWS_IdsM_91020]. إذا كانت ميزة الطابع الزمني مفعّلة وتم تمرير طابع زمني، يستخدم IdsM هذا الطابع لتخزين حدث الأمان المؤهل (QSEv) أو إرساله [SWS_IdsM_01108]. أما إذا تم الإبلاغ عن الحدث بدون طابع زمني مع تفعيل الميزة، يضبط IdsM بت الخيار الخاص بالطابع الزمني في ترويسة البروتوكول على 0 قبل الإرسال أو التخزين [SWS_IdsM_01112].
  • count: قيمة عدّ كقيمة بدء لحدث الأمان [SWS_IdsM_91020]. وإذا لم يتوفر عدّاد محسوب مسبقًا، يمكن استدعاء الدالة بالقيمة 1 [SWS_IdsM_00405].

عند تفعيل ميزة اكتشاف التطوير (IdsMDevErrorDetect)، يتحقق IdsM من صحة الوسيطين securityEventId وcount. وإذا تم تمرير معرّف حدث غير معروف أو كانت قيمة count تساوي 0، تبلّغ الوحدة عن خطأ التطوير IDSM_E_PARAM_INVALID [SWS_IdsM_02105].

فيما يتعلق بالتزامن، تم تحديد الدالة على أنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_IdsM_91020].

تم إنشاء هذا النص تلقائيًا استنادًا إلى مواصفات AUTOSAR.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة IdsM_SetSecurityEventWithTimestampCountContextDataManager [SWS_IdsM_91021] 📄 PDF

void IdsM_SetSecurityEventWithTimestampCountContextData (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count, const uint8* contextData, uint16 contextDataSize);

This API is the application interface for Smart Sensors to report security events with a timestamp, a count value and context data to the IdsM.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a1b69abd8805 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة IdsM_SetSecurityEventWithTimestampCountContextData ذات معرّف الخدمة 0x08 كواجهة تطبيق قياسية للمستشعرات الذكية (Smart Sensors) للإبلاغ عن أحداث الأمان مع طابع زمني، وقيمة عدّ أولية، بالإضافة إلى بيانات سياق اختيارية إلى Intrusion Detection System Manager (IdsM) [SWS_IdsM_91021]. ويتم توفير التصريح عن هذه الواجهة عبر ملف الترويسة IdsM.h [SWS_IdsM_91021].

يتم تنفيذ الاستدعاء بشكل متزامن ويستخدم معاملات إدخال فقط، في حين لا توجد معاملات إدخال/إخراج ولا معاملات إخراج [SWS_IdsM_91021]. ويجب تمرير المعاملات التالية عند الاستدعاء [SWS_IdsM_91021]:

  • securityEventId: معرّف حدث الأمان المحدد المراد نقله إلى IdsM [SWS_IdsM_91021].
  • timestamp: قيمة الطابع الزمني التي تعمل كمرجع زمني لحدث الأمان الواقع [SWS_IdsM_91021].
  • count: قيمة عدّ يستخدمها IdsM كقيمة بدء لحدث الأمان المعني [SWS_IdsM_91021].
  • contextData: مؤشر إلى بيانات سياق اختيارية للحدث؛ وفي حال عدم توفر أي بيانات، يجب تمرير NULL_PTR [SWS_IdsM_91021].
  • contextDataSize: بيان عددي حول حجم بيانات السياق الممررة [SWS_IdsM_91021].

فيما يخص سلوك التنفيذ، صُنفت الدالة على أنها غير قابلة لإعادة الدخول (Non Reentrant) ولا تمتلك قيمة إرجاع (void) [SWS_IdsM_91021]. لذا يتعين على المستشعرات الذكية (Smart Sensors) المستدعية التأكد من عدم حدوث استدعاءات متزامنة أو متداخلة للواجهة [SWS_IdsM_91021].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي وهو مخصص للإرشاد والتوجيه.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_BswM_StateChanged [SWS_IdsM_91005] 📄 PDF

void IdsM_BswM_StateChanged (IdsM_Filters_BlockStateType state);

This callback function is invoked by the BswM to indicate ECU state changes.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 16285d55bd09 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يتم استدعاء دالة رد النداء IdsM_BswM_StateChanged ([SWS_IdsM_91005]) بواسطة BswM للإشارة إلى تغييرات حالة وحدة التحكم الإلكترونية الحالية إلى Intrusion Detection System Manager (IdsM) ([SWS_IdsM_91005]). تم التصريح عنها في ملف الرأس IdsM_Cbk.h ولديها معرف الخدمة 0x0F ([SWS_IdsM_91005]).

تمتلك الواجهة التوقيع void IdsM_BswM_StateChanged (IdsM_Filters_BlockStateType state) ([SWS_IdsM_91005]). تعمل معلمة الإدخال state من النوع IdsM_Filters_BlockStateType كقيمة التمرير الوحيدة، والتي تمثل حالة ECU الحالية ([SWS_IdsM_91005]). لا توجد معلمات إدخال/إخراج ولا معلمات إخراج، ولا تُرجع الدالة أي قيمة إرجاع ([SWS_IdsM_91005]). يتم تنفيذ الاستدعاء بشكل متزامن ويُصنف على أنه قابل لإعادة الدخول ([SWS_IdsM_91005]).

في التفاعل الوظيفي، تُستخدم خدمة الإشعار هذه لإبقاء IdsM مطلعًا باستمرار على الحالة الحالية بواسطة BswM ([SWS_IdsM_01022]). يتم الاحتفاظ بمعلومات الحالة المستلمة في IdsM وتقييمها أثناء المعالجة غير المتزامنة اللاحقة لمرشحات حالة الكتلة (block state filter) كجزء من الدالة الرئيسية (main function) ([SWS_IdsM_01022]). لم يتم تحديد رموز أخطاء معينة أو قيم إرجاع أو رسائل إلى إدارة أخطاء التطوير (DET) أو إدارة أحداث التشخيص (DEM) لهذا الاستدعاء ضمن نطاق المواصفات.

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا وتستند إلى متطلبات مواصفات AUTOSAR Classic R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_TpTxConfirmation [SWS_IdsM_91011] 📄 PDF

void IdsM_TpTxConfirmation (PduIdType id, Std_ReturnType result);

This function is called after the I-PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 127e922f9325 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُصرح دالة الاسترجاع IdsM_TpTxConfirmation كخدمة تزامنية وقابلة لإعادة الدخول عبر ملف الترويسة IdsM_Cbk.h [SWS_IdsM_91011]. وفقًا لـ [SWS_IdsM_01502]، تستقبل الوحدة IdsM عبر هذه الخدمة تأكيد الوحدة PduR لنقل PDU مجزأة. ويتم الاستدعاء بمجرد نقل I-PDU المعنية عبر الشبكة الأساسية [SWS_IdsM_91011].

تمتلك الواجهة معرف الخدمة 0x48 ولا تُرجع أي قيمة (void) [SWS_IdsM_91011]. عند الاستدعاء، يتم تمرير معاملي إدخال:

  • id (النوع PduIdType): تمييز فريد لـ I-PDU المنقولة [SWS_IdsM_91011].
  • result (النوع Std_ReturnType): يرسل نتيجة نقل I-PDU ويشير إلى ما إذا كانت عملية الإرسال ناجحة أم فاشلة [SWS_IdsM_91011].

لم يتم تحديد رموز أخطاء معينة أو إخطارات DET أو DEM لهذا الاستدعاء في المواصفات. وبفضل قابلية إعادة الدخول المحددة، يمكن استدعاء الدالة بواسطة الطبقة المستدعية بالتوازي لمختلف وحدات I-PDU [SWS_IdsM_91011]. تفسير: يُرجح أن تقوم الوحدة IdsM بتقييم معامل الحالة result لتحديث حالة النقل الداخلية لـ PDU المجزأة وتحرير مخازن الإرسال المؤقتة المشغولة بعد الاكتمال. سؤال Q-9179efcbf744346d (مفتوح)

تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويستند حصريًا إلى مواصفات AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة IdsM_TxConfirmation [SWS_IdsM_91009] 📄 PDF

void IdsM_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

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

الاستخدام

يتم استدعاء دالة رد النداء IdsM_TxConfirmation ([SWS_IdsM_91009]) بواسطة وحدة واجهة اتصال تابعة لتأكيد الإرسال الناجح لـ PDU أو فشل الإرسال. وهي معرّفة بشكل متزامن، ومُصرّح عنها في IdsM_Cbk.h ولا تمتلك قيمة إرجاع. وتستقبل المعاملات التالية:

  • TxPduId: معرّف الـ PDU المنقولة ([SWS_IdsM_91009]).
  • result: نتيجة الإرسال مع E_OK عند الإرسال الناجح أو E_NOT_OK عند حدوث خطأ ([SWS_IdsM_91009]).

التزامن والقيود

الدالة قابلة لإعادة الدخول بالنسبة لمعرّفات PDU المختلفة، ولكنها غير قابلة لإعادة الدخول بالنسبة لـ TxPduId نفسها ([SWS_IdsM_91009]).

التفاعل وشروط التسلسل

ينطبق شرط ترتيب صارم على تسلسل الإرسال: وفقًا لـ [SWS_IdsM_01499]، لا يُسمح لـ IdsM بإعادة استدعاء دالة الإرسال PduR_IdsMTransmit إلا بعد أن يتم مسبقًا استدعاء IdsM_TxConfirmation أو IdsM_TpTxConfirmation. تفسير: يُرجَّح أن يعمل ورود التأكيد في IdsM كمشغّل لإكمال الإرسال وإتاحة الاستدعاءات اللاحقة. سؤال Q-dd4013520e85370c (مفتوح)

معالجة الأخطاء

يتم الإبلاغ عن فشل إرسال PDU مباشرة عبر المعامل result = E_NOT_OK ([SWS_IdsM_91009]). لا توجد أكواد أخطاء DET أو DEM محددة موضحة في مواصفات الواجهة.

تم إنشاء هذا النص تلقائيًا استنادًا إلى مواصفات AUTOSAR CP R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة IdsM_Dcm_GetReportingMode_RequestResults [SWS_IdsM_91007] 📄 PDF

Std_ReturnType IdsM_Dcm_GetReportingMode_RequestResults (Dcm_OpStatusType OpStatus, uint8* Out_ReportingMode, Dcm_NegativeResponseCodeType* ErrorCode);

This function is a request from DCM to the IdsM to read the routine results triggered by function IdsM_Dcm_GetReportingMode_Start().

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 671f0dddec56 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

يتم استدعاء الدالة المتزامنة IdsM_Dcm_GetReportingMode_RequestResults (معرف الخدمة 0x0D، ملف الرأس IdsM_Cbk.h) بواسطة Diagnostic Communication Manager (DCM) للاستعلام عن نتائج الإجراء لطلب تم بدؤه مسبقًا عبر IdsM_Dcm_GetReportingMode_Start() [SWS_IdsM_91007]. يتم نقل حالة العملية الحالية عبر معلمة التمرير OpStatus [SWS_IdsM_91007]. عند الاكتمال الناجح، تُرجع الدالة E_OK وتُخرج وضع إعداد التقارير المحدد لحدث الأمان المطلوب عبر مؤشر الإخراج Out_ReportingMode [SWS_IdsM_91007]. إذا لم تكتمل المعالجة بعد، فإنها تشير إلى ذلك عبر قيمة الإرجاع DCM_E_PENDING [SWS_IdsM_91007].

معالجة الأخطاء

إذا فشل الاستعلام، تُرجع الدالة E_NOT_OK [SWS_IdsM_91007]. في هذه الحالة، يجب تعيين رمز استجابة سلبية محدد (Dcm_NegativeResponseCodeType) عبر المعلمة ErrorCode؛ وإذا ظل غير معين، يرسل DCM رمز الخطأ 0x22 [SWS_IdsM_91007]. لا توجد أحداث DET أو DEM محددة لهذه الخدمة [SWS_IdsM_91007].

التزامن والتفاعل

تم تحديد الدالة على أنها قابلة لإعادة الدخول [SWS_IdsM_91007]. فيما يتعلق بتسلسل الاستدعاء، فإنها تتطلب بشكل إلزامي أن يكون الإجراء قد تم إطلاقه مسبقًا بواسطة IdsM_Dcm_GetReportingMode_Start() [SWS_IdsM_91007]. تفسير: من المرجح أن يتم استخدام المعلمة OpStatus بواسطة DCM في الاستعلامات المتكررة بعد إرجاع DCM_E_PENDING لتنسيق تقدم عملية التشخيص. سؤال Q-c268fab018a1f5b3 (مفتوح)

تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي استنادًا إلى مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة IdsM_Dcm_GetReportingMode_Start [SWS_IdsM_91006] 📄 PDF

Std_ReturnType IdsM_Dcm_GetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);

This function is a request from DCM to the IdsM to start the routine execution to request the current reporting mode of a specific Security Event ID.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 78410b323fc8 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستدعى الدالة IdsM_Dcm_GetReportingMode_Start بواسطة وحدة التشخيص (DCM) لبدء تنفيذ روتين في Intrusion Detection System Manager (IdsM) للاستعلام عن وضع الإبلاغ الحالي لحدث أمني معين (SEv) [SWS_IdsM_91006]، [SWS_IdsM_02001]. الواجهة مصرح عنها في الترويسة IdsM_Cbk.h، وتمتلك معرف الخدمة 0x0C، ومحددة بأنها تزامنية وقابلة لإعادة الدخول [SWS_IdsM_91006].

عند الاستدعاء، تمرر DCM المعرف الخارجي لحدث الأمان (In_SecurityEventId)، ومعرف المثيل للحساس (In_SensorInstanceId)، وحالة العملية (OpStatus) [SWS_IdsM_91006]. كقيمة مرجعة، تُرجع الدالة Std_ReturnType:

في حالة الخطأ (E_NOT_OK)، تلتزم IdsM بتوفير Negative Response Code (NRC) محدد عبر معامل الإخراج ErrorCode؛ وإذا لم يحدث ذلك، ترسل DCM افتراضيًا الرمز NRC 0x22 (Conditions Not Correct) [SWS_IdsM_91006].

تقوم الدالة بتشغيل الروتين فقط؛ بينما تتم القراءة الفعلية للنتائج المحددة لاحقًا عبر الدالة IdsM_Dcm_GetReportingMode_RequestResults [SWS_IdsM_91007].

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا. تستند جميع المعلومات حصريًا إلى مواصفات AUTOSAR Classic R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة IdsM_Dcm_SetReportingMode_Start [SWS_IdsM_91008] 📄 PDF

Std_ReturnType IdsM_Dcm_SetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, uint8 In_ReportingMode, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);

This function is a request from DCM to the IdsM to start the routine execution to set the reporting mode of a specific Security Event ID.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: ecdd252e141c المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يتم استدعاء الدالة المتزامنة والقابلة لإعادة الدخول IdsM_Dcm_SetReportingMode_Start بواسطة وحدة التشخيص (DCM) لبدء الإجراء الخاص بتغيير وضع إعداد التقارير (IdsMReportingModeFilter) لحدث أمان معين في Intrusion Detection System Manager [SWS_IdsM_91008]، [SWS_IdsM_01901]. يتم توفير التصريح عبر ملف الرأس IdsM_Cbk.h [SWS_IdsM_91008].

عند الاستدعاء، يتم تمرير معرّف الحدث الخارجي (In_SecurityEventId)، ومعرّف مثيل المستشعر (In_SensorInstanceId)، ووضع إعداد التقارير الجديد المراد تعيينه (In_ReportingMode)، بالإضافة إلى حالة العملية (OpStatus) [SWS_IdsM_91008]، [SWS_IdsM_01901]. وتُرجع الدالة قيم الإرجاع التالية:

  • E_OK: اكتمل تنفيذ العملية بنجاح [SWS_IdsM_91008].
  • DCM_E_PENDING: المعالجة لم تكتمل بعد ويتم مواصلتها بشكل غير متزامن [SWS_IdsM_91008].
  • E_NOT_OK: فشلت العملية؛ وفي هذه الحالة يجب تعيين كود استجابة سلبية (NRC) محدد عبر معامل الإخراج ErrorCode، وإلا فإن DCM سينقل الـ NRC 0x22 [SWS_IdsM_91008].

إذا فشل التحقق من صحة معرّف الحدث بسبب استخدام Security Event Definition ID غير صالح، تُرجع الدالة E_NOT_OK وتعين كود الخطأ ErrorCode إلزاميًا على DCM_E_REQUESTOUTOFRANGE [SWS_IdsM_01903].

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا وتستند إلى مواصفات AUTOSAR.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

نوع IdsM_Filters_BlockStateType [SWS_IdsM_91017] 📄 PDF

Data type used for "Block State" filter values (bit masks)

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 71b3951aed67 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يُستخدم نوع البيانات IdsM_Filters_BlockStateType لتعريف أقنعة البتات لما يُعرف بمرشحات «Block State» التابعة لـ Intrusion Detection System Manager (IdsM) وفقًا لـ [SWS_IdsM_91017]. هذا النوع مشتق من uint16، ويغطي نطاق القيم الصحيحة من 0 إلى 65535 ويتاح لوحدات البرمجيات عبر ملف الترويسة IdsM_Filters_Types.h ([SWS_IdsM_91017]).

يتم الاستخدام الأساسي بالتنسيق مع Basic Software Mode Manager (BswM). عند حدوث تغييرات في حالة النظام أو وحدة التحكم، يستدعي BswM دالة رد النداء IdsM_BswM_StateChanged ويمرر حالة وحدة التحكم الحالية عبر المعامل state من هذا النوع ([SWS_IdsM_91005]). تم التصريح عن واجهة رد النداء هذه في IdsM_Cbk.h، وهي لا تُرجع أي قيم ومحددة على أنها متزامنة وقابلة لإعادة الدخول ([SWS_IdsM_91005]).

تفسير: نظرًا لتصميم النوع كقناع بتات للمرشحات، يُرجَّح أن يقارن IdsM قيمة حالة ECU الممررة بحالات المرشح المهيأة، لتصفية تسجيل أو حظر أحداث الأمان اعتمادًا على حالة وحدة التحكم. سؤال Q-00b355cc5ec6383f (مفتوح) لا توجد معالجة أخطاء مستقلة بأكواد أخطاء محددة أو رسائل DET أو DEM لنوع البيانات هذا.

تم إنشاء هذا الإشعار بواسطة ذكاء اصطناعي ويستند حصريًا إلى بيانات المواصفات من AUTOSAR CP R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

نوع IdsM_Filters_ReportingModeType [SWS_IdsM_91013] 📄 PDF

Reporting modes used by the reporting mode filter

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4e0ba45d0047 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يعتمد نوع البيانات IdsM_Filters_ReportingModeType على النوع الأساسي uint8 ويتم توفيره لمكونات البرمجيات عبر ملف الترويسة IdsM_Types.h [SWS_IdsM_91013]. وهو يصف أوضاع إعداد التقارير القياسية التي يتم تطبيقها داخل مرشح وضع إعداد التقارير (Reporting-Mode-Filter) في Intrusion Detection System Manager (IdsM) للمعالجة الموجهة لأحداث الأمان وإعادة توجيهها [SWS_IdsM_91013].

عبر قيم التعداد المحددة، يتم التحكم بدقة فيما إذا كان سيتم الإبلاغ عن حدث ما ومستوى التفاصيل المستخدم في ذلك [SWS_IdsM_91013]:

  • IDSM_REPORTING_MODE_OFF (0x00): يتم حجب الحدث وعدم الإبلاغ عنه للجهات الأعلى [SWS_IdsM_91013].
  • IDSM_REPORTING_MODE_BRIEF (0x01): يتم الإبلاغ عن الحدث بصيغة مدمجة دون بيانات سياق إضافية [SWS_IdsM_91013].
  • IDSM_REPORTING_MODE_DETAILED (0x02): يتم الإبلاغ عن الحدث بالتفصيل مع تضمين جميع بيانات السياق ذات الصلة [SWS_IdsM_91013].
  • IDSM_REPORTING_MODE_BRIEF_BYPASSING_FILTERS (0x03): يتجاوز الحدث مراحل التصفية اللاحقة ويتم الإبلاغ عنه دون تصفية وبدون بيانات سياق [SWS_IdsM_91013].
  • IDSM_REPORTING_MODE_DETAILED_BYPASSING_FILTERS (0x04): يتجاوز الحدث مراحل التصفية اللاحقة ويتم الإبلاغ عنه دون تصفية متضمنًا كافة بيانات السياق [SWS_IdsM_91013].
  • IDSM_REPORTING_MODE_INVALID (0xFF): يحدد وضع إعداد تقارير غير صالح ضمن نطاق القيم [SWS_IdsM_91013].

وبذلك تجمع القيم بين بعدين وظيفيين للتحكم: مستوى التفاصيل عبر بيانات السياق، بالإضافة إلى التجاوز المتعمد لآليات التصفية الاعتيادية من خلال التجاوز (Bypassing) [SWS_IdsM_91013]. يتيح ذلك لـ IdsM معالجة متمايزة للحوادث الأمنية تبعًا لدرجة الأهمية وتهيئة المرشح [SWS_IdsM_91013].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على المواصفة R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_IdsM
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_IdsM@rel:R20-11#11c3c9f1
Content hash
11c3c9f1
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_IntrusionDetectionSystemManager.pdf#nameddest=SWS_IdsM_91001

التهيئة والحالة

Returns version information, vendor ID and AUTOSAR module ID of the component.

void IdsM_GetVersionInfo (const Std_VersionInfoType* versionInfo);
IdsM_Init دالة

Service to initialize the module IdsM. It initializes all variables and sets the module state to initialized.

void IdsM_Init (const IdsM_ConfigType* configPtr);

الخدمات

This callback function is invoked by the BswM to indicate ECU state changes.

void IdsM_BswM_StateChanged (IdsM_Filters_BlockStateType state);

This function is a request from DCM to the IdsM to read the routine results triggered by function IdsM_Dcm_GetReportingMode_Start().

Std_ReturnType IdsM_Dcm_GetReportingMode_RequestResults (Dcm_OpStatusType OpStatus, uint8* Out_ReportingMode, Dcm_NegativeResponseCodeType* ErrorCode);

This function is a request from DCM to the IdsM to start the routine execution to request the current reporting mode of a specific Security Event ID.

Std_ReturnType IdsM_Dcm_GetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);

This function is a request from DCM to the IdsM to start the routine execution to set the reporting mode of a specific Security Event ID.

Std_ReturnType IdsM_Dcm_SetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, uint8 In_ReportingMode, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);

This API is the application interface to report security events to the IdsM.

void IdsM_SetSecurityEvent (IdsM_SecurityEventIdType securityEventId);

This API is the application interface to report security events with context data to the IdsM.

void IdsM_SetSecurityEventWithContextData (IdsM_SecurityEventIdType securityEventId, const uint8* contextData, uint16 contextDataSize);

This API is the application interface for Smart Sensors to report security events with a count value to the IdsM.

void IdsM_SetSecurityEventWithCount (IdsM_SecurityEventIdType securityEventId, uint16 count);

This API is the application interface for Smart Sensors to report security events with a count value and context data to the IdsM.

void IdsM_SetSecurityEventWithCountContextData (IdsM_SecurityEventIdType securityEventId, uint16 count, const uint8* contextData, uint16 contextDataSize);

This API is the application interface for Smart Sensors to report security events with a timestamp and a count value to the IdsM.

void IdsM_SetSecurityEventWithTimestampCount (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count);

This API is the application interface for Smart Sensors to report security events with a timestamp, a count value and context data to the IdsM.

void IdsM_SetSecurityEventWithTimestampCountContextData (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count, const uint8* contextData, uint16 contextDataSize);

دوال الاستدعاء الراجع

This function is called to acquire the transmit data of an I-PDU segment (N-PDU). Each call to this function provides the next part of the I-PDU data unless retry->TpDataState is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry->TxTpDataCnt. The size of the remaining data is written to the position indicated by availableDataPtr.

BufReq_ReturnType IdsM_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

This function is called after the I-PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.

void IdsM_TpTxConfirmation (PduIdType id, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

void IdsM_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

دورية

This function is called periodically. It processes security events asynchronously which are queued during API function calls.

void IdsM_MainFunction (void);

الأنواع

Configuration data structure of IdsM module.

Data type used for "Block State" filter values (bit masks)

Reporting modes used by the reporting mode filter

Data type used for local IdsM Security Event IDs

Data type for IdsM timestamps