सीधे मुख्य सामग्री पर जाएं

page replacement in hindi

 आज हम computer course in hindi मे हम   page replacement in hindi के बारे में जानकारी देते क्या होती है तो चलिए शुरु करते हैं- 

page replacement in hindi:-

1. डिस्क पर intended page के लिए लोकेशन को ढूँढ़ना।
2. उस independent frame को ढूँढ़ना यहाँ पर कोई independent frame इसे उपयोग करता है । अन्य एक पेज replacement algorithm को एक Victim Frame को चुनने के लिए उपयोग करना । डिस्क के लिए Victim Frame को लिखना , पेज को और फ्रेम टेबल को परिवर्तित करना । 
3 . फ्री फ्रेम में से intended page को पढ़ना , पेज और फ्रेम टेबल को converted करना ।
4. यूज़र प्रोसेस को वापस start करना

Page Replacement Algorithms in hindi with examples:-

यहाँ पर कई सारी page replacement algorithm हैं । प्रत्येक ऑपरेटिंग सिस्टम Possible form से अपनी यूनिक रिप्लेसमेन्ट स्कीम रखता है । किस प्रकार हम एक विशेष रिप्लेसमेन्ट एलगोरिथम को चुनते हैं और सामान्य में , हम एक रिप्लेसमेन्ट एलगोरिथम को न्यूनतम पेज - फॉल्ट रेट के साथ चाहते हैं । हम एक एलगोरिथम का evaluation इसे memory reference के एक Specific string पर रन करके और पेज - फॉल्टस की गणना करने के द्वारा करते हैं । मैमोरी रैफ्रेन्स की स्ट्रिंग , रैफ्रेन्स स्ट्रिंग (reference string) कहलाती है । हम रैफ्रेन्स स्ट्रिंग को fake appearance से ( एक रैन्डम नम्बर जेनरेटर के द्वारा ) जेनरेट कर सकते हैं या एक दिये गये सिस्टम को ट्रैसिंग और प्रत्येक मैमोरी रैफ्रेन्स के एड्रैस को रिकॉर्ड करने के द्वारा जेनरेट किया जा सकता है । बाद का चुनाव डाटा की बड़ी संख्या ( 1 मिलियन एड्रैसेज़ के Order पर ) को जेनरेट करता है । डाटा की संख्या को कम करने के लिये हमें दो वस्तुओं को करना चाहिये । इसमें पहला , एक दिये गये पेज आकार के लिये ( और पेज आकार सामान्य हार्डवेयर या सिस्टम द्वारा fixed किया जाता है ) , हमें पूरे एड्रैस पर विचार न करके केवल पेज - नम्बर पर ही विचार करने की आवश्यकता होती है । 
दूसरी , यदि हम पेज P के लिये एक रैफ्रेन्स रखते हैं , कोई भी quickness से पेज P के लिये pursuance करने वाला रैफ्रेन्स एक पेज फॉल्ट का कारण कभी नहीं हागा । पेज P पहले रैफ्रेन्स के बाद मैमोरी में आ जायेगा , शीघ्रता से pursuance करने वाला रैफ्रेन्स गलत नहीं होता है । 
उदाहरण:- 
यदि हम एक specific process को ट्रैस करते हैं , हमें address chain को अवश्य रिकॉर्ड करना चाहिये 
0100 , 0432 , 0101,0612 , 0102 , 0103 , 0104,0601,0611 , 0102 , 0103 , 0104 , 0104 , 0610 , 0102 , 0103 , 0104 , 0101 , 0609 , 0102 , 0105 , 
जो कि , प्रति पेज 100 बाइट्स पर रैफ्रेन्स स्ट्रिंग को कम कर देता है-
1,4,1,6,1,6,1,6,1,6,1
एक specific reference string और Page - Replacement Algorithm के लिये पेज फॉल्ट्स की संख्या को fix करने के लिये , हमें उपलब्ध पेज फ्रेमों की संख्या को भी जानने की आवश्यकता होती है । जैसे - जैसे उपलब्ध फ्रमों की संख्या में वृद्धि होती है , वैसे - वैसे पेज - फॉल्ट्स की संख्या में कमी होती जायेगी । 
उदाहरण :- यदि हम तीन या तीन से अधिक फ्रेमों को रखते हैं , हम केवल तीन फॉल्ट्स रख सकते हैं , एक फॉल्ट प्रत्येक पेज के पहले रैफ्रेन्स के लिये होता है । वहीं दूसरी ओर केवल एक उपलब्ध फ्रेम के साथ हम 11 फॉल्ट्स में resulting एक रिप्लेसमेन्ट को प्रत्येक रैफ्रेन्स के साथ रख सकते हैं । सामान्यत Curve की आशा करते हैं । जैसे - जैसे फ्रेमों की संख्या बढ़ती जाती है , वैसे - वैसे पेज - फॉल्ट्स की संख्या कुछ मिनीमम लेवल तक गिरती या कम होती जाती है । फिज़िकल मैमोरी को जोड़ने के द्वारा फ्रमों की संख्या को बढ़ाया जा सकता है ।
पेज - रिप्लेसमेन्ट एलगोरिथम को समझने के लिये , हम रैफ्रेन्स स्ट्रिंग का उपयोग तीन फ्रेमों वाली मैमोरी के लिये करेंगे। 
7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,0,1,7,0,1 4.131 . 

