Page Fault

Page fault तब होता है जब एक program attempt करता है एक memory को access करने के लिए जो की physical memory में stored ही नहीं होता है या RAM में. ये fault notify करती है operating system को की उसे जरुर से data को locate करना होता है virtual memory में, फिर उसे storage device से transfer किया जाता है जैसे की HDD या SSD से system RAM में.

वैसे तो ये term “page fault” एक error के तरह सुनाई पड़ता है, लेकिन page faults काफी ज्यादा common होते हैं और वहीँ ये हिस्सा होते हैं उन सामान्य तरीकों का की जिससे computers handle करते हैं virtual memory को. Programming terms, एक page fault generate करता है एक exception, जो की notify करता है operating system को की ये जरुर से retrieve करे memory blocks या “pages” को virtual memory से जिससे की आगे program जारी रह सके.

एक बार data को move कर दिया जाये physical memory में, तब program continue होने लगता है सामान्य ढंग से. ये process चल रहा होता है background में और अक्सर ये users के नज़र में भी नहीं आता है.

ज्यादातर page faults को handle किया जाता है बिना किसी problems से ही. लेकिन एक invalid page fault के कारण एक program या तो hang हो सकती है या फिर crash. इस प्रकार की page fault उत्पन्न होती है जब एक program कोशिश करता है access करने के लिए एक memory address जो की असल में मेह्जुद ही नहीं होता है. कुछ programs इस प्रकार के errors को handle कर सकते हैं जिसमें वो एक नयी memory address खोज लेते हैं या data को relocate कर देते हैं.

लेकिन, अगर program handle न कर पाये invalid page fault को तब, ऐसे में इसे pass कर दिया जाता है operating system को, जो की इस process को terminate भी कर सकता है. ये कारण बनता है की कभी कभी program अचानक ही quit हो जाते हैं.

वैसे तो page faults काफी common होते हैं जब virtual memory में काम हो रहा होता है, प्रत्येक page fault में जरुरत होता है की वो data को transfer करें secondary memory से primary memory में. ये process को होने में केवल कुछ milliseconds ही लगते हैं, लेकिन ये फिर भी काफी हजारों बार slow होता है यदि हम इसकी तुलना करें Memory से data access करने से. ऐसे में ज्यादा system memory को install करने से ये computer की performance बढ़ा देता है, चूँकि इसे virtual memory को access काफी कम करना पड़ता है.

« Back to Wiki Index