उस सॉफ़्टवेयर के उपयोगकर्ताओं के लिए एक हुक सुविधा प्रदान की जाती है, जिसमें कुछ विशेष परिस्थितियों में अपना स्वयं का कोड होता है। वह कोड वर्तमान कोड को बढ़ा या बदल सकता है।
पुराने दिनों में जब कंप्यूटर वास्तव में व्यक्तिगत थे और वायरस कम प्रचलित थे (मैं 80 के दशक की बात कर रहा हूं), यह उतना ही सरल था जितना कि आपके कोड को कॉल करने के लिए ऑपरेटिंग सिस्टम सॉफ़्टवेयर को पैच करना। मुझे याद है कि Apple II पर Applesoft BASIC भाषा के लिए एक एक्सटेंशन लिखना जो बस किसी भी लाइन के संसाधित होने से पहले मेरे कोड पर कॉल को इंजेक्ट करके BASIC दुभाषिया में मेरे कोड को झुका देता था।
कुछ कंप्यूटरों में पहले से डिज़ाइन किए गए हुक थे, एक उदाहरण Apple II पर I / O स्ट्रीम था। यह पूरे डिस्क उप-प्रणाली को इंजेक्ट करने के लिए इस तरह के हुक का उपयोग करता था (Apple II ROM मूल रूप से उन दिनों में बनाए गए थे जहां कैसेट पीसी के लिए प्राथमिक भंडारण माध्यम थे)। आपने ASCII कोड 4 ( ) को प्रिंट करके डिस्क्स को नियंत्रित CTRL-D
किया था और उसके बाद कमांड जिसे आप निष्पादित करना चाहते थे CR
, और इसे डिस्क उप-सिस्टम द्वारा इंटरसेप्ट किया गया था, जिसने खुद को Apple ROM प्रिंट रूटीन में हुक किया था।
उदाहरण के लिए, लाइनें:
PRINT CHR(4);"CATALOG"
PRINT CHR(4);"IN#6"
डिस्क सामग्री को सूचीबद्ध करेगा फिर मशीन को फिर से शुरू करेगा। इसने इस तरह की तरकीबों की अनुमति दी जैसे कि पहली पंक्ति को निर्धारित करके अपने बुनियादी कार्यक्रमों की रक्षा करना:
123 REM XIN#6
फिर जहां था वहां चरित्र POKE
डालने के लिए । फिर, आपके स्रोत को सूचीबद्ध करने का प्रयास करने वाला कोई भी व्यक्ति आउटपुट रूटीन के माध्यम से पुन: इनिशियलाइज़ अनुक्रम भेजेगा जहां डिस्क सब-सिस्टम उसका पता लगाएगा।CTRL-D
X
जैसा व्यवहार हम चाहते थे वैसा पाने के लिए अक्सर हमें छल करना पड़ता था।
आजकल, ऑपरेटिंग सिस्टम अधिक सुरक्षित होने के साथ, यह हुक के लिए भी सुविधाएं प्रदान करता है, क्योंकि अब आप ऑपरेटिंग सिस्टम को "इन-फ्लाइट" या डिस्क पर संशोधित करने वाले नहीं हैं।
वे लंबे समय से आसपास हैं । मेनफ्रेम ने उन्हें (एक्सिट्स कहा जाता था) और मेनफ्रेम सॉफ्टवेयर का एक बड़ा सौदा अब भी उन सुविधाओं का उपयोग करता है। उदाहरण के लिए, z / OS (जिसे SCLM कहा जाता है) के साथ आने वाला मुफ्त स्रोत कोड नियंत्रण प्रणाली आपको केवल बाहर निकलने में अपना कोड डालकर सुरक्षा सबसिस्टम को पूरी तरह से बदलने की अनुमति देता है।