INT 13H
आई. एन. टी. 13एच. बी. आई. ओ. एस. इंटरप्ट कॉल 13हेक्स के लिए संक्षिप्त नाम है, जो एक x86-आधारित (आई. बी. एम. पी. सी.-अवरोही) कंप्यूटर प्रणाली में 20वां इंटरप्ट वेक्टर है। बी. आई. ओ. एस. आम तौर पर इस वेक्टर पर एक वास्तविक मोड इंटरप्ट हैंडलर स्थापित करता है जो सिलेंडर-हेड-सेक्टर (सी. एच. एस.) एड्रेसिंग का उपयोग करके सेक्टर-आधारित हार्ड डिस्क और फ्लापी डिस्क पढ़ने और लिखने की सेवाएं प्रदान करता है। आधुनिक पी. सी. बी. आई. ओ. एस. में आई. एन. टी. 13एच. विस्तार कार्य भी शामिल हैं, जो 1992 में आई. बी. एम. और माइक्रोसॉफ्ट द्वारा उत्पन्न किए गए थे, जो 64-बिट एल. बी. ए. पते का उपयोग करके वही डिस्क पहुँच सेवाएँ प्रदान करते हैं; मामूली परिवर्धन के साथ, इन्हें फीनिक्स टेक्नोलॉजीज और अन्य द्वारा ईडी. डी. (एन्हांस्ड डिस्क ड्राइव) बी. आई. ओ. एस. विस्तार के रूप में अर्ध-मानकीकृत किया गया था। आई. एन. टी. एक x86 निर्देश है जो एक सॉफ्टवेयर इंटरप्ट को ट्रिगर करता है, और 13हेक्स इंटरप्ट संख्या (हेक्साडेसिमल मान के रूप में) कहल जा रही है। आधुनिक कंप्यूटर बी. आई. ओ. एस. आई. एन. टी. 13एच. और यू. ई. एफ. आई. दोनों कार्यक्षमताओं के साथ आते हैं जो समान सेवाएँ और बहुत कुछ प्रदान करते हैं, यू. ई. एफ. आई. वर्ग 3 के अपवाद के साथ जो सी. एस. एम. को पूरी तरह से हटा देता है इस प्रकार आई. एन. टी. 13एच. और अन्य व्यवधानों का अभाव है। आमतौर पर, यू. ई. एफ. आई. चालक सी. एच. एस.-पते के बजाय एल. बी. ए.-पते का उपयोग करते हैं। अवलोकन वास्तविक मोड ऑपरेटिंग सिस्टम के तहत, जैसे डी. ओ. एस., आई. एन. टी. 13एच. को कॉल करना निम्न-स्तरीय डिस्क सेवाओं के लिए कंप्यूटर के रॉम-बी. आई. ओ. एस. कोड में कूद जाएगा, जो प्रोग्राम के लिए भौतिक क्षेत्र-आधारित डिस्क पढ़ने या लिखने के संचालन को अंजाम देगा। डी. ओ. एस. में, यह हार्ड डिस्क और फ्लापी डिस्क के लिए अंतर्निहित ब्लॉक डिवाइस ड्राइवरों के लिए निम्न-स्तरीय इंटरफेस के रूप में कार्य करता है। यह आई. एन. टी. 25एच. और आई. एन. टी. 26एच. को डी. ओ. एस. कर्नेल में एफ. ए. टी. फाइल सिस्टम ड्राइवर को तार्किक क्षेत्रों के लिए पूर्ण डिस्क पढ़ने/लिखने के कार्य प्रदान करने की अनुमति देता है, जो डी. ओ. एस. ए. पी. आई. (आई. एन. टी. 21एच.) कार्यों के माध्यम से फाइल से संबंधित अनुरोधों को संभालता है। संरक्षित मोड ऑपरेटिंग सिस्टम के तहत, जैसे कि माइक्रोसॉफ्ट विंडोज एन. टी. व्युत्पन्न (जैसे. एन. टी. 4,2000, एक्स. पी. और सर्वर 2003) और डोसेमु के साथ लिनक्स, ओएस कॉल को रोकता है और इसे ऑपरेटिंग सिस्टम के मूल डिस्क आई/ओ तंत्र को भेजता है। 32-बिट डिस्क एक्सेस का उपयोग करते समय विंडोज 9x और विंडोज फॉर वर्कग्रुप 3.11 भी बी. आई. ओ. एस. दिनचर्या को दरकिनार करते हैं। निम्न-स्तरीय डिस्क अभिगम करने के अलावा, आई. एन. टी. 13एच. कॉल और संबंधित बी. आई. ओ. एस. डेटा संरचनाएं प्रणाली से जुड़ी डिस्कों (या अन्य डी. ए. एस. डी. उपकरणों) के प्रकार और क्षमताओं के बारे में भी जानकारी प्रदान करती हैं; जब एक संरक्षित-मोड ओ. एस. बूट होता है, तो यह बी. आई. ओ. एस. से उस जानकारी का उपयोग डिस्क हार्डवेयर की गणना करने के लिए कर सकता है ताकि वह (ओ. एस.) उपयुक्त डिस्क आई/ओ. ड्राइवरों को लोड और कॉन्फ़िगर कर सके। मूल बी. आई. ओ. एस. रियल-मोड आई. एन. टी. 13एच. इंटरफेस लगभग 8 जी. बी. तक के आकार के ड्राइव का समर्थन करता है जिसे आमतौर पर भौतिक सी. एच. एस. एड्रेसिंग के रूप में संदर्भित किया जाता है। यह सीमा आईबीएम पीसी/एक्सटी डिस्क हार्डवेयर के हार्डवेयर इंटरफेस से उत्पन्न होती है। बी. आई. ओ. एस. ने आई. एन. टी. 13एच. कॉल में दिए गए सिलेंडर-हेड-सेक्टर (सी. एच. एस.) पते का उपयोग किया और इसे सीधे हार्डवेयर इंटरफेस में स्थानांतरित कर दिया। एक कम सीमा, लगभग 504 एमबी, बी. आई. ओ. एस. द्वारा उपयोग की जाने वाली सी. एच. एस. संबोधन सीमाओं और ए. टी. ए. हार्ड डिस्क द्वारा उपयोग की जाने वाली सीमाओं के संयोजन द्वारा लगाई गई थी, जो भिन्न हैं। जब बी. आई. ओ. एस. और ए. टी. ए. दोनों की सी. एच. एस. संबोधित करने की सीमाएँ संयुक्त की जाती हैं (अर्थात। जब उन्हें एक साथ लागू किया जाता है), तो 512-बाइट क्षेत्रों की संख्या जिन्हें संबोधित किया जा सकता है, कुल लगभग 504 एमबी का प्रतिनिधित्व करता है। 504 एमबी की सीमा को सीएचएस अनुवाद का उपयोग करके पार किया गया था, एक ऐसी तकनीक जिसके द्वारा बीआईओएस अपने मूल तार्किक सीएचएस ज्यामिति का उपयोग करके एटीए ड्राइव के साथ संवाद करते हुए आईएनटी 13एच इंटरफेस पर एक काल्पनिक सीएचएस ज्यामिति का अनुकरण करेगा। (जब तक 504 एमबी बैरियर से संपर्क किया जा रहा था, तब तक एटीए डिस्क ने बाहरी एटीए इंटरफेस पर अपने वास्तविक भौतिक ज्यामिति मापदंडों को प्रस्तुत करना बंद कर दिया था।) अनुवाद बी. आई. ओ. एस. को, अभी भी सी. एच. एस. संबोधन का उपयोग करते हुए, 8064 एम. बी. तक के आकार वाले ए. टी. ए. डिस्क को प्रभावी ढंग से संबोधित करने की अनुमति देता है, जो अकेले बी. आई. ओ. एस. सी. एच. एस. इंटरफेस की मूल क्षमता है। (ए. टी. ए. इंटरफेस में एक बहुत बड़ी देशी सी. एच. एस. संबोधित करने की क्षमता है, इसलिए एक बार बी. आई. ओ. एस. और ए. टी. ए. की सी. एच. एस. सीमाओं के "हस्तक्षेप" को संबोधित करके हल किया गया था, केवल बी. आई. ओ. एस. की छोटी सीमा महत्वपूर्ण थी।) सीएचएस अनुवाद को कभी-कभी तार्किक सीएचएस संबोधन के रूप में संदर्भित किया जाता है, लेकिन यह वास्तव में एक गलत नाम है क्योंकि इस बीआईओएस विकास के समय तक, एटीए सीएचएस पते पहले से ही तार्किक थे, भौतिक नहीं। 8064 एमबी सीमा आईएनटी 13एच इंटरफेस में उपयोग किए जाने वाले रजिस्टर मूल्य आधारित कॉलिंग परंपरा के संयोजन से उत्पन्न होती है और बैकवर्ड कम्पेटिबिलिटी बनाए रखने का लक्ष्य-यह निर्धारित करना कि आईएनटी 13एच को पारित सीएचएस पतों के प्रारूप या आकार को किसी एक क्षेत्र में अधिक बिट्स जोड़ने के लिए नहीं बदला जा सकता है, जैसे। सिलेंडर-संख्या क्षेत्र। यह सीमा 1024 सिलेंडर, 256 हेड, 63 सेक्टर और 512 बाइट ब्लॉक का उपयोग करती है, जो ठीक से 7.875 GIB को संबोधित करने (102425663) की अनुमति देती है। कुछ समय के लिए कई बी. आई. ओ. एस. थे जो इस इंटरफेस के असंगत संस्करणों की पेशकश करते थे-उदाहरण के लिए, ए. डब्ल्यू. ए. आर. डी. ए. टी. बी. आई. ओ. एस. और ए. एम. आई. 386एस. एक्स. बी. आई. ओ. एस. को सिलेंडर संख्या के बिट्स 10 और 11 को रजिस्टर डी. एच. के बिट्स 6 और 7 में रखकर 4096 सिलेंडरों तक संभालने के लिए बढ़ाया गया है। एमएस-डॉस के सभी संस्करणों (एमएस-डॉस 7 और विंडोज 95 सहित) में एक बग होता है जो 256 हेड (रजिस्टर मान 0xFF) के साथ डिस्क ड्राइव को बूट करने से रोकता है, इसलिए कई आधुनिक बायोस अधिकतम 255 (0xFE) हेड के साथ सीएचएस अनुवाद मानचित्रण प्रदान करते हैं, इस प्रकार कुल पता लगाने योग्य स्थान को बिल्कुल 8032.5 MiB (लगभग 7.844 GIB) तक कम कर देते हैं। इससे भी बड़ी डिस्क को संबोधित करने के लिए, आई. एन. टी. 13एच एक्सटेंशन के रूप में जाना जाने वाला एक इंटरफेस आई. बी. एम. और माइक्रोसॉफ्ट द्वारा पेश किया गया था, फिर बाद में फीनिक्स टेक्नोलॉजीज द्वारा बी. आई. ओ. एस. एन्हांस्ड डिस्क ड्राइव सर्विसेज (ई. डी. डी.) के हिस्से के रूप में फिर से प्रकाशित और थोड़ा विस्तारित किया गया। यह आई. एन. टी. 13एच. सेवा के भीतर नए कार्यों को परिभाषित करता है, जिनमें से सभी की कार्य संख्या 40एच. से अधिक है, जो 64-बिट लॉजिकल ब्लॉक एड्रेसिंग (एल. बी. ए.) का उपयोग करते हैं, जो 8 जी. आई. बी. तक संबोधित करने की अनुमति देता है। (एक ए. टी. ए. ड्राइव 28-बिट या 48-बिट एल. बी. ए. का भी समर्थन कर सकता है जो 512-बिट सेक्टर/ब्लॉक आकार मानते हुए क्रमशः 128 जी. बी. या 128 पी. आई. बी. तक की अनुमति देता है)। यह एक "पैकेट" इंटरफेस है, क्योंकि यह मूल आई. एन. टी. 13एच इंटरफेस के रजिस्टर आधारित कॉलिंग परंपरा के बजाय जानकारी के एक पैकेट के लिए एक सूचक का उपयोग करता है। यह पैकेट एक बहुत ही सरल डेटा संरचना है जिसमें एक इंटरफेस संस्करण, डेटा आकार और एल. बी. ए. शामिल हैं। सॉफ्टवेयर बैकवर्ड-कम्पेटिबिलिटी के लिए, विस्तारित कार्यों को मूल सीएचएस कार्यों के साथ लागू किया जाता है, और दोनों सेटों से कार्यों के लिए कॉल को आपस में मिलाया जा सकता है, यहां तक कि एक ही ड्राइव के लिए भी, इस चेतावनी के साथ कि सीएचएस कार्य डिस्क के पहले 8064 एमबी से आगे नहीं पहुंच सकते हैं। कुछ कैश ड्राइवर अपने बफ़र्स को साफ़ करते हैं जब यह पता चलता है कि डी. ओ. एस. को सीधे अनुप्रयोगों से आई. एन. टी. 13एच. जारी करके दरकिनार कर दिया गया है। आई. एन. टी. 13एच. के माध्यम से पढ़ी जाने वाली एक डमी का उपयोग अज्ञात कैश के लिए कैश फ्लशिंग को मजबूर करने के कई तरीकों में से एक के रूप में किया जा सकता है (जैसे. रिबूट करने से पहले)। ए. एम. आई. बी. आई. ओ. एस. लगभग 1990-1991 कचरा शब्द गुटनिरपेक्ष बफ़र्स से आते हैं। कुछ डी. ओ. एस. और क्लॉबर इंटरप्ट-एंड-स्टे-रेजिडेंट प्रोग्राम सक्षम करते हैं और रजिस्टर करते हैं इसलिए पी. सी. डी. ओ. एस. और एम. एस.-डी. ओ. एस. इसे रोकने के लिए अपने स्वयं के फिल्टर स्थापित करते हैं। सेवाओं की सूची यदि दूसरा कॉलम खाली है तो कार्य का उपयोग फ्लापी और हार्ड डिस्क दोनों के लिए किया जा सकता है। एफ. डी.: केवल फ्लापी डिस्क के लिए। एच. डी.: केवल हार्ड डिस्क के लिए। पीएस/2: केवल पीएस/2 प्रणाली पर हार्ड डिस्क के लिए। EXT: एक्सटेंशन का हिस्सा जो 1990 के दशक में 8 जीबी से अधिक के साथ हार्ड ड्राइव का समर्थन करने के लिए लिखा गया था। : रीसेट डिस्क प्रणालीः लास्ट ड्राइव ऑपरेशन की स्थिति प्राप्त करें-फ्लापी ड्राइव के लिए बिट 7 = 0, फिक्स्ड ड्राइव के लिए बिट 7 = 1: रीड सेक्टर फ्रॉम ड्राइव रिमार्क्स रजिस्टर सीएक्स में सिलेंडर संख्या (10 बिट, संभावित मान 0 से 1023 हैं) और सेक्टर संख्या (6 बिट, संभावित मान 1 से 63 हैं) दोनों शामिल हैं। सिलेंडर और सेक्टर बिट्स की संख्या नीचे दी गई हैः सी. एक्स. =---- सी. एच.---- सी. एल.---सिलेंडरः 76543210 98 सेक्टरः 543210 अनुवाद के उदाहरण हैंः सी. एक्स.: = (सिलेंडर और 255) एस. एच. एल. 8) या (सिलेंडर और 768) एस. एच. एल. 2) या सेक्टर; सिलेंडरः = (सी. एक्स. और $एफ. एफ. 100) एस. एच. एल. 8) या (सी. एक्स. और $सी. 0) एस. एच. एल. 2) सेक्टरः = सी. एक्स. और 63; बफर को संबोधित करने से यह सुनिश्चित होना चाहिए कि पूरा बफर दिए गए खंड के अंदर है, अर्थात। (BX + साइज _ ऑफ _ बफर) <= 10000h। अन्यथा कुछ बी. आई. ओ. एस. या हार्डवेयर संस्करणों के साथ व्यवधान विफल हो सकता है। उदाहरण के लिए मान लीजिए कि आप 16 सेक्टरों (= 2000h बाइट्स) को पढ़ना चाहते हैं और आपका बफर मेमोरी पते 4FF00h से शुरू होता है। स्मृति विभाजन का उपयोग करते हुए, रजिस्टर मूल्यों की गणना करने के विभिन्न तरीके हैं, उदाहरण के लिए। : ES = सेगमेंट = 4F00h BX = ऑफसेट = 0F00h सम = मेमोरी एड्रेस = 4FF00h एक अच्छा विकल्प होगा क्योंकि 0F00h + 2000h = 2F00h <= 10000h ES = सेगमेंट = 4000h BX = ऑफसेट = FF00h सम = मेमोरी एड्रेस = 4FF00h एक अच्छा विकल्प नहीं होगा क्योंकि इंटरप्ट 13h का FF00h + 2000h = 11F00h> 10000h फंक्शन 02h केवल आपकी हार्ड ड्राइव के पहले 16,450,560 सेक्टरों के सेक्टरों को पढ़ सकता है, 8 GB सीमा से परे सेक्टरों को पढ़ने के लिए आपको एक्सटेंशन के फंक्शन 42h का उपयोग करना चाहिए। एक अन्य विकल्प डॉस इंटरप्ट 25h हो सकता है जो एक विभाजन के भीतर क्षेत्रों को पढ़ता है। कोड उदाहरण [ओ. आर. जी. 7c00h]; कोड 7c00h xor अक्ष, अक्ष से शुरू होता है; सुनिश्चित करें कि डी. एस. 0 मूव डी. एस., अक्ष सी. एल. डी. पर सेट है; मान डालना शुरू करेंः मूव आह, 2एच; इंट13एच फ़ंक्शन 2 मूव अल, 63; हम 63 सेक्टरों को पढ़ना चाहते हैं मूव च, 0; सिलेंडर संख्या 0 मूव सी. एल., 2 से; सेक्टर संख्या 2-दूसरा सेक्टर (1 से शुरू होता है, 0 से नहीं) मूव डी. एच., 0; हेड नंबर 0 xor बी. एक्स., बी. एक्स. मूव एस., बी. एक्स. होना चाहिए 0 मूव बी. एक्स., 7ई. ई. टी. एच.; 512 बाइट्स मूल पते 7सी. एच. इंट 13एच जे. एम. पी. 7ई. एच. से; अगले पर कूदें ध्यान दें कि कैसे हमने डी. एल. (ड्राइव) को नहीं बदला। ऐसा इसलिए है क्योंकि जब कंप्यूटर पहली बार लोड होता है, तो डीएल को उस ड्राइव की संख्या पर सेट किया जाता है जिसे बूट किया गया था, इसलिए यह मानते हुए कि हम उस ड्राइव से पढ़ना चाहते हैं जिससे हमने बूट किया था, तो डीएल को बदलने की कोई आवश्यकता नहीं है। : ड्राइव करने के लिए क्षेत्रों को लिखेंः ड्राइव से क्षेत्रों को सत्यापित करें फॉर्मेट ट्रैकः फॉर्मेट ट्रैक सेट खराब क्षेत्र के झंडेः फॉर्मेट ड्राइव ट्रैक से शुरू होता हैः ड्राइव पैरामीटर टिप्पणियों को पढ़ें फ़ंक्शन 08h के तार्किक मान फ़ंक्शन 48h के भौतिक CHS मानों से भिन्न हो सकते हैं/होने चाहिए। परिणाम रजिस्टर सीएक्स में सिलेंडर और सेक्टर/ट्रैक मान दोनों होते हैं, फ़ंक्शन 02एच की टिप्पणी देखें। : इनिशियल ड्राइव पेयर कैरेक्टरिस्टिक्स ए. एच. = 0ए. एच.: रीड लॉन्ग सेक्टर्स फ्रॉम ड्राइव इस फंक्शन और फंक्शन 02एच (ऊपर देखें) के बीच एकमात्र अंतर यह है कि फंक्शन 0ए. एच. केवल 512 के बजाय प्रति सेक्टर 516 बाइट्स पढ़ता है। अंतिम 4 बाइट्स में त्रुटि सुधार कोड (ई. सी. सी.) होता है, जो सेक्टर डेटा का एक चेकसम है। : वर्तमान एक्सटेंशन की जाँच करेंः ड्राइव से विस्तारित पढ़ने वाले क्षेत्र जैसा कि पहले ही int 13h ए. एच. = 02h के साथ कहा गया है, यह सुनिश्चित करने के लिए ध्यान रखा जाना चाहिए कि पूरा बफर दिए गए खंड के अंदर है, अर्थात। (BX + साइज _ ऑफ _ बफर) <= 10000h: ड्राइव करने के लिए विस्तारित लेखन क्षेत्रः विस्तारित रीड ड्राइव पैरामीटर टिप्पणी फ़ंक्शन 48h के भौतिक CHS मान फ़ंक्शन 08h के तार्किक मूल्यों से भिन्न हो सकते हैं/होने चाहिए। आई. एन. टी. 13एच. ए. एच. = 4बी. एच.: ड्राइव एमुलेशन प्रकार प्राप्त करें आई. एन. टी. 10एच. बी. आई. ओ. एस. इंटरप्ट कॉल सिलेंडर-हेड-सेक्टर आई. एन. टी. (x86 निर्देश) डी. पी. एम. आई. (डी. ओ. एस. संरक्षित मोड इंटरफेस) राल्फ ब्राउन की इंटरप्ट लिस्ट बी. आई. ओ. एस. एन्हान्स्ड डिस्क ड्राइव विनिर्देश संदर्भ बाहरी लिंक बी. आई. ओ. एस. इंटरप्ट 13एच एक्सटेंशन राल्फ ब्राउन की व्यापक इंटरप्ट लिस्ट नॉर्टन गाइड आई. एन. टी. 13एच., ए. एच. = 00एच. के बारे में।