Types of Page - Replacement Algorithm in hindi:-

1. FIFO Algorithm
2. Optimal Algorithm
3. LRU Algorithm
4. Counting Algorithms
5. Page Buffering Algorithm

1. FIFO Algorithm :-

सबसे सरल पेज - रिप्लेसमेन्ट एलगोरिथम एक FIFO एलगोरिथम है । एक FIFO रिप्लेसमेन्ट एलगोरिथम प्रत्येक पेज के साथ तभी सम्मिलित की जाती जब पुराने पेज को मैमोरी में लाया जाता है जब एक पेज को replaced किया जा सकता है , और पुराने पेज को select किया जाता है । उस समय जटिल रूप से रिकॉर्ड करने की आवश्यकता नहीं होती है । हम एक FIFO क्यू को मैमोरी में सभी पेजों को सम्भालकर रखने के लिये manufactured कर सकते हैं । हम पेज को क्यू के प्रारम्भ पर replaced करते हैं जब एक पेज मैमोरी में लाया जाता है , हम इसे क्यू के पिछले भाग पर प्रवेश कराते हैं ।

2. Optimal Algorithm:-

यह Belady's ऐनॉमली की खोज का एक परिणाम यह था कि इससे Optimal Page - Replacement Algorithm के लिये ढूँढ़ना था । Optimal Page - Replacement Algorithm सभी एलगोरिथम्स की निम्नतम पेज - फॉल्ट रेट रखती है । ऑप्टीमल एलगोरिथम कभी भी ऐनॉमली से प्रभावित नहीं होता है । ऑप्टीमल पेज - रिप्लेसमेन्ट एलागोरिथम अपना अस्तित्व रखती है और OPT या MIN कहलाती है । ये सरलतापूर्वक , उस पेज को replaced करती है जो लम्बे समय अन्तराल के लिये उपयोग नहीं किया जायेगा । हम इस पेज - रिप्लेसमेन्ट एलगोरिथम का उपयोग फ्रेमों की स्थायी संख्या के लिये निम्नतम सम्भव पेज - फॉल्ट रेट की निश्चितता प्रदान करता है।
ऑप्टीमल पेज- रिप्लेसमेन्ट एलगोरिथम implementation में कठिन होती है क्योंकि इसे रैफ्रेन्स स्ट्रिंग के लिये future के ज्ञान की आवश्यकता होती है ( हम एक समान स्थिति को SJF सी.पी.यू. शेड्यूलिंग एलगोरिथम के साथ उपयोग करते है ) । इससे यह होता है कि ऑप्टीमल एलगोरिथम मुख्य रूप से comparative study के लिये use की जाती है । 

3. LRU Algorithm:-

यदि Optimal algorithm implemented करने योग्य नहीं होती है , Optimal algorithm के लिये लगभग पूर्ण संभावना हो जाती है । FIFO और OPT एलगोरिथम के मध्य की अन्तर यह है कि FIFO एलगोरिथम उस समय उपयोग किया जाता है पेज मैमोरी में लायी गयी OPT एलगोरिथम उस समय उपयोग की जाती है जब एक पेज को उपयोग किया जाना है । यदि हम पहले कार्य को भविष्य में आगे काम आने वाले कार्य की तरह उपयोग करते हैं , तब हम उस पेज को replaced करेंगे जो लम्बे समय अन्तराल के लिये उपयोग नहीं किया गया है । ये Least Recently Used ( LRU ) एलगोरिथम है । LRU रिप्लेसमेन्ट प्रत्येक पेज के साथ सम्मिलित किया जाता है । जब एक पेज को replaced किया जा सकता है , LRU उस पेज का चुनाव करता है जो लम्बे समय अन्तराल के लिये उपयोग नहीं किया गया है यह ऑप्टीमल पेज - रिप्लेसमेन्ट एलगोरिथम एक बार पीछे की तरफ देखती है अन्यथा आगे की ओर देखती है । ( यदि हम ये मानते हैं कि SR रैफ्रेन्स स्ट्रिंग S का दोहराव है , तब S पर OPT एलगोरिथम के लिये पेज - फॉल्ट रेट SR पर OPT एलगोरिथम के लिये पेज - फॉल्ट रेट के समान होती है । ठीक इसी प्रकार S पर LRU एलगोरिथम के लिये पेज - फॉल्ट रेट SR पर LRU एलगोरिथम पेज - फॉल्ट रेट के समान होती है । )

