Page Replacement क्या है?
Page Replacement एक ऐसी प्रक्रिया है, जिसमें ऑपरेटिंग सिस्टम main memory (RAM) में जगह खाली करने के लिए पुराने pages को remove करके नए pages को load करता है। यह तब उपयोग में आता है जब main memory (RAM) में जगह कम हो और नए pages को load करने के लिए पुराने pages को replace करना पड़े।
जब किसी process को ऐसे page की जरूरत होती है जो वर्तमान में main memory में नहीं है और memory पूरी तरह से full है, तो ऑपरेटिंग सिस्टम एक Page Replacement Algorithm का उपयोग करके decide करता है कि कौन-से page को replace किया जाएगा।
Page Replacement का इस्तेमाल सिस्टम की performance को बेहतर बनाने और memory का सही तरीके से उपयोग करने के लिए किया जाता है।
Page Replacement के Steps
- जब कोई प्रोसेस execute होता है और उसे किसी page की जरूरत होती है, तो ऑपरेटिंग सिस्टम check करता है कि वह पेज main memory में है या नहीं।
- अगर पेज memory में नहीं है, तो इसे page fault कहते हैं।
- Page fault होने पर, ऑपरेटिंग सिस्टम Page Replacement Algorithm का इस्तेमाल करके एक page को select करता है, जिसे replace किया जाएगा।
- Select किए हुए page को memory से remove करके नए page को load किया जाता है।
Page Replacement Algorithms in Hindi
Page Replacement Algorithms एक ऐसी Technique है जिसमें operating system निश्चित करता है कि DISK पर लिखने के लिए memory को page की आवश्यकता होती है तो कौन से page को swap out करना है और किस को नही.
Page Replacement तब किया जाता है जब main memory में requested page नहीं मिलता है।
Operating system में निम्न प्रकार के Page replacement algorithms है।
- FIFO Page replacement algorithms
- Optiml Page replacement algorithm
- LRU Page replacement algorithms
- LFU Page replacement algorithm
- MFU Page replacement algorithm
- Second chance Page replacement algorithms
FIFO Page replacement algorithm in Hindi
इसे first in first out Page replacement algorithms कहते है। इसमें operating system एक fifo queue रखता है ताकि मेमोरी के सभी pages को track कर सकें।
fifo queue मे सबसे पहले आने वाले page (सबसे पुराने page ) को queue के प्रारंभ में तथा सबसे अंत मे आने वाले page ( सबसे नये page ) को fifo queue में सबसे अंत में रखा जाता है। fifo queue में जो page सबसे पहले आता है उसी page को सबसे पहले replace करते है।
इसकी एक समस्या belody’s anomaly है। जितने कम frame होंगे उतनी ही ज्यादा page fault rate होगी । ऐसा कुछ cases में ही होता हैं।
अब हम इसे एक example से समझते हैं।

यहाँ (+) = page fault
(*) = page hit
हमने इसमें तीन frame लिये है।
सबसे पहले 2,3,4 पेज को empty slots मिल गये तो तीन बार page fault होगा
अब हम 1 no . Page को 2 से replace करेगे क्योंकि 2 सबसे पहले आया है इसी तरह 7 no . Page के लिए 3 को रिप्लेस किया
फिर 4 no.page के लिए कोई page replace नही होगा क्योंकि यह पहले से ही मेमोरी मे है। यहां page hit होगा ।
4 no.page के लिए 2 को replace करेगे 5 के लिए 1 को रिप्लेस करेंगे
अब 7 पहले से ही मेमोरी मे है तो पेज hit होगा कोई पेज replace नही होगा। फिर 1 के लिए 7 को रिप्लेस करेंगे
इसी तरह इस उदाहरण मे 8 page fault व 2 page hit होगे।
Optimal Page replacement algorithm in Hindi
इसमें page fault rate बहुत कम होती हैं। जो page लंबे समय तक use नहीं होता है उसी page को रिप्लेस किया जाता हैं।यह future मे देखता है।मतलब जो page future में late यूज़ होगा उसे पहले replace किया जाएगा।
लेकिन हम इसे practically implement नहीं कर सकते क्योंकि वास्तव मे यह पता लगाना मुश्किल होता है की कोनसे page का use future मे कब होगा।
आइये इसे एक उदाहरण के द्वारा देखते है:-

यहा (+) = page fault
(*) = page hit
हमने इसमें तीन frame लिये है।
सबसे पहले 2,3,1 को empty slots मिल गये तो तीन बार page fault होगा
अब हम 5 को 1 से replace करेंगे क्योंकि future मे यह late use होगा 3 पहले से ही है तो page hit होगा
4 को 3 से replace करेंगे ।
7 को 4 से replace क्योंकि 4 का use late होगा।
2 पहले से ही है तो page hit होगा
5 भी मेमोरी मे पहले से ही है तो वापस page हिट होगा
4 को हम 2 से replace करेंगे क्योंकि 2, 5, 7 में से 2 पहले आया है.
क्योंकि यहाँ पर 4 के बाद कोइ page नहीं है तो fifo use करेंगे।
LRU Page replacement algorithm in Hindi
इसे least recently used page replacement algorithm कहते है। इसमे उस page को replace किया जाता है जिस page का प्रयोग memory में लंबे समय से नही किया गया है। यह past side में देखता है। यह भी optimal page replacement की तरह ही है लेकिन यह past side में देखता है।
इस algorithm को practically use लेना आसान है । इस algorithm की मान्यता है कि जो पेज लंबे समय से use नहीं हुए है वो अब भी late use होंगे।
आइये इसे उदाहरण के द्वारा देखते है.

