Chapter 3 (Hindi)
4. Page faults
Page Fault
Page fault तब होता है जब कोई program ऐसे data या code को access करने की कोशिश करता है जो उसके address space में तो होता है, लेकिन वह उस समय RAM (main memory) में मौजूद नहीं होता।
इस situation में Operating System (OS) एक process शुरू करता है जिसमें:
- missing data को secondary storage (disk) से लाया जाता है
- और उसे RAM में load किया जाता है
इस पूरी process को handle करने के लिए OS को कुछ steps follow करने पड़ते हैं, ताकि program सही तरीके से continue कर सके।

Page Fault Handling
- Trap to Kernel
जब CPU किसी ऐसे page को access करता है जो RAM में नहीं है, तो hardware kernel को signal देता है।
इस समय Program Counter (PC) और CPU की current state save कर ली जाती है। - Save State Information
OS एक assembly routine की मदद से CPU के registers और जरूरी data को save करता है ताकि information lost न हो। - Determine Cause of Fault
OS पता लगाता है कि कौन सा virtual page चाहिए और page fault क्यों हुआ। - Validate Address
OS check करता है कि requested address valid है या नहीं और कोई protection violation तो नहीं है। - Allocate Page Frame
OS देखता है कि कोई free frame available है या नहीं।
अगर नहीं है तो page replacement algorithm apply किया जाता है। - Handle Dirty Pages
अगर selected page dirty है (modified है), तो उसे पहले disk में save किया जाता है, और process temporarily suspend हो जाता है। - Load Page into Memory
OS required page को secondary storage (disk) से लेकर RAM में load करता है। - Update Page Table
Page आने के बाद page table update की जाती है और frame को normal state में mark किया जाता है। - Restore State & Continue Execution
Saved state वापस load होती है और program फिर से वहीं से execute होता है जहाँ रुका था।
📌 Causes of Page Fault (कारण)
- Demand Paging → page memory में loaded नहीं था
- Invalid Memory Access → गलत address access करना
- Process Violation → read-only page पर write करने की कोशिश
📌 Types of Page Fault
- Minor Page Fault → page memory में है, पर current process में नहीं
- Major Page Fault → page disk से load करना पड़ता है
- Invalid Page Fault → invalid memory access
📌 Impact of Page Fault on System Performance
- Thrashing → बार-बार page fault होने से system slow हो जाता है
- Increased Latency → disk से data लाने में ज्यादा time लगता है
- CPU Utilization कम हो जाता है → CPU idle रहता है memory wait करते समय