(i) Counters:- 

एक सरलतम स्थिति में , हम प्रत्येक टेबल एन्ट्री के साथ एक उपयोग की हुई फील्ड् को सम्मिलित करते हैं और सी.पी.यू. को एक लॉजिकल क्लॉस या काउण्टर के साथ जोड़ते हैं । क्लॉक प्रत्येक मैमोरी रैफ्रेन्स के लिये बढ़ाया जाता है और जब कभी एक पेज के लिये रैफ्रेन्स बनाया जाता है , क्लॉक रजिस्टर्स की विषय सूची इस कार्य के लिये पेज टेबल में उपयोग की गयी फील्ड के समय के लिये कॉपी की जाती है । इस प्रकार , हम प्रत्येक पेज के लिये अन्तिम रैफ्रेन्स का समय हमेशा रखते हैं । हम पेज को न्यूनतम टाइम वैल्यू के साथ replaced करते हैं । ये स्कीम को पेज टेबल को पेज ढूँढ़ने के लिये और प्रत्येक मैमोरी एक्सेस के लिये मैमोरी को लिखने की आवश्यकता होती है । टाइम को भी उस समय Organized किया जाना चाहिये जब पेज - टेबल परिवर्तित की गयी हो ( सी.पी.यू. शेड्यूलिंग के दौरान ) क्लॉक का ओवरफ्लो पर विचार किया जाना चाहिये ।

(ii) Stack :-

LRU रिप्लेसमेन्ट की अन्य एप्रोच पेज नम्बर के स्टैक को रखना है । जब कभी एक पेज को रैफर किया जाता है , ये स्टैक से हटाया जाता है और ऑप पर रखा जाता है । इस प्रकार , स्टैक का टॉप हमेशा नया उपयोग किया गया पेज होता है और बॉटम LRU पेज होता है क्योंकि एन्ट्रीज को स्टैक के मध्य में से हटाया जाना चाहिये । ये डबल लिंक्ड लिस्ट के द्वारा उचित रूप से executed किया जाता है जो हैड और टेल पॉइन्टर के साथ होता है और एक पेज को हटाने पर और इसे स्टैक के टॉप पर स्थापित करने के लिये 6 पॉइन्टर्स को परिवर्तित करने की आवश्यकता होती है । प्रत्येक अपडेट थोड़ा बहुत महँगा होता है लेकिन यहाँ पर रिप्लेसमेन्ट के लिये किसी सर्च की आवश्यकता नहीं होती है , टेल पॉइन्टर स्टैक के बॉटम पर केन्द्रित किया जाता है जोकि LRU पेज होता है । ये एप्रोच LRU रिप्लेसमेन्ट को सॉफ्टवेयर या माइक्रोकोड execution के लिये विशिष्ट रूप से उपयुक्त होती है न तो ऑप्टीमल रिप्लेसमेन्ट और न तो LRU रिप्लेसमेन्ट Belady's ऐनॉमली से बाधित नहीं होती है । यहाँ पर पेज रिप्लेसमेन्ट एलगोरिथम की category होती है , जो स्टैक एलगोरिथम कहलाती है , जो Belady's ऐनॉमली को प्रदर्शित नहीं कर सकते हैं । एक स्टैक एलगोरिथम एक एलगोरिथम होती है जिसके लिये यह ये प्रदर्शित कर सकती है कि फ्रेमों के लिये मैमोरी में पेजों के सैट को पेजों के सैट के Subset की तरह प्रदर्शित किये जाते n हैं जो LRU रिप्लेसमेन्ट के लिये n +1 फ्रेमों के साथ मैमोरी में होते हैं , मैमोरी में पेजों का सैट शीघ्रता से उपयोग किया गया रैफ्रेन्स पेज कहलाता है । यदि फ्रेमों की संख्या बढ़ती है , ये n पेज fast उपयोग किये जाने वाले पेज होंगे और इसलिये अभी तक मैमोरी में रहेगा । 
यह ध्यान दीजिये कि LRU का implementation standard TLB रजिस्टर्स से आगे हार्डवेयर असिस्टेन्स के बिना सोचने योग्य नहीं होगा । क्लॉक फील्ड्स की अपडेटिंग या स्टैक प्रत्येक मैमोरी रैफ्रेन्स के लिये पूरी की जा सकती है । यदि हम प्रत्येक रैफ्रेन्स को सॉफ्टवेयर द्वारा डाटा स्ट्रक्चर्स की तरह अपडेट करने के लिये उपयोग करते हैं , ये प्रत्येक मैमोरी रैफ्रेन्स को एक फैक्टर द्वारा धीमा किया जा सकता है , इसलिये प्रत्येक यूज़र को 10 के फैक्टर द्वारा धीमा किया जाता है । कुछ सिस्टम मैमोरी मैनेजमेन्ट के लिये ओवरहैड के इस लेवल को सहन कर सकते हैं ।