यहा (+) = page fault
(*) = page hit
Page fault =9, page hit=1
हमने इसमें तीन frame लिये है।
सबसे पहले 2, 1 को empty slots मिल गये तो 2 बार page fault होगा
फ़िर 1 पहले से ही है तो पेज hit होगा
फिर 3 के लिए memory में empty slot है तो कोई page replace नहीं होगा।और page fault हो जाएगा।
5 no. पेज मेमोरी में नही है तो इसके लिए हम उस page को replace करेंगे जो काफी समय से use नही हुआ है। यहा पर 2 का use नही हुआ है तो हम इससे ही replace कर देगे।
इसी तरह 2no.page को 1 से, 0 को 3 से ,3 को 5 से replace करेंगे।
1 को 3 से रिप्लेस करेगे फिर 5 को 0 से replace करेंगे।
LFU Page replacement algorithms in Hindi
इसे least frequently used page replacement algorithm कहते है। यह fifo का modified version है। इसमें frequency का use किया जाता है।इसमें page replacement के लिए उस पेज choose किया जाता हैं जिसकी फ्रीक्वेंसी सबसे कम हो।अगर FRAME में उपलब्ध सभी pages की frequency same हो तो जो page पहले आया है उसे replace करेंगे fifo की तरह। इसमे frequency कम ज्यादा होती हैं।
उदाहरण के लिए

यहा (+) = page fault
(*) = page hit
यह frequency chart है जिसमें page के आने से frequency कम ज्यादा हो रही है।
5 | 0 | 1 | 0 | ||||||
4 | 0 | 1 | 0 | 1 | 0 | ||||
3 | 0 | 1 | 0 | 1 | |||||
2 | 0 | 1 | 2 | 1 | 0 | ||||
1 | 0 | 1 | 0 | 1 | |||||
0 | 0 | 1 |
सबसे पहले सभी pages को 0 फ्रीक्वेंसी दे दी।फिर जैसे ही और प्रोसेस स्टार्ट होगी फ्रीक्वेंसी कम ज्यादा होगी।
हमने इसमें तीन frame लिये है।
सबसे पहले 5, 4, 2 को empty frame मिल गया और इनकी फ्रीक्वेंसी 1 हो गयी।
फिर 3 के लिए 5 को replace किया क्योंकि 5 सबसे पहले आया। इसमे तीनों की फ्रीक्वेंसी समान होने के कारण fifo method use kiya।
1 पहले से ही मेमोरी मे हैं तो page hit होगा और 2 की फ्रीक्वेंसी 1 से बढ़कर 2 हो जाएगी।
फिर 4 को 1 से replace किया तो 4 की फ्रीक्वेंसी 0 तथा 1 की 1 , 2 की 1 हो गयी
फिर 3 को 4 से रिप्लेस किया। फ्रीक्वेंसी 4 की 1 व 3 की 0 ही गयी
फिर 2 को 0, 1 को 3 , 4 को 1 से रिप्लेस किया। इन् तीनों मे लीस्ट फ्रीक्वेंसी के बाद fifo का use किया गया
MFU Page replacement algorithms
इसे most frequently used page replacement algorithm कहते है। यह LFU page replacement algorithm के बिल्कुल विपरीत है। इसमें भी frequency का use किया जाता है।इसमें रिप्लेस के लिऐ उन pages को सेलेक्ट किया जाता हैं जिनकी frequency सबसे ज्यादा हो। इसमे जिन पेजेज का use ज्यादा होगा उन्हें ही replace किया जायेगा.
Second chance Page replacement algorithms in Hindi
यह भी fifo का modified version है। इसमें reference bit का use किया जाता है। प्रत्येक page को एक reference bit दी जाती है।
Reference bit:- यह बताती हैं कि क़ोई page कितनी बार memory में आया है और replace नही हुआ। refernce बिट 0 हो तो पेज केवल 1 बार आया है और 1 हो तो पेज 2 बार आया है औऱ replace नही हुआ। अगर page hit हो जाता है तो reference bit बढ जाती है और यदि page fault हो जाता है तो reference bit कम हो जाती है।
अगर frame के सभी पेज की reference बिट 0 होती है तो fifo algorithm use करते हैं और यदि किसी page की reference bit 1 हो तो उस page को छोड़ कर fifo का use किया जाता है।
उदाहरण के लिए

यहा (+) = page fault
(*) = page hit
यहा 1, 3 को empty slot मिल गए 2 पेज फाल्ट हो गए ।
1 पहले से ही मेमोरी में है तो पेज hit होगा। 1 की रेफरेन्स बिट 1 हो जाएगी. 2 को भी empty स्लॉट मिल गया तो पेज फाल्ट होगा.
3 को 5 से रिप्लेस किया 1 no पेज की 1 बिट थी तो 3 और 2 में से जो भी पहले आया वो है 3 तो उसी से replace किया।1 को second chance दिया।1 की रेफरेन्स बिट फिर से 0 हो गयी ।इसी तरह बाकी process को भी किया गया।
निवेदन:- अगर आपके लिए यह पोस्ट helpful रही हो तो कमेंट के माध्यम से बताइए तथा इसे अपने दोस्तों के साथ share करें.
A very helpful….
Thanks a lot ❣️
thanks diksha for your kind words
how question to solve
Very very thank you so much sir
Very very thanks