← नवीनतम पेपर
💻 computer science

Inferring Equivalence Classes from Legacy Undocumented Embedded Binaries for ISO 26262-Compliant Testing

यह शोध पत्र एक बाइनरी-स्तरीय कार्यप्रणाली प्रस्तावित करता है जो अनडॉक्युमेंटेड लीगेसी फर्मवेयर से इक्विवेलेंस क्लासेस (समतुल्यता वर्गों) को स्वचालित रूप से निष्कर्ष निकालने के लिए कंट्रोल-फ्लो रिकंस्ट्रक्शन और सिम्बोलिक एक्जीक्यूशन का उपयोग करती है, जिससे सोर्स कोड या कार्यात्मक विशिष्टताओं की आवश्यकता के बिना ISO 26262-अनुपालन परीक्षण सक्षम होता है।

मूल लेखक: Marco De Luca, Domenico Francesco De Angelis, Domenico Amalfitano, Pasquale Cimmino, Anna Rita Fasolino

प्रकाशित 2026-04-27
📖 4 मिनट में पढ़ें☕ कॉफ़ी ब्रेक में पढ़ें

मूल लेखक: Marco De Luca, Domenico Francesco De Angelis, Domenico Amalfitano, Pasquale Cimmino, Anna Rita Fasolino

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

समस्या: "ब्लैक बॉक्स" का रहस्य

कल्पना कीजिए कि आप एक हाई-स्पीड ट्रेन के सुरक्षा निरीक्षक (safety inspector) हैं। आपको बताया जाता है कि एक विशिष्ट कंप्यूटर चिप ब्रेक को नियंत्रित करती है। हालांकि, चिप बनाने वाली कंपनी दस साल पहले ही बंद हो चुकी है। न तो कोई निर्देश पुस्तिका (manual) उपलब्ध है, न ही कोई ब्लूप्रिंट, और न ही कोई ऐसा व्यक्ति बचा है जिसे पता हो कि इसके अंदर का कोड वास्तव में कैसे काम करता है।

ट्रेन को सुरक्षित सुनिश्चित करने के लिए (ISO 26262 जैसे सख्त नियमों का पालन करते हुए), आपको ब्रेक का परीक्षण करना होगा। आमतौर पर, आप मैनुअल देखकर देखते: "यदि पेडल को आधा दबाया जाता है, तो ब्रेक 50% दबाव लगाना चाहिए।" लेकिन मैनुअल के बिना, आप यह भी नहीं जानते कि कंप्यूटर के लिए "आधा" का क्या अर्थ है, या अपेक्षित परिणाम क्या होना चाहिए। आप एक "ब्लैक बॉक्स" को देख रहे हैं—आप इनपुट (पेडल) और आउटपुट (ब्रेक) को देख सकते हैं, लेकिन इसके अंदर का तर्क (logic) एक पूर्ण रहस्य है।

समाधान: "डिजिटल डिटेक्टिव" (Digital Detective)

इस शोध पत्र के शोधकर्ताओं ने एक "डिजिटल डिटेक्टिव" टूल बनाया है। खोई हुई निर्देश पुस्तिका खोजने के बजाय, यह टूल सीधे चिप के "मस्तिष्क" (बाइनरी कोड) को देखता है और अपने आप नियम समझ लेता है।

यह डिटेक्टिव तीन सरल चरणों का उपयोग करके कैसे काम करता है, यहाँ दिया गया है:

1. भूलभुलैया का मानचित्र बनाना (स्ट्रक्चरल एनालिसिस)

गहराई में उतरने से पहले, डिटेक्टिव चिप के लॉजिक का एक नक्शा बनाता है। एक विशाल झाड़ियों वाली भूलभुलैया (hedge maze) की कल्पना करें। टूल सभी रास्तों, मोड़ों और डेड एंड्स (बंद रास्तों) को देखता है। यह समान हिस्सों को एक साथ समूहित (group) करता है ताकि वह भूलभुलैया के विशाल आकार से घबरा न जाए या उसमें खो न जाए।