4.Counting Algorithms:-

Counting Algorithms यहाँ पर कई सारी अन्य एलगोरिथम हैं जो पेज रिप्लेसमेन्ट के लिये उपयोग की जा सकती हैं ।
 उदाहरण :-
 हम रैफ्रेन्स की संख्या के एक काउण्डटर को रख सकते हैं जो प्रत्येक पेज के लिये बनाया गया है 
दो स्कीमों को developed करता है । 

(i) LFU Algorithm :-

Least Frequently Used पेज - रिप्लेसमेन्ट एलगोरिथम को उस पेज की आवश्यकता होती है जो न्यूनतम गणना के साथ replaced किया जा सकता है । इस चुनाव के लिये कारण यह है कि एक सक्रिय रूप से उपयोग किया गया पेज एक बड़ा रैफ्रेन्स काउण्ट रखता है । ये एलगोरिथम उस स्थिति से बाधित होती है जिसमें एक पेज प्रोसेस के प्रारम्भिक अवस्था के दौरान उपयोग किया जाता है । लेकिन ये पुन कभी भी उपयोग नहीं किया जाता है । चूंकि ये अत्यधिक मात्रा में उपयोग किया जाता है , एक बड़ा काउण्ट रखता है और आवश्यकता न होते हुए भी मैमोरी में रहता है । काउण्ट को सही ढंग से स्थित करने का एक हल रेग्यूलर अन्तराल पर 1 बिट को सैट करना है ।

(ii) MFU Algorithm:-

Most Frequently Used पेज - रिप्लेसमेन्ट एलगोरिथम इस तर्क पर आधारित होती है कि पेज जो न्यूनतम गणना के साथ था सम्भव अभी लाया गया है और अभी तक उपयोग किया जा रहा है । जैसा कि आप सोच सकते है कि MFU और LFU रिप्लेसमेन्ट सामान्य नहीं होते हैं । इन एलगोरिथम का execution रूप से महँगा होता है और ये OPT रिप्लेसमेन्ट को ठीक प्रकार से नहीं करते हैं ।

5. Page Buffering Algorithm:-

Page Buffering Algorithm यह एक विशिष्ट पेज - रिप्लसमेन्ट एलगोरिथम के अतिरिक्त अन्य प्रक्रियायें भी अक्सर उपयोग की जाती है । 
उदाहरण :-
सिस्टम्स सामान्य रूप से फ्री - फ्रेमों के Pool को रखते है । जब एक पेज फॉल्ट प्राप्त होता है , एक Victim Frame इससे पहले चुना जाता है । फिर भी , desired page pool से फ्री - फ्रेम में विक्टिम के लिखने से पहले पढ़ा जाता है । ये प्रक्रिया किसी Victim page को लिखने की प्रतीक्षा के बिना प्रोसेस को पुन प्रारम्भ करने की आज्ञा देता है । जब Victim बाद में लिख दिया जाता है , इसके फ्रेम ,free frame pool के साथ जोड़ दिये जाते हैं । इस विचार को बढ़ाने के लिये converted pages की सूची को organized करना है । जब कभी पेजिंग डिवाइस सुस्त हो जाती हैं , एक converted pages चुना जाता है और डिस्क पर लिखा जाता है । तब इसकी मॉडीफाई बिट पुन : सैट की जाती है । ये स्कीम यह सम्भावना बढ़ाती है कि एक पेज स्पष्ट होगा जब ये रिप्लेसमेन्ट के लिये चुना जाता है और इसे लिखने की कोई आवश्यकता नहीं होगी ।
इसमें अन्य Conversion Free - Frames के pool को रखते हैं लेकिन ये याद रखते हैं कि प्रत्येक फ्रेम में कौन - सा पेज था । चूंकि फ्रेम के घटक उस समय conversion नहीं होता है जब फ्रेम का डिस्क के लिये लिखा जाता है , पुराने पेज को free frame pool से सीधे ही पुन उपयोग किया जा सकता है यदि इसकी आवश्यकता फ्रेम को पुन : उपयोग करने से पहेले होती है । 
इस स्थिति में , किसी I / O की आवश्यकता नहीं होती है । जब एक पेज फॉल्ट प्राप्त होता है , सबसे पहले हम यह चैक करते हैं कि Interested Page Free - Frame में है । या नहीं । यदि ये Free - Frame pool में नहीं है , हमें एक Free - Frame को अवश्य चुनना चाहिये और इसमें पढ़ना होता है । ये तकनीक FIFO रिप्लेसमेन्ट एलगोरिथम के साथ VAX / VMS सिस्टम में उपयोग की जाती है । जब FIFO रिप्लेसमेन्ट एलगोरिथम गलती से एक पेज को replaced कर देती है तो ये तब भी उपयोग में होती है , ये पेज Free - Frame बफर से शीघ्र प्राप्त कर लिया जाता है और I / O की आवश्यकता नहीं होती है । free frame relatively से सुस्त लेकिन सरल FIFO रिप्लेसमेन्ट एलगोरिथम के against सुरक्षा प्रदान करता है ।

