Dynamic Storage Problem In OS In Hindi ?

हेलो दोस्तों आज के इस ब्लॉग पोस्ट(Dynamic Storage Problem In OS In Hindi) में हम आपको operating system के अंतर्गत dynamic storage problem के बारे में हिंदी में जानकारी देने वाले है | हम यहाँ पर देखेंगे की क्या क्या problems आती है जब किसी भी प्रोसेस को dynamically memory allocate की जाती है |

Actual में पूरी मेमोरी ब्लॉक में छोटे बड़े मेमोरी के होल्स अथवा chunks घूमते रहते है | और जब किसी भी प्रोसेस को execution के लिए मेमोरी की जरुरत पड़ती है तब सिस्टम अथवा OS उसे ऐसा मेमोरी ब्लॉक असाइन करता है जो उसे पर्याप्त हो सके, कहने का मतलब सिस्टम उसे एक बड़ा मेमोरी ब्लॉक allocate करता है |Dynamic Storage Problem In OS In Hindi|

पर अगर मेमोरी ब्लॉक कुछ ज्यादा ही बड़ा है तो फिर यह दो भाग में डिवाइड हो जाता है | एक भाग आने वाली प्रोसेस को दे दिया जाता है और बाकी दूसरा भाग वापिस मेमोरी होल्स में सम्लित हो जाता है |Dynamic Storage Problem In OS In Hindi|

और जब process अपनी execution खत्म कर लेती है तो फिर वह memory block को वापिस से फ्री कर देतीं है और वह मेमोरी ब्लॉक फ्री पूल में आ जाता है | और अगर इस मेमोरी ब्लॉक के adjacent कोई और मेमोरी होल्स होता है तो फिर ये दोनों मिल कर फिर से एक बड़ा मेमोरी ब्लॉक बना लेते है |

और इस तरह adjacent होल्स को मिलाकर एक बड़ा होल्स बनाने की प्रोसेस को हम coalescing कहते है | और इस पॉइंट पर सिस्टम चेक कर सकता है की कोई प्रोसेस मेमोरी के लिए वेटिंग स्टेट में तो नहीं है | अथवा जो भी avaiable फ्री मेमोरी स्पेस है या फिर recombined मेमोरी होल्स है वो requested प्रोसेस को execute करने के लिए पर्याप्त है या फिर नहीं |

यहाँ पर एक particular instance के लिए डायनामिक मेमोरी एलोकेशन की प्रॉब्लम आ सकती है | जो कि यह है की हम एक फ्री होल्स मेमोरी लिस्ट में से किसी प्रोसेस को कौन सा मेमोरी होल असाइन करें | पर इसके लिए कई सारे solutions उपलब्ध है |

किसी भी मेमोरी होल को select करने के लिए तीन तरह की स्ट्रेटेजी बनाई गयी है | First Fit , Best Fit , और Worst Fit | इन तीनो strategies का उपयोग हम memory holes को किसी भी प्रोसेस के लिए सेलेक्ट करने के लिए करते है कि कौन सा memory hole किस process को दिया जाये |

First Fit :

फर्स्ट फिट के अंतर्गत हम उस पहले होल को प्रोसेस के लिए असाइन कर देते है जो कि उसके execution के लिए पर्याप्त बड़ा है | इसके लिए हम होल्स की लिस्ट को शुरू से सर्च करना शुरू कर देते है | और जहाँ पर भी हमें ऐसा मेमोरी होल मिल जाता है जो पर्याप्त बड़ा है वही पर हम उस होल को प्रोसेस को असाइन कर देते है |

Best Fit :

बेस्ट फिट के अंतर्गत हम पूरी मेमोरी होल्स की लिस्ट को सर्च करते है और फिर उसमे वो सबसे छोटा मेमोरी होल सेलेक्ट करते है जो की प्रोसेस के execution के लिए पर्याप्त हो और फिर उसे प्रोसेस के लिए असाइन कर देते है | इस मेमोरी स्कीम में सबसे कम मेमोरी बचने के चांस होते है |

Worst Fit :

इस मेमोरी स्कीम में हम किसी भी प्रोसेस को सबसे बड़ा मेमोरी होल असाइन कर देते है | और अगर होल्स की लिस्ट sorted आर्डर में नहीं होती है तो फिर हम पूरी लिस्ट को सर्च करते है | और फिर सबसे बड़े मेमोरी ब्लॉक को प्रोसेस के लिए assign करते है | इस memory स्कीम में बहुत जायदा मेमोरी बची, unused बची रह जाती है |

