HeadlinesBriefing favicon HeadlinesBriefing.com

x86 अपरिभाषित निर्देश ud2 क्यों कहलाता है?

Hacker News •
×

ud2 निर्देश x86 पर एक वास्तुशिल्प रूप से अपरिभाषित ऑपकोड है जो विश्वसनीय रूप से एक "अमान्य ऑपकोड" अपवाद उत्पन्न करता है। कंपाइलर इसका उपयोग "अप्राप्य" कोड को चिह्नित करने के लिए करते हैं, यह सुनिश्चित करते हुए कि यदि निष्पादन कभी इस तक पहुँचता है तो क्रैश हो। मूल रूप से, कोई आधिकारिक अपरिभाषित निर्देश मौजूद नहीं था, इसलिए प्रोग्रामर 0F FF या 0F B9 जैसे बाइट अनुक्रमों पर भरोसा करते थे ताकि अपवाद ट्रिगर हो सके। ये अनुक्रम आंतरिक रूप से दो अप्रयुक्त पैरामीटर वाली निर्देशों के रूप में डिकोड किए गए थे। जब Intel ने परिवर्तन पेश किए जिन्होंने 0F FF को तोड़ दिया, तो इस पर निर्भर सॉफ़्टवेयर विफल हो गया, जो हायरम के नियम को दर्शाता है। एक स्थिर समाधान प्रदान करने के लिए, Intel ने आधिकारिक तौर पर ud2 बनाया, और पुराने वेरिएंट को पूर्वव्यापी रूप से ud0 और ud1 नाम दिया। अपने पूर्ववर्तियों के विपरीत, ud2 कोई पैरामीटर रहित एक साफ दो-बाइट निर्देश है, जो डिकोडिंग मुद्दों से बचाता है जो अमान्य ऑपकोड अपवाद के बजाय एक्सेस उल्लंघन का कारण बन सकते हैं। यह ud2 को जानबूझकर क्रैश ट्रिगर करने के लिए सुसंगत, अनुशंसित विकल्प बनाता है।

नामकरण इतिहास को दर्शाता है: 0F FF ud0 बन गया, 0F B9 ud1 बन गया, और नई आधिकारिक निर्देश का नाम ud2 रखा गया। ud2 का मुख्य लाभ इसकी वास्तुशिल्प गारंटी है, जो मेमोरी पेज की उपस्थिति या प्रोसेसर कार्यान्वयन विवरण की परवाह किए बिना अनुमानित व्यवहार सुनिश्चित करता है।