TheHingineer

  • Operating System


  • OS Part-1

  • OS Part-2

  • OS Part-3

  • OS Part-4

  • OS Part-5

  • Page Replacement Algorithms in Operating System

    πŸ”Ή Introduction

    Page Replacement Algorithms Operating System ke Demand Paging mechanism me important role play karte hain. Jab CPU kisi page ko access karna chahta hai aur wo page RAM me available nahi hota (Page Fault), tab OS ko naye page ko memory me load karna padta hai. Lekin agar RAM full hai, to kisi existing page ko replace karna padta hai naye page ke liye.

    βœ… Page Replacement Algorithm ye decide karta hai ki kaunsa page memory se remove hoga taaki naye page ko load kiya ja sake.

    Example:
    Maan lo ek system me 3-page frames available hain aur ek process 6 pages ko access kar raha hai. Jab koi naye page ko RAM me load karna ho aur RAM full ho, tab ek existing page ko remove karke naye page ko laana padta hai. Is decision ko optimize karne ke liye Page Replacement Algorithms ka use hota hai.


    πŸ”Ή Types of Page Replacement Algorithms

    1️⃣ First In First Out (FIFO) Page Replacement Algorithm

    FIFO Algorithm oldest page ko remove karta hai jo sabse pehle RAM me load hua tha.

    πŸ“Œ Working of FIFO:

    • Pages ko ek queue me store kiya jata hai.

    • Jo page sabse pehle aaya wo sabse pehle replace hoga.

    πŸ‘‰ Example:
    Maan lo humare paas 3 page frames hain aur reference string ye hai:
    1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5

    StepPage Frames (3)Page Fault?
    11 – –βœ… Yes
    21 2 –βœ… Yes
    31 2 3βœ… Yes
    42 3 4βœ… Yes
    53 4 1βœ… Yes
    64 1 2βœ… Yes
    71 2 5βœ… Yes

    ❌ Disadvantage:
    FIFO “Belady’s Anomaly” show karta hai jisme frames badhane ke baad bhi page faults increase ho sakte hain.


    2️⃣ Optimal Page Replacement Algorithm (OPT / MIN Algorithm)

    OPT algorithm sabse kam future me use hone wale page ko replace karta hai.

    πŸ“Œ Working of OPT:

    • OS future me access hone wale pages ka analysis karta hai.

    • Jo page sabse late access hoga, usko remove kar diya jata hai.

    πŸ‘‰ Example:
    Agar reference string hai:
    7, 0, 1, 2, 0, 3, 4, 2, 3, 0, 3, 2

    StepPage Frames (3)Page Fault?
    17 – –βœ… Yes
    27 0 –βœ… Yes
    37 0 1βœ… Yes
    40 1 2βœ… Yes
    50 1 2❌ No
    61 2 3βœ… Yes
    72 3 4βœ… Yes

    βœ… Advantage:
    OPT algorithm sabse kam number of page faults deta hai.

    ❌ Disadvantage:
    OPT algorithm practically implement karna difficult hai kyunki future ka prediction karna mushkil hota hai.


    3️⃣ Least Recently Used (LRU) Page Replacement Algorithm

    LRU algorithm wo page remove karta hai jo sabse pehle use hua tha.

    πŸ“Œ Working of LRU:

    • Har page ka last used timestamp maintain kiya jata hai.

    • Jo page sabse pehle use hua tha, usko remove kiya jata hai.

    πŸ‘‰ Example:
    Reference String: 7, 0, 1, 2, 0, 3, 4, 2, 3, 0, 3, 2

    StepPage Frames (3)Page Fault?
    17 – –βœ… Yes
    27 0 –βœ… Yes
    37 0 1βœ… Yes
    40 1 2βœ… Yes
    50 1 2❌ No
    61 2 3βœ… Yes
    72 3 4βœ… Yes

    βœ… Advantage:
    LRU Belady’s anomaly ko avoid karta hai aur practical implementation possible hai.

    ❌ Disadvantage:
    Timestamp maintain karna costly hota hai, aur performance impact ho sakti hai.


    4️⃣ Least Frequently Used (LFU) Page Replacement Algorithm

    LFU algorithm wo page remove karta hai jo sabse kam baar access kiya gaya hai.

    πŸ“Œ Working of LFU:

    • Har page ka access frequency maintain hota hai.

    • Jo page sabse kam use hua hai, usko replace kiya jata hai.

    πŸ‘‰ Example:
    Agar reference string hai:
    3, 1, 2, 5, 1, 3, 2, 4, 1, 3, 2, 5, 6

    StepPage Frames (3)Page Fault?
    13 – –βœ… Yes
    23 1 –βœ… Yes
    33 1 2βœ… Yes
    41 2 5βœ… Yes
    51 2 5❌ No
    61 2 3βœ… Yes
    72 3 4βœ… Yes

    βœ… Advantage:
    LFU repeatedly used pages ko retain karta hai aur rarely used pages ko replace karta hai.

    ❌ Disadvantage:
    Agar ek page bohot purane access ke karan high frequency gain kar chuka hai, to wo hamesha retain rahega, jo issue create kar sakta hai.


    πŸ”Ή Comparison of Page Replacement Algorithms

    AlgorithmPerformanceComplexityPractical Use
    FIFOPoorO(1)No (Belady’s anomaly)
    OPTBestO(n)No (Needs future knowledge)
    LRUGoodO(log n)Yes (Used in OS)
    LFUAverageO(n)Rarely Used

    πŸ”Ή Conclusion

    βœ” Page Replacement Algorithms ka use memory management ko optimize karne ke liye hota hai.
    βœ” FIFO simple hota hai, lekin performance poor hoti hai.
    βœ” OPT best algorithm hai, lekin practically possible nahi hai.
    βœ” LRU real-world systems me use hota hai, kyunki ye good performance deta hai.
    βœ” LFU kam use hota hai, lekin specific scenarios me useful ho sakta hai.

    Scroll to Top