Quick Q&A:

What is the best fit worst fit and first fit?/ first Fit, Best Fit, और Worst Fit क्या है?

वैसे तो इस ब्लॉग में ऊपर हमने इनकी डेफिनिशन एक्सप्लेन कर दी है | पर चलिए अब आपको example की मदद से यह स्कीम समझाते है |

assume कर लीजिये हमारे पास एक 15kb का मेमोरी ब्लॉक है | तो first Fit के अंतर्गत हम ऐसे मेमोरी ब्लॉक की सर्च करते है जो हमारी प्रोसेस को execute होने के लिए पर्याप्त हो | जैसे कि एक 13 kb की प्रोसेस को हम यह 15kb का मेमोरी ब्लॉक असाइन कर देते है क्योकि सर्च में सबसे पहले हमें यही मेमोरी ब्लॉक मिला था और यह इस 13 kb की प्रोसेस के लिए पर्याप्त था |

और Worst Fit के केस में हम एक बहुत कम मेमोरी के प्रोसेस के लिए हम एक बहुत बड़े मेमोरी ब्लॉक को असाइन कर देते है | जैसे कि assume कीजिये हम एक 5kb कि प्रोसेस को 15kb का मेमोरी ब्लॉक असाइन कर दे तो फिर यह Worst Fit के case में आएगा |

What are the disadvantages of the best-fit partitioning algorithm?/ best Fit partitioning algorithm कि advantages क्या है?

actually best Fit के केस में हमें प्रोसेस के हिसाब से सबसे ेक्सस्ट अथवा suitable मेमोरी ब्लॉक ढूंढ़ना होता है तो इसके लिए हमें पूरी मेमोरी होल्स लिस्ट को traverse करना होता है | और इस प्रोसेस में थोड़ा सा टाइम लग जाता है | इसलिए यह scheme मेमोरी मैनेजमेंट के हिसाब से अच्छी है पर यह थोड़ा slow और time taking स्कीम है |

Which is better first fit or best fit?/ best Fit और first Fit में कौन सी स्कीम बेहतर है ?

देखिये दोनों की अपनी अपनी importance है | अब depend करता है कि आपकी process रेक्विरेमेंट कैसी है | अगर आप को space और memory management के हिसाब से काम करना है तो फिर best Fit अच्छी है | और अगर आपको को time और speed के हिसाब से काम करना है तो फिर first Fit अच्छी है |

Which fit is faster? कौन सी memory management scheme फ़ास्ट है ?

वैसे तो first Fit को सबसे फास्टर माना जायेगा क्योकि इसमें जो सबसे पहला मेमोरी ब्लॉक मिल जाता है जो प्रोसेस के लिए भी पर्याप्त रहता है उसे assign कर दिया जाता है | पर इस स्कीम में मेमोरी के wastage होने के चांस भी बहुत रहते है | अगर एक छोटी मेमोरी requirement की प्रोसेस को एक बड़ा मेमोरी ब्लॉक मिल जाता है तो फिर बहुत सारी मेमोरी waste हो जाती है |

Conclusion:

हेलो दोस्तों इस ब्लॉग पोस्ट(Dynamic Storage Problem In OS In Hindi) में हमने देखा की dynamic memory allocation में कौन कौन सी समस्या आ जाती है और फिर कैसे हम उन्हें solve कर सकते है | dynamic memory allocation में बहुत सी बार memory unused रह जाती है और वह मेमोरी waste हो जाती है, इस समस्या को solve करने के लिए हम कुछ memory management schemes का use करते है जैसे कि First Fit , best Fit , और Worst Fit |

इस ब्लॉग(Dynamic Storage Problem In OS In Hindi) को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते [email protected]पर ईमेल लिख सकते है|

आशा करता हूँ, कि आपने इस पोस्ट(Dynamic Storage Problem In OS In Hindi) को खूब एन्जॉय किया होगा|

आप स्वतंत्रता पूर्वक अपना बहुमूल्य फीडबैक और कमेंट यहाँ पर दे सकते है|

आपका समय शुभ हो|

Anurag

I am a blogger by passion, a software engineer by profession, a singer by consideration and rest of things that I do is for my destination.