आंतरिक बनाम बाहरी विखंडन
आंतरिक और बाहरी विखंडन के बीच अंतर कई लोगों के लिए रुचि का विषय है जो अपने कंप्यूटर ज्ञान में सुधार करना पसंद करते हैं। इस अंतर को जानने से पहले हमें यह देखना होगा कि विखंडन क्या है। विखंडन एक ऐसी घटना है जो कंप्यूटर मेमोरी जैसे रैंडम एक्सेस मेमोरी (रैम) या हार्ड डिस्क में होती है, जो खाली स्थान के अपव्यय और अक्षम उपयोग का कारण बनती है। जबकि उपलब्ध स्थान के कुशल उपयोग में बाधा आती है, यह प्रदर्शन के मुद्दों का भी कारण बनता है। आंतरिक विखंडन तब होता है जब स्मृति आवंटन निश्चित आकार के विभाजन पर आधारित होता है, जहां एक छोटे आकार के आवेदन के बाद एक स्लॉट को सौंपा जाता है, उस स्लॉट का शेष खाली स्थान बर्बाद हो जाता है।बाहरी विखंडन तब होता है जब मेमोरी को गतिशील रूप से आवंटित किया जाता है, जहां कई स्लॉट्स को लोड करने और उतारने के बाद यहां और वहां खाली स्थान को सन्निहित होने के बजाय वितरित किया जा रहा है।
आंतरिक विखंडन क्या है?
उपरोक्त आकृति पर विचार करें जहां एक निश्चित आकार की मेमोरी आवंटन तंत्र का पालन किया जा रहा है। प्रारंभ में, मेमोरी खाली होती है और आवंटक ने मेमोरी को निश्चित आकार के विभाजन में विभाजित किया है। फिर बाद में ए, बी, सी नाम के तीन प्रोग्राम पहले तीन पार्टिशन में लोड किए गए जबकि चौथा पार्टिशन अभी भी फ्री है।प्रोग्राम ए विभाजन के आकार से मेल खाता है, इसलिए उस विभाजन में कोई अपव्यय नहीं है, लेकिन प्रोग्राम बी और प्रोग्राम सी विभाजन के आकार से छोटे हैं। तो भाग 2 और विभाजन 3 में खाली जगह शेष है। हालाँकि, यह खाली स्थान अनुपयोगी है क्योंकि मेमोरी एलोकेटर केवल प्रोग्राम को पूर्ण विभाजन प्रदान करता है लेकिन इसका कोई भाग नहीं है। खाली जगह की इस बर्बादी को आंतरिक विखंडन कहते हैं।
उपरोक्त उदाहरण में, यह समान आकार के निश्चित विभाजन हैं लेकिन यह उस स्थिति में भी हो सकता है जहां विभिन्न निश्चित आकारों के विभाजन उपलब्ध हैं। आमतौर पर मेमोरी या सबसे कठिन स्थान को ब्लॉकों में विभाजित किया जाता है जो आमतौर पर 2 की शक्तियों के आकार के होते हैं जैसे कि 2, 4, 8, 16 बाइट्स। तो एक प्रोग्राम या 3 बाइट्स की एक फाइल को 4 बाइट ब्लॉक को सौंपा जाएगा लेकिन उस ब्लॉक का एक बाइट आंतरिक विखंडन के कारण अनुपयोगी हो जाएगा।
बाहरी विखंडन क्या है?
उपरोक्त आकृति पर विचार करें जहां स्मृति आवंटन गतिशील रूप से किया जाता है। गतिशील स्मृति आवंटन में, आवंटक उस कार्यक्रम के लिए केवल सटीक आवश्यक आकार आवंटित करता है। पहली मेमोरी पूरी तरह से फ्री है। फिर विभिन्न आकारों के प्रोग्राम ए, बी, सी, डी और ई को एक के बाद एक लोड किया जाता है और उन्हें उसी क्रम में स्मृति में रखा जाता है। फिर बाद में, प्रोग्राम ए और प्रोग्राम सी बंद हो जाते हैं और वे मेमोरी से अनलोड हो जाते हैं। अब मेमोरी में तीन खाली स्थान हैं, लेकिन वे आसन्न नहीं हैं। अब प्रोग्राम F नाम का एक बड़ा प्रोग्राम लोड होने वाला है लेकिन प्रोग्राम F के लिए कोई भी फ्री स्पेस ब्लॉक पर्याप्त नहीं है। प्रोग्राम F के लिए सभी फ्री स्पेस का जोड़ निश्चित रूप से पर्याप्त है, लेकिन आसन्नता की कमी के कारण वह स्पेस है कार्यक्रम एफ के लिए अनुपयोगीइसे बाहरी विखंडन कहते हैं।
आंतरिक और बाहरी विखंडन में क्या अंतर है?
• आंतरिक विखंडन तब होता है जब एक निश्चित आकार की स्मृति आवंटन तकनीक का उपयोग किया जाता है। बाहरी विखंडन तब होता है जब एक गतिशील स्मृति आवंटन तकनीक का उपयोग किया जाता है।
• आंतरिक विखंडन तब होता है जब एक निश्चित आकार का विभाजन किसी प्रोग्राम/फ़ाइल को विभाजन से कम आकार के साथ सौंपा जाता है जिससे उस विभाजन में शेष स्थान अनुपयोगी हो जाता है। बाहरी विखंडन कुछ समय के लिए प्रोग्राम या फ़ाइलों को लोड और अनलोड करने के बाद पर्याप्त आसन्न स्थान की कमी के कारण होता है क्योंकि तब सभी खाली स्थान इधर-उधर वितरित हो जाते हैं।
• बाहरी विखंडन को संघनन द्वारा खनन किया जा सकता है जहां निर्दिष्ट ब्लॉकों को एक तरफ ले जाया जाता है, ताकि सन्निहित स्थान प्राप्त हो। हालाँकि, इस ऑपरेशन में समय लगता है और कुछ महत्वपूर्ण निर्दिष्ट क्षेत्रों जैसे कि सिस्टम सेवाओं को सुरक्षित रूप से स्थानांतरित नहीं किया जा सकता है। विंडोज़ में डिस्क डीफ़्रेग्मेंटर चलाते समय हम हार्ड डिस्क पर किए गए इस संघनन चरण का निरीक्षण कर सकते हैं।
• विभाजन और पेजिंग जैसे तंत्रों द्वारा बाहरी विखंडन को रोका जा सकता है। यहां एक तार्किक सन्निहित वर्चुअल मेमोरी स्पेस दिया गया है जबकि वास्तव में फाइलों/प्रोग्रामों को भागों में विभाजित किया जाता है और इधर-उधर रखा जाता है।
• कई आकारों के विभाजन और सबसे उपयुक्त के आधार पर एक प्रोग्राम असाइन करके आंतरिक विखंडन को अपंग किया जा सकता है। हालाँकि, अभी भी आंतरिक विखंडन पूरी तरह से समाप्त नहीं हुआ है।
सारांश:
आंतरिक बनाम बाहरी विखंडन
आंतरिक विखंडन और बाहरी विखंडन दोनों ऐसी घटनाएं हैं जहां स्मृति बर्बाद हो जाती है। आंतरिक विखंडन निश्चित आकार के स्मृति आवंटन में होता है जबकि बाहरी विखंडन गतिशील स्मृति आवंटन में होता है। जब एक आवंटित विभाजन एक प्रोग्राम द्वारा कब्जा कर लिया जाता है जो विभाजन से कम होता है, तो शेष स्थान बर्बाद हो जाता है जिससे आंतरिक विखंडन होता है। जब कार्यक्रमों को लोड करने और उतारने के बाद पर्याप्त आसन्न स्थान नहीं मिल पाता है, इस तथ्य के कारण कि यहां और वहां खाली स्थान वितरित किया जाता है, यह बाहरी विखंडन का कारण बनता है।फ्रैग्मेंटेशन किसी भी मेमोरी डिवाइस जैसे रैम, हार्ड डिस्क और फ्लैश ड्राइव में हो सकता है।