टिप्पणियाँ

इस ब्लॉग से लोकप्रिय पोस्ट

Recovery technique in dbms । रिकवरी। recovery in hindi

 आज हम Recovery facilities in DBMS (रिकवरी)   के बारे मे जानेगे रिकवरी क्या होता है? और ये रिकवरी कितने प्रकार की होती है? तो चलिए शुरु करतेे हैं- Recovery in hindi( रिकवरी) :- यदि किसी सिस्टम का Data Base क्रैश हो जाये तो उस Data को पुनः उसी रूप में वापस लाने अर्थात् उसे restore करने को ही रिकवरी कहा जाता है ।  recovery technique(रिकवरी तकनीक):- यदि Data Base पुनः पुरानी स्थिति में ना आए तो आखिर में जिस स्थिति में भी आए उसे उसी स्थिति में restore किया जाता है । अतः रिकवरी का प्रयोग Data Base को पुनः पूर्व की स्थिति में लाने के लिये किया जाता है ताकि Data Base की सामान्य कार्यविधि बनी रहे ।  डेटा की रिकवरी करने के लिये यह आवश्यक है कि DBA के द्वारा समूह समय पर नया Data आने पर तुरन्त उसका Backup लेना चाहिए , तथा अपने Backup को समय - समय पर update करते रहना चाहिए । यह बैकअप DBA ( database administrator ) के द्वारा लगातार लिया जाना चाहिए तथा Data Base क्रैश होने पर इसे क्रमानुसार पुनः रिस्टोर कर देना चाहिए Types of recovery (  रिकवरी के प्रकार ):- 1. Log Based Recovery 2. Shadow pag

Query Optimization in hindi - computers in hindi 

 आज  हम  computers  in hindi  मे query optimization in dbms ( क्वैरी ऑप्टीमाइजेशन) के बारे में जानेगे क्या होता है और क्वैरी ऑप्टीमाइजेशन (query optimization in dbms) मे query processing in dbms और query optimization in dbms in hindi और  Measures of Query Cost    के बारे मे जानेगे  तो चलिए शुरु करते हैं-  Query Optimization in dbms (क्वैरी ऑप्टीमाइजेशन):- Optimization से मतलब है क्वैरी की cost को न्यूनतम करने से है । किसी क्वैरी की cost कई factors पर निर्भर करती है । query optimization के लिए optimizer का प्रयोग किया जाता है । क्वैरी ऑप्टीमाइज़र को क्वैरी के प्रत्येक operation की cos जानना जरूरी होता है । क्वैरी की cost को ज्ञात करना कठिन है । क्वैरी की cost कई parameters जैसे कि ऑपरेशन के लिए उपलब्ध memory , disk size आदि पर निर्भर करती है । query optimization के अन्दर क्वैरी की cost का मूल्यांकन ( evaluate ) करने का वह प्रभावी तरीका चुना जाता है जिसकी cost सबसे कम हो । अतः query optimization एक ऐसी प्रक्रिया है , जिसमें क्वैरी अर्थात् प्रश्न को हल करने का सबसे उपयुक्त तरीका चुना