2. "क्या होगा अगर?" प्रयोग (सिंबॉलिक एक्जीक्यूशन)

यही सबसे चतुर हिस्सा है। कोड को केवल एक बार चलाने के बजाय, टूल हजारों "क्या होगा अगर?" प्रयोग करता है।

  • "क्या होगा अगर मैं इसे एक बहुत छोटी संख्या दूँ?"
  • "क्या होगा अगर मैं इसे एक बहुत बड़ी संख्या दूँ?"
  • "क्या होगा अगर मैं इसे एक ऋणात्मक (negative) संख्या दूँ?"

टूल सिंबॉलिक एक्जीक्यूशन (Symbolic Execution) नामक एक गणितीय तकनीक का उपयोग करता है। इसे एक वैज्ञानिक द्वारा रासायनिक प्रतिक्रिया के परीक्षण की तरह समझें। वास्तविक पानी या वास्तविक एसिड का उपयोग करने के बजाय, वे उन पदार्थों के "गणितीय भूतों" (mathematical ghosts) का उपयोग करते हैं। यह टूल को वास्तविक ट्रेन पर चिप को चलाए बिना हर संभावित परिणाम का पता लगाने की अनुमति देता है।

3. "क्लबों" को खोजना (इक्विवेलेंस क्लासेस)

सभी प्रयोगों के बाद, टूल पैटर्न नोटिस करता है। इसे एहसास होता है कि चाहे आप इनपुट के रूप में संख्या 10, 11, या 12 दें, चिप हमेशा बिल्कुल एक जैसा ब्रेक प्रेशर देती है।

परीक्षण की भाषा में, इन्हें इक्विवेलेंस क्लासेस (Equivalence Classes) कहा जाता है। यह एक क्लब में यह समझने जैसा है कि नीली शर्ट पहनने वाले सभी लोगों के साथ एक जैसा व्यवहार किया जाता है, और लाल शर्ट पहनने वाले लोगों के साथ अलग व्यवहार किया जाता है। क्लब के हर व्यक्ति का परीक्षण करने के बजाय, आपको केवल नीले समूह के एक व्यक्ति और लाल समूह के एक व्यक्ति का परीक्षण करने की आवश्यकता है। यह परीक्षण को बहुत तेज़ और अधिक व्यवस्थित बनाता है।

"अनुवादक" (इंसानों के लिए समझना)

डिटेक्टिव द्वारा पाया गया कच्चा डेटा (raw data) अविश्वसनीय रूप से अव्यवस्थित है—यह गणित के ढेर जैसा दिखता है जिसे केवल एक कंप्यूटर ही समझ सकता है। इसे ठीक करने के लिए, शोधकर्ताओं ने एक AI (जैसे ChatGPT) का उपयोग एक अनुवादक के रूप में किया है। AI उस गणितीय उलझन को सरल अंग्रेजी (या भाषा) में बदल देता है, जैसे: "यदि इनपुट 1 और 100 के बीच है, तो आउटपुट 'सुरक्षित' होगा।"

यह क्यों महत्वपूर्ण है?

सेल्फ-ड्राइविंग कारों और चिकित्सा उपकरणों की दुनिया में, "अंदाजा लगाना" कोई विकल्प नहीं है। यदि कोई पुराना सॉफ्टवेयर किसी महत्वपूर्ण प्रणाली को चला रहा है, तो हमें यह जानने की आवश्यकता है कि वह वास्तव में कैसे व्यवहार करता है।

यह शोध पत्र सिद्ध करता है कि सुरक्षित रहने के लिए हमें मूल ब्लूप्रिंट की आवश्यकता नहीं है। हम इन डिजिटल डिटेक्टिव्स का उपयोग नियमों को "रिवर्स-इंजीनियर" करने, उन्हें तार्किक श्रेणियों में समूहित करने और एक अचूक परीक्षण योजना बनाने के लिए कर सकते हैं—यहाँ तक कि उस सॉफ़्टवेयर के लिए भी जिसे दशकों पहले उन लोगों द्वारा लिखा गया था जो अब मौजूद नहीं हैं।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →