SOVD कॉन्फ़िगरेशन के ट्रांसफर के लिए MIME प्रकार और डेटा आकार जैसी मेटा-जानकारी प्रदान करता है।
संदर्भ
संरचना ara::diag::SovdConfiguration::SovdConfigurationMetaInfo AUTOSAR Adaptive Platform [SWS_DM_01861] में SOVD कॉन्फ़िगरेशन डेटा (Service-Oriented Vehicle Diagnostics) के ट्रांसफर के लिए एक मानकीकृत मेटाडेटा कंटेनर के रूप में कार्य करती है। इसे हेडर ara/diag/sovd_configuration.h में घोषित किया गया है और संगठनात्मक रूप से सीधे इंटरफ़ेस क्लास ara::diag::SovdConfiguration को सौंपा गया है AUTOSAR_AP_SWS_Diagnostics §8.54.2 “Struct: SovdConfigurationMetaInfo”। इसकी मुख्य ज़िम्मेदारी डायग्नोस्टिक कॉन्फ़िगरेशन ट्रांसफर के लिए आवश्यक मेटा-जानकारी, जैसे सामग्री का प्रकार और डेटा का आकार प्रदान करना है [SWS_DM_01862], [SWS_DM_01863]।
प्राथमिक इंटरैक्शन पार्टनर्स में एक ओर लागू डायग्नोस्टिक्स ऐप्लिकेशन शामिल है, जो कॉन्फ़िगरेशन डेटा उत्पन्न, संशोधित या संसाधित करता है, और दूसरी ओर AUTOSAR Adaptive का डायग्नोस्टिक प्रबंधन सिस्टम शामिल है। यह संरचना डेटा ट्रांसफर ऑब्जेक्ट (Data Transfer Object, DTO) के रूप में कार्य करती है, जो एप्लिकेशन-विशिष्ट लॉजिक और डायग्नोस्टिक्स प्लेटफ़ॉर्म की मानकीकृत ट्रांसफर सेवाओं के बीच मध्यस्थता करती है। प्रदान किए गए फ़ील्ड्स के माध्यम से, प्रेषक और प्राप्तकर्ता इस बात पर सहमति बना सकते हैं कि कॉन्फ़िगरेशन डेटा किस प्रारूप में उपलब्ध है और ट्रांसमिशन चैनल में कितने बाइट्स की अपेक्षा की जाती है।
जीवनचक्र
विशुद्ध रूप से पैसिव C++ डेटा प्रकार (struct) के रूप में, SovdConfigurationMetaInfo किसी भी जटिल प्लेटफ़ॉर्म-नियंत्रित जीवनचक्र चरणों के अधीन नहीं है [SWS_DM_01861]। निर्माण आमतौर पर सीधे Adaptive Application द्वारा स्टैक पर या हीप पर किया जाता है, ठीक कॉन्फ़िगरेशन ट्रांसफर शुरू करने या प्राप्त मेटाडेटा रिकॉर्ड का मूल्यांकन करने से पहले। संरचना C++ के नियमित वैल्यू सिमेंटिक्स का पालन करती है; स्वामित्व वाला घटक इंस्टैंसिएशन और जीवनकाल के लिए ज़िम्मेदारी वहन करता है।
आंतरिक स्थिति के संबंध में, संरचना में कोई स्टेट मशीन और कोई असतत ऑपरेटिंग मोड नहीं हैं। सार्वजनिक चरों के आरंभीकरण के बाद, डेटा इंस्टेंस के नष्ट होने तक मेमोरी में अपरिवर्तित रहता है, बशर्ते कि इसे स्वामित्व वाले एप्लिकेशन द्वारा स्पष्ट रूप से अधिलेखित न किया जाए। इंस्टेंस की रिलीज़ स्कोप से बाहर निकलने पर RAII पैटर्न के अनुसार स्वचालित रूप से होती है, जिससे इसमें शामिल स्ट्रिंग की गतिशील रूप से आवंटित मेमोरी रिलीज़ हो जाती है [SWS_DM_01863]।
समवर्तीता (concurrency) के संबंध में, SovdConfigurationMetaInfo कोई अंतर्निहित थ्रेड-सुरक्षा प्रदान नहीं करता है। कई थ्रेड्स एक इंस्टेंस को एक साथ रीड एक्सेस के लिए संसाधित कर सकते हैं, उदाहरण के लिए कॉन्फ़िगरेशन मापदंडों के निरीक्षण के लिए। हालाँकि, एक ही इंस्टेंस पर समवर्ती राइट एक्सेस के लिए बाहरी सिंक्रोनाइज़ेशन उपायों की आवश्यकता होती है, क्योंकि सदस्य चरों में प्रतिस्पर्धी संशोधनों से डेटा विसंगतियाँ उत्पन्न होती हैं।
उपयोग पथ
एक विशिष्ट उपयोग का मामला वास्तविक कॉन्फ़िगरेशन ट्रांसफर से पहले मेटाडेटा की तैयारी और प्रावधान में शामिल है। एप्लिकेशन सबसे पहले संरचना को इंस्टैंसिएट करता है और फ़ील्ड mimetype को एक स्ट्रिंग असाइन करता है जो कॉन्फ़िगरेशन फ़ाइल के मीडिया प्रकार का वर्णन करती है [SWS_DM_01863], AUTOSAR_AP_SWS_Diagnostics §8.54.2.1.1 “mimetype”। यह प्राप्तकर्ता को पार्सर या स्कीमा के साथ मैपिंग करने में सक्षम बनाता है, उदाहरण के लिए JSON- या XML-आधारित कॉन्फ़िगरेशन के लिए।
अगले चरण में, यह जाँचा जाता है कि क्या पेलोड के सटीक फ़ाइल आकार को पहले से निर्धारित किया जा सकता है। यदि ऐसा है, तो विशेषता size को संबंधित पूर्णांक बाइट मान के साथ पॉप्युलेट किया जाता है [SWS_DM_01862], AUTOSAR_AP_SWS_Diagnostics §8.54.2.1.2 “size”। यदि ट्रांसमिशन शुरू होने से पहले आकार अज्ञात है, तो चर अनसेट रहता है। इसके बाद, तैयार ऑब्जेक्ट को क्लास ara::diag::SovdConfiguration के ट्रांसफर फ़ंक्शन में एक तर्क के रूप में पास किया जाता है।
अनुक्रम आरेख (Sequence diagram): कॉन्फ़िगरेशन ट्रांसफर के हिस्से के रूप में SovdConfigurationMetaInfo के इनिशियलाइज़ेशन और पासिंग का विशिष्ट प्रवाह। स्रोत: [SWS_DM_01861], [SWS_DM_01862], [SWS_DM_01863], AUTOSAR_AP_SWS_Diagnostics §8.54.2 “Struct: SovdConfigurationMetaInfo”।
त्रुटि परिदृश्य
चूँकि SovdConfigurationMetaInfo को सदस्य फ़ंक्शनों के बिना एक शुद्ध डेटा संरचना के रूप में डिज़ाइन किया गया है, यह अपने स्वयं के रिटर्न मान, त्रुटि कोड या अपवादों को परिभाषित नहीं करता है [SWS_DM_01861]। संभावित त्रुटि स्थितियाँ मुख्य रूप से अपूर्ण या असंगत डेटा असाइनमेंट से उत्पन्न होती हैं, जिन्हें ara::diag::SovdConfiguration में प्रसंस्करण प्लेटफ़ॉर्म सेवाओं द्वारा पहचाना जाता है।
व्याख्या: पहला त्रुटि परिदृश्य अमान्य MIME प्रकारों से संबंधित है। प्रश्न (खुला) यदि mimetype में एक खाली स्ट्रिंग या एक असमर्थित प्रारूप पहचानकर्ता संग्रहीत है, तो कॉल की गई ट्रांसफर सेवा संभवतः प्रसंस्करण को अस्वीकार कर देगी और एप्लिकेशन को एक संबंधित त्रुटि कोड लौटाएगी। दूसरा त्रुटि परिदृश्य डेटा आकार में विसंगति का है: यदि वास्तव में स्थानांतरित डेटा की मात्रा size में घोषित बाइट मान से भिन्न होती है, तो डायग्नोस्टिक्स इन्फ्रास्ट्रक्चर संभवतः असंगति के कारण ट्रांसफर को रद्द कर देगा। इसके अतिरिक्त, यदि चुना गया ट्रांसपोर्ट चैनल अनिवार्य रूप से पहले से ज्ञात कुल लंबाई की आवश्यकता रखता है, तो एक अनसेट size फ़ील्ड ट्रांसमिशन त्रुटियों का कारण बन सकता है।
यह मार्गदर्शिका AUTOSAR Adaptive Platform रिलीज़ R25-11 के विनिर्देश पर आधारित है।
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल