Overview of Operating Systems
- Introduction: The video aims to cover the entire Operating Systems syllabus in 6 hours, focusing on important topics for semester exams. For those new to the subject, you might find the Introduction to Linux: A Comprehensive Guide for Beginners helpful as it provides foundational knowledge relevant to operating systems.
- Target Audience: Ideal for students who are new to Operating Systems or those preparing for competitive exams and placements.
Key Topics Covered
- Definition of Operating Systems: Acts as an intermediary between users and hardware, resource manager, and provides a platform for application programs.
- Goals and Functions: Discusses primary and secondary goals of Operating Systems, including user convenience and efficiency.
- Evolution of Operating Systems: Covers batch processing, spooling, and multiprogramming.
- Process Management: Explains process states, process control blocks (PCBs), and process scheduling algorithms (FCFS, SJF, Priority, Round Robin).
- Memory Management: Discusses memory allocation strategies, paging, segmentation, and virtual memory concepts. For a deeper understanding of memory management, you may also want to check out the Comprehensive Overview of the New PPS Course for Second Semester.
- Disk Scheduling: Covers various disk scheduling algorithms, including FCFS, SSTF, SCAN, and LOOK.
- File Management: Discusses file organization methods, including sequential, linked, and indexed allocation.
- Deadlock Handling: Explains necessary conditions for deadlock, prevention, avoidance, detection, and recovery strategies.
- Thread Management: Discusses the concept of threads, user-level vs kernel-level threads, and their advantages.
Frequently Asked Questions (FAQs)
-
What is an Operating System?
An Operating System is software that acts as an intermediary between users and computer hardware, managing resources and providing a platform for applications. -
What are the main functions of an Operating System?
The main functions include managing hardware resources, providing user interfaces, and ensuring efficient execution of applications. -
What is the difference between paging and segmentation?
Paging divides memory into fixed-size blocks, while segmentation divides memory into variable-sized segments based on logical divisions. -
What is a deadlock?
A deadlock occurs when two or more processes are unable to proceed because each is waiting for the other to release resources. -
How can deadlocks be prevented?
Deadlocks can be prevented by ensuring that at least one of the necessary conditions for deadlock cannot hold, such as mutual exclusion or hold and wait. -
What is the purpose of disk scheduling?
Disk scheduling aims to optimize the order of disk access requests to minimize seek time and improve overall system performance. -
What is the significance of threads in Operating Systems?
Threads allow for concurrent execution within a process, improving efficiency and resource utilization by sharing the same memory space. For those looking to enhance their skills in related areas, consider exploring Mastering Excel 2019: Perform Operations Using Formulas and Functions as it can provide useful insights into data management and analysis.
हेलो एवरीवन इस वीडियो में पूरा ऑपरेटिंग सिस्टम कंप्लीट करेंगे सिक्स आवर्स में स्पेशली फॉर योर सेमेस्टर एग्जाम्स मैंने
इस वीडियो में बताया है कि एग्जाम पॉइंट ऑफ व्यू से कौन-कौन से टॉपिक्स इंपॉर्टेंट है और वहां से एगजैक्टली क्या क्वेश्चंस
पूछे जाते हैं कुछ लोग को हो सकता है वीडियो थोड़ा लंबा लगे बट एक्चुअली वीडियो छोटा है यहां मैंने अपने 15 साल का पूरा
एक्सपीरियंस यूज किया है जिसमें मैंने ऑपरेटिंग सिस्टम 50 बार से ज्यादा पढ़ाया है इस वीडियो में आपको पूरा ऑपरेटिंग
सिस्टम स्टार्टिंग से लेकर एंड तक मिलेगा तो अगर इससे पहले आपने ऑपरेटिंग सिस्टम कभी नहीं पढ़ा है तो वीडियो आपके लिए एकदम
परफेक्ट है अगर ऑपरेटिंग सिस्टम पहले थोड़ा पढ़ा है या कॉम्पिटेटिव एग्जाम के लिए प्रिपेयर कर रहे हैं प्लेसमेंट्स के
लिए प्रिपेयर कर रहे हैं या रिवीजन करना चाहते हैं तो भी ये वीडियो आपके लिए बड़े काम का साबित होगा मैंने यहां पर बहुत
सारे यूनिवर्सिटीज और कॉलेज का पूरा सिलेबस स्टडी करने के बाद कंटेंट फाइनल किया है तो पूरे विश्वास से बोल सकता हूं
9095 पर से ज्यादा सिलेबस मैच होगा अगर आप यह पूरा वीडियो कंप्लीट करते हैं तो आप ऑपरेटिंग सिस्टम सीख जाओगे इस बात की
गारंटी देता हूं इस वीडियो में मैंने जो भी कंटेंट कवर किया है उसका एकदम प्रो लेवल का नोट्स आपके लिए एकदम फ्री है
जिसका लिंक आपको डिस्क्रिप्शन में मिलेगा अभी नीचे आप चैप्टर देख सकते हैं जहां पर क्लिक करके आप किसी भी इंपॉर्टेंट टॉपिक
पर डायरेक्ट पहुंच सकते हैं भारत में किस जगह से आप ये वीडियो देख रहे हैं कमेंट सेक्शन में जरूर कमेंट करिएगा ताकि पूरे
भारत का एक नक्शा कमेंट सेक्शन में मैं दिखने लगे तो चलिए शुरू करते हैं सो डायरेक्टली जंपिंग ऑन टू द सिलेबस जैसे
मैंने आपसे बोला कि हमने देश के जितने बड़े यूनिवर्सिटीज हैं कॉलेजेस हैं उन सबका लेबस स्टडी किया है एंड दैट इज अ आई
थिंक मोर और लेस द कॉमन पार्ट ऑफ इट जिसमें 95 पर से ज्यादा एक दो टॉपिक ऊपर नीचे हो सकते हैं मैं हट जाता हूं ये
सिलेबस है है ना आपकी यूनिवर्सिटी में हो सकता है एक यूनिट ऊपर हो एक यूनिट नीचे हो एक टॉपिक आगे पीछे हो बट मोटा-मोटा यह
सिलेबस है जो इस वीडियो में हम कवर करेंगे अब किस ऑर्डर में कवर करेंगे ना लुक एट दिस सो द देयर विल बी 12 चैप्टर्स जो आप
नीचे टाइमलाइन देखते हैं ना उसमें आपको ये सारे चैप्टर्स नजर आएंगे फ्रॉम चैप्टर नंबर वन टू चैप्टर नंबर 12 थ्रू आउट द
वीडियो इटल अराउंड अ सिक्स आवर्स वीडियो तो कंफ्यूजन ना हो आप जल्दी से नेविगेट कर पाएं पहले तो आप इसका स्क्रीनशॉट ले लीजिए
बिकॉज़ दिस इज़ द ऑर्डर जो हम फॉलो कर रहे होंगे अब आईडिया क्या है पूरी वीडियो में टॉप लेफ्ट के ऊपर आपको चैप्टर नंबर मिलेगा
एंड यहां पे टॉप राइट के ऊपर आपको इस ऑर्डर में फिलहाल कौन सा टॉपिक चल रहा है वो दिखने वाला है सो दैट जब भी आप नेविगेट
करें इफ यू वांट टू गो इन टू अ स्पेसिफिक टॉपिक डायरेक्टली आप बड़े आराम से वो कर सके बट ऑब् वियस इट इज एडवाइजेबल एक बार
कम से कम पूरा वीडियो कंप्लीट देखना इस ऑर्डर में बिकॉज़ दे अ इंपोर्टेंट आईडिया मैंने यू नो जैसे मैं बोल रहा हूं 50 बार
से ज्यादा ऑपरेटिंग सिस्टम पढ़ा चुका हूं इस ऑर्डर में क्यों पढ़ाया वो जब आपको समझ आएगा जब आप ये वीडियो देखेंगे यस सो नाउ
डायरेक्टली जंपिंग ऑन टू द टॉपिक सबसे पहले डेफिनेशन या आईडिया जो आपको पता होना चाहिए व्हाट इज ऑपरेटिंग सिस्टम अलग-अलग
बुक्स में अलग-अलग तरह से चीजों को डिफाइन किया गया डेफिनेशन दी गई है अगर फिर भी मैं दो-तीन चार सबसे इंपॉर्टेंट पॉइंट
कंक्लूजन है एग्जाम में लिख के आना है तो ध्यान दीजिएगा सबसे पहला पॉइंट है इट एक्ट्स एज
एन इंटरमीडिएट री वेरी इंपॉर्टेंट पॉइंट तो एक तरफ हमारा यूजर है एक तरफ हमारा हार्डवेयर है दोनों के बीच में यहां पर एज
अ इंटरमीडिएट काम करने वाला ऑपरेटिंग सिस्टम तो यूजर को हार्डवेयर को कोई भी इंस्ट्रक्शन अगर देनी है तो वह हार्डवेयर
से डायरेक्ट बात नहीं करेगा ऐसा करेगा तो वह इनएफिशिएंट भी होगा और कन्वेनिएंट भी नहीं होगा तो यहां पर यूजर बात करेगा ओएस
से और ओस आपके बिहाव पे बात करेगा हार्डवेयर से सिमिलरली हार्डवेयर से जो भी रिस्पांस आएगा वह भी डायरेक्ट यूज़र को
नहीं आएगा वह ने वाला है पहले ऑपरेटिंग सिस्टम को और ऑपरेटिंग सिस्टम से रिस्पांस जाएगा यूजर के पास तो इट एक्टस एज अ
इंटरमीडिएट बिटवीन द हार्डवेयर एंड द यूजर पॉइंट नंबर वन पॉइंट नंबर टू जो कि अगेन उतना ही इंपॉर्टेंट है यह काम करता है एज
अ रिसोर्स मैनेजर एज अ रिसोर्स एलोकेटर देखो सिस्टम में किसी भी इंस्टेंस में बहुत सारे प्रोसेस हैं बहुत सारे अलग-अलग
तरह के रिसोर्स हैं और गेम क्या है कि रिसोर्स के लिए कंपीट किया जा रहा है तो ऑपरेटिंग सिस्टम हमारे बिहाव पे यूजर के
बिहाव पे क्या करेगा किसी को सीपीयू टाइम चाहिए किसी को मेमोरी चाहिए किसी को सिस्टम बसेस चाहिए किस प्रोसेस को कितना
रिसोर्स एलोकेट करना है फिलहाल वह सारा का सारा जो मैकेनिज्म है वो यहां पर हमारे बिहाव में कौन तय करता है ऑपरेटिंग सिस्टम
तय करता है तो अगेन सेकंड इंपॉर्टेंट पॉइंट ऑपरेटिंग सिस्टम कंट्रोल एंड कोऑर्डिनेट्स यू नो द यूज़ ऑफ सिस्टम
रिसोर्सेस अमंग वेरियस एप्लीकेशन प्रोग्राम्स इन एन अनबाय फैशन तो रिसोर्स मैनेजमेंट का काम करेगा तीसरा पॉइंट यहां
पर आ जाता है इट प्रोवाइड्स अ प्लेटफॉर्म देखो हार्डवेयर के ऊपर जैसा हमने समझा एक मात्र कंट्रोल है किसका ऑपरेटिंग सिस्टम
का अब हमारा जो वीएलसी मीडिया प्लेयर है यू नो ऑफिस है जितने भी एप्लीकेशन एडिटर्स हैं जो भी हम सॉफ्टवेयर यूज करते हैं वो
किससे बात करेंगे वो भी ऑपरेटिंग सिस्टम से ही बात करेंगे तो ऑपरेटिंग सिस्टम यहां पर एक प्लेटफॉर्म हमें देगा और ऑपरेटिंग
सिस्टम इन सारे के सारे जो भी हमारे यू नो सॉफ्टवेयर्स हैं उन सबको रन करेगा उनकी जो भी रिसोर्स रिक्वायरमेंट हो सबको फुलफिल
करेगा तो अगेन इट प्रोवाइड्स अ प्लेटफॉर्म ऑन व्हिच अनदर ऑ अनदर एप्लीकेशन प्रोग्राम्स कैन बी इंस्टॉल्ड एंड
प्रोवाइड्स एन एनवायरमेंट इन व्हिच द प्रोग्राम्स आर एग्जीक्यूटेड तो ऑपरेटिंग सिस्टम के तीन इंपॉर्टेंट आइडियाज आपको
समझ आए इंटरमीडिएट है पॉइंट नंबर वन देन इट एक्सस अ रिसोर्स मैनेजर रिसोर्स एलोकेट करता है पॉइंट नंबर टू एंड थर्ड इज इट
प्रोवाइड्स अ प्लेटफॉर्म जिसके ऊपर बाकी एप्लीकेशन प्रोग्राम हमारे इंस्टॉल होंगे काम करेंगे एग्जांपल की बात करूं तो कोई
नया नहीं है इसे स्मार्ट बोर्ड में भी विज यूज़ कर रहा हूं उसके अलावा ए है मैक है आओ है
हो जाते हैं हमारे किसके ऑपरेटिंग सिस्टम के यस अभी बात करते हैं गोल्स और फंक्शंस के बारे में अभी गोल्स क्या है जैसे मैं य
लिखता हूं गोल्स आर द अल्टीमेट डेस्टिनेशन बट वी फॉलो फंक्शन टू इंप्लीमेंट द गोल्स तो रियल लाइफ में होता है ना कुछ हमारे
गोल्स होते हैं कि यार ये हमारे लॉन्ग टर्म गोल्स हैं लेकिन गोल्स बोलने से तो कंप्लिशन हो नहीं जाएंगे अब मान लीजिए फॉर
एग्जांपल किसी का गोल है कि उसको यूपीएससी क्लियर करना दैट इज अ गोल क्या करना पड़ेगा मे बी कोई प्रोफेशनल कोचिंग जॉइन
करनी पड़ेगी पूरा सिलेबस कंप्लीट करना पड़ेगा रिवीजन लगाना पड़ेगा टेस्ट सीरीज लिखनी पड़ेगी मॉक इंटरव्यूज देने पड़ेंगे
ो दीज ऑल आर द फंक्शंस तो जब सारा सिलेबस कंप्लीट करोगे एक-एक फंक्शन पूरा करोगे तब कहीं जाके आपका गोल अंपलिंग फॉर एग्जांपल
आपको यूनिवर्सिटी एग्जाम में सेमेस्टर्स में ऑपरेटिंग सिस्टम कम समय में अच्छे नंबर से पास करना ना दैट इज अ गोल व्हाट
इज द फंक्शन ये वीडियो पूरी कंप्लीट करनी पड़ेगी तब वो गोल अंप्स होगा एक और एग्जांपल जैसे मान लीजिए हम बोलते हैं
गवर्नमेंट ऑफ इंडिया है अब गवर्नमेंट ऑफ इंडिया का लॉन्ग टर्म गोल क्या है लॉन्ग टर्म गोल आपने ना भी होगा बोलते हैं ना
बारबार सबका साथ सबका विकास बट बोलने से होगा क्या बोलने से नहीं होगा क्या करना पड़ेगा सो देर आर दे यू सी देयर आर 58
मिनिस्ट्री देयर आर 93 डिपार्टमेंट्स जब ये सारे मिनिस्ट्री सारे डिपार्टमेंट सब लोग मिलजुलकर अच्छे से अपनी अपनी ड्यूटी
परफॉर्म करेंगे तो ऑटोमेटिक गोल अंपलिंग यस तो आई थिंक गोल और फंक्शन में क्या रिलेशन है आपको बात समझा होगा नाउ कमिंग
टू ऑपरेटिंग सिस्टम हमारे गोल्स हम दो कैटेगरी में रखते हैं एक हम बोलते हैं प्राइमरी गोल एक बोलते हैं सेकेंडरी गोल
नाउ व्हाट इज प्राइमरी गोल प्राइमरी गोल है कन्वीनियंस और यूजर फ्रेंडली सुनने में थोड़ा अजीब लगेगा बट यहां मैं एफिशिएंसी
की बात नहीं करते कोई भी सॉफ्टवेयर हो अगर कोई सॉफ्टवेयर यूज करने में आसानी नहीं है अगर एक आम आदमी उसका इस्तेमाल नहीं कर पा
रहा तो नोबडी इज गोइंग टू यूज इट ये तो एक फैक्ट है तो हमारा कोई भी सिस्टम होता है इवन सम सॉफ्टवेयर यू टेक और इवन द
ऑपरेटिंग सिस्टम प्राइमरी गोल हमेशा याद रखिएगा क्या होगा यूजर फ्रेंडली स कन्वीनियंस ये हुआ प्राइमरी नाउ सेकेंडरी
की बात कर करेंगे तो एफिशिएंसी है रिलायबिलिटी है मेंटेनेबिलिटी है और मेंटेनेंस है ये सब का सब हो जाएगा
सेकेंडरी गोल ये दो गोल हुए हमारे प्राइमरी और सेकेंडरी यस अबी अंपलिंग तो जैसे गवर्नमेंट ऑफ इंडिया में अलग-अलग
डिपार्टमेंट्स हैं ऑपरेटिंग सिस्टम में भी अलग-अलग डिपार्टमेंट है जो काइंड ऑफ आपका सिलेबस भी है तो यहां पर आप देखेंगे
प्रोसेस मैनेजमेंट है मेमोरी मैनेजमेंट है इनपुट आउटपुट डिवाइस मैनेजमेंट है फाइल मैनेजमेंट है एंड देन नेटवर्क मैनेजमेंट
है एंड देन लास्ट वी हैव सिक्योरिटी एंड प्रोटेक्शन तो जब सारे के सारे डिपार्टमेंट्स सारे के सारे मॉड्यूस
अपना-अपना ड्यूटी परफॉर्म करेंगे जिसमें मैं आपको बताऊं प्रोसेस मैनेजमेंट तो हम बहुत अच्छे से पढ़ना है प्रोसेस क्या होता
है सीपीयू शेड्यूलिंग है डेडलॉक है सिंक्रोनाइजेशन है बात करेंगे मेमोरी मैनेजमेंट की तो यू नो प्राइमरी मेमोरी
मेन मेमोरी सेकेंडरी वर्चुअल मेमोरी डिस्क लोकेशन वो सारी पॉलिसीज डिस्कस करना इनपुट आउटपुट डिवाइस फाइल जब ये सारे के सारे
फंक्शंस ऑपरेटिंग सिस्टम अच्छे से परफॉर्म करेगा तो जो गोल्स हमने समझे थे कन्वीनियंस का और एफिशिएंटली रिसोर्स
यूटिलाइजेशन का वो ऑटोमेटिक अंपलिंग कुछ जगह यूनिवर्सिटी एग्जाम्स में सेमेस्टर्स में मैंने अलग से क्वेश्चन भी देखा है
व्हाट आर द मेजर कंपोनेंट्स ऑफ ऑपरेटिंग सिस्टम तो मैंने अलग से भी दो स्लाइड बना के रखी हैं यू कैन टेक द स्क्रीनशॉट जहां
पे हेडिंग बाय हेडिंग ताकि नंबर आपको शानदार मिले तो कर्नल ऑपरेटिंग सिस्टम का वो काम जो एक्चुअली मैनेजमेंट कर रहा होता
है दैट इज नोन एज कर्नल कोर पार्ट ऑफ द ऑपरेटिंग सिस्टम तो कर्नल है प्रोसेस मैनेजमेंट के अंदर हेडिंग्स आपके पास है
प्रोसेस शड ड्यूलर पीसीबी कॉन्करेंस कंट्रोल आगे जाके इस पे डिटेल में बात करेंगे देन इनसाइड मेमोरी मैनेजमेंट
फिजिकल मेमोरी वर्चुअल मेमोरी मेमोरी एलोकेशन फाइल सिस्टम अलोंग विद द सब हेडिंग्स देन व्हाट डू वी हैव डिवाइस
मैनेजमेंट अलोंग विद सब हेडिंग्स डिवाइस मैनेजर्स है ड्राइवर्स हैं एंड देन सिक्योरिटी एंड एक्सेस कंट्रोल ऑथेंटिकेशन
ऑथराइजेशन एंक्रिप्शन देन यूजर इंटरफेस कमांड लाइन एंड जीआई आगे सब की डिटेल में बात करूंगा अभी एंड देन नेटवर्किंग तो ये
एक इंपॉर्टेंट क्वेश्चन है आई होप गोल्स ऑफ फंक्शनैलिटीज के बारे में कोई बात करेगा तो नाउ दैट क्वेश्चन इज रेडी तो
चलिए अभी बात करते हैं ऑपरेटिंग सिस्टम की इवोल्यूशन इवोल्यूशन का क्या मतलब है देखिए स्टार्टिंग में आज ज हम जैसा
ऑपरेटिंग सिस्टम इस्तेमाल करते हैं क्या स्टार्टिंग से ऐसा ही है नहीं बहुत सारे स्टेजेस हमने पार किए जहां पे दो तीन
इंपॉर्टेंट आइडियाज हमें पढ़ने हैं बैच ऑपरेटिंग सिस्टम क्या होता है या बैच प्रोसेसिंग क्या होती थी देन स्पूलिंग एक
बहुत इंपॉर्टेंट आईडिया है एंड देन वी गो टू मल्टी प्रोग्रामिंग तो मैं बहुत बेसिक से और बहुत शॉर्ट में बात करूंगा सबसे
पहले बात कर लेते हैं बैच ऑपरेटिंग सिस्टम के बारे में देखो स्टार्टिंग के जो कंप्यूटर थे ना वो इंटरेक्ट नहीं थे तो
आईडिया क्या था आईडिया ये था अर्ली कंप्यूटर्स आर नॉट इंटरेक्ट डिवाइसेज सो यूजर यूज टू प्रिपेयर अ जॉब अब यहां मैं
प्रोसेस शब्द का इस्तेमाल नहीं कर रहा मैं क्या कह रहा हूं जॉब जॉब क्या होता है तो देर यू सी जॉब के अंदर तीन चीजें होती थी
क्या-क्या एक हमारा होता है प्रोग्राम एक होगा कंट्रोल इंफॉर्मेशन एक है इनपुट डाटा फॉर एग्जांपल मान लीजिए हमें कैलकुलेटर का
प्रोग्राम बनाया तो पहले तो कैलकुलेटर का प्रोग्राम लिखेंगे उसके बाद अगर कोई कंट्रोल इंफॉर्मेशन देनी है मान लीजिए फॉर
एग्जांपल यूजर से पूछना है कि डू यू वांट टू डू एडिशन सब्सट्रैक्शन मेथ यू नो मल्टीप्लिकेशन डिवीजन तो वो भी आपको अभी
बताना पड़ेगा देन इनपुट डाटा अगर कोई इनपुट डाटा रन टाइम पे कोई इंटरेक्ट वने स नहीं होगी तो जो भी मान लीजिए हमें एडिशन
करना है तो किन दो डाटा के बीच में एडिशन करना है वो भी हम अभी देंगे तो प्रोग्राम कंट्रोल इंफॉर्मेशन इनपुट डाटा जब ये
तीनों चीजें हमारे पास आ जाती इनका जो बंडल होता था उसको हम बोलते थे जॉब अब जब यह जॉब होगा तो एक बार में एक जॉब हम
इनपुट कराएंगे कोई मेमोरी सिस्टम के अंदर नहीं होती तो रन टाइम पे इनपुट होगा देन सिस्टम उसको प्रोसेस करेगा और प्रोसेस
करने के बाद वो आउटपुट जनरेट करेगा इस तरह के डिवाइसेज है ना तो कॉमन इनपुट आउटपुट डिवाइस आज की तरह कीबोर्ड या ये सब नहीं
होते थे लाइक दिस पंच कार्ड्स तो आप देख सकते एक तरह के टाइपिस्ट है ये टाइप राइटर जैसे होता है ना कार्ड होता था उसमें कई
जगह हम होल पंचर करते थे एंड देन उसके थ्रू लाइट पास होती थी तब डिटेक्ट होता था कि इनपुट डाटा और तब हम उसे प्रोसेस करते
थे तो ये एक बेसिक कहानी थी अब ऑब् वियस इनके साथ काम करना बहुत स्लो था एक बार में हम एक ही प्रोसेस के ऊपर एक ही जॉब के
ऊपर काम करते थे आंसर भी हमें यह पंच कार्ड की फॉर्म में ही मिलता था फिर कोई आदमी बैठ के उसको इंटरप्रेट करता था और तब
रिजल्ट आता था अब बैच ऑपरेटिंग सिस्टम में हमने क्या किया एक बेसिक सा दिमाग लगाया मान लीजिए अलग-अलग प्रोग्रामिंग
लैंग्वेजेस हैं उनके अलग-अलग पंच कार्ड्स हैं तो हमने क्या किया हमने जो सिमिलर टाइप के जॉब्स थे उन उनको कंबाइन करना
उनका एक बैच बनाना स्टार्ट कर दिया तो जैसे यहां पे डायग्राम में देख रहे हैं अलग-अलग यूजर हैं वो अलग-अलग जॉब जनरेट कर
रहे हैं नाउ देर इज अ ऑपरेटर और ऑपरेटर क्या कर रहा है जैसे फॉर एग्जांपल फोन के जॉब्स को एक साथ रख लिया कोबोल के जॉब्स
को एक साथ रख लिया और वो जो सिमिलर टाइप के जॉब्स का जो बंडल था उसी को हम यहां पर बैच कहके बुला रहे थे तो लेट मी से दिस इज
बैच वन लेट मी से दिस इज बैच टू और कंप्यूटर जो है पहले एक बैच के सिमिलर टाइप के जितने जॉब्स है उनको एग्जीक्यूट
करेगा फिर दूसरे सिमिलर टाइप के जितने जॉब्स हैं उनको एग्जीक्यूट करेगा तो जो प्रोसेसिंग थी वो रिलेटिवली थोड़ी सी
फास्ट जरूर हो जाएगी इसी मैनेजमेंट को इसी अंडरस्टैंडिंग को हम बोल देते हैं बैच ऑपरेटिंग सिस्टम तो बैच क्या था बैच हमने
बनाया जॉब से क्यों बनाया क्योंकि वो सिमिलर टाइप के प्रोग्रामिंग लैंग्वेज के अंदर हमने लिखे थे है ना तो आज के बाद अगर
कोई आपसे बैच की बात करेगा आप बता सकते हो जॉब क्या था तीन चीजों का कॉमिनेशन था इनपुट आउटपुट डिवाइसेज बहुत स्लो थे एक
बार में हम एक के ऊपर ही काम करते थे उस उसको स्पीड अप करने के लिए हमने सिमिलर टाइप के जॉब्स का बंडल बनाना स्टार्ट कर
दिया उसको हम बोलने लगे बैच बट स्टिल ये जो डिवाइसेज थे ना ये ओवरऑल जो प्रोसेसिंग थी बहुत स्लो थी और विद टाइम हमने समझा
स्लो क्यों थी उसका जो सॉल्यूशन है वो है स्पूलिंग स्पूलिंग की बात करता हूं देखिए रन टाइम पे हमारे जो इनपुट आउटपुट
डिवाइसेज होते हैं ना दे आर रिलेटिवली वेरी वेरी स्लो कंपेयर टू अ प्रोसेसर अब प्रोसेसर काम करता है यार मेगाहर्ट्ज पे
गिगा हर्ट्ज पे इजेंट इट 10 रे टू पावर 9 आप कीबोर्ड से कितनी स्पीड से टाइप कर कर लोगे क्या कभी प्रोसेसर को मैच कर पाओगे
कभी नहीं कर पाओगे तो स्पूलिंग का अगर मैं बहुत सिंपल शब्दों में आपको आईडिया बताऊं जो भी इनपुट आउटपुट डिवाइसेज है लेट मी से
दिस इज इनपुट डिवाइस लेट मी से दिस इज आउटपुट डिवाइस तो इनपुट डिवाइस का जो डाटा है वो मेन मेमोरी के थ्रू होते हुए सीधे
जाएगा डिस्क में जिसे आज हम सेकेंडरी मेमोरी या वर्चुअल मेमोरी बोल रहे होते हैं तो काइंड ऑफ जो सेकेंडरी मेमोरी का
अंडरस्टैंडिंग है वो हमने यहां पे एक्सप्लोर किया देन जो भी डाटा चाहिए वो सेकेंडरी टू मेन मेमोरी काम होता रहेगा
एंड देन रिजल्ट भी हम यहीं पे स्टोर करेंगे और यहीं से आंसर वापस जाएगा जिससे प्रोसेसर को जब भी डाटा चाहिए ना उसको
इनपुट आउटपुट डिवाइस पे डिपेंड होने की जरूरत नहीं है वाया डिस्क वाया दिस स्टोरेज ये मेन मेमोरी के थ्रू प्रोसेसर
तक पहुंचेगा आईडिया इज साइमल पेनियस पूलिंग इज एन एक्रोनिल शॉर्ट फॉर्म है किसका साइमल नियस पेरिफेरल ऑपरेशंस ऑनलाइन
ये पेरिफेरल मतलब इनपुट आउटपुट साइमल पेनियस एक बार में एक से ज्यादा ऑनलाइन मतलब लगातार कर सकते हैं तो लॉजिक क्या था
क्योंकि अब इनपुट आउटपुट डिवाइसेोकंट्रोल कॉमन इनपुट डिवाइसेज आर प्रिंटर्स व्हिच
आर वेरी स्लो रिलेटिव टू द रेस्ट ऑफ़ द सिस्टम पता है यह बात हमें स्पूलिंग इज अ प्रोसेस इन व्हिच अ डाटा इज टेंपरेरिली
हेल्ड इन अ मेमोरी और अ वोलेटाइल स्टोरेज टू बी यूज बाय अ डिवाइस और अ प्रोग्राम बाद में यूज़ करने के लिए वहां पे हम किसी
डिस में स्टोर करते हैं जैसे एक बहुत आसान एग्जांपल देखिए प्रिंटर का कई बार होता है ना हमने कोई प्रिंट कमांड सेंड कर दी तो
क्या सीपीयू लगातार बैठ के उसको प्रिंट कराता है नहीं तो वो कमांड ऑलरेडी प्रिंटर में जाके स्टोर हो गई है प्रिंटर के क्यू
में कंप्यूटर अभी कुछ भी अलग से काम कर सकता है जो उसको प्रोसेसिंग करनी है करेगा एंड देन वन बाय वन यह प्रिंटर जो है
प्रिंट करता जाएगा कीबोर्ड्स में कई बार आपने ऐसा देखा होगा आपने चार पाच छह क्री प्रेस की प्रेस कर दी बट आउटपुट नहीं आया
वो कई बार क्या होता है स्टोरेज में जाके स्टोर हो जाता है आउटपुट कमांड चली गई है एंड देन बाद में आप देखेंगे एक साथ चार
पाच छह लेटर टाइप हो जाता है तो ये जो पूरा मैकेनिज्म है ये था स्पूलिंग यहां पर हमने कुछ हद तक जो स्पीड मिसमैच वाला
प्रॉब्लम था इनपुट आउटपुट का डिवाइसेसपोर्ट कर लिया लेकिन कुछ प्रॉब्लम अभी भी है वो क्या था प्रॉब्लम था यूनि
प्रोग्रामिंग जिसको हमने रिजॉल्व किया बाय द आईडिया ऑफ मल्टी प्रोग्रामिंग जिसने पूरी कहानी बदल के रख दी प्रॉब्लम क्या
समझाता हूं देखो आईडिया क्या है मेन मेमोरी के अंदर एक हमारा ऑपरेटिंग सिस्टम है और नॉर्मली होता क्या है एक प्रोसेस हम
लेते हैं उसको रन करना स्टार्ट करते हैं जैसे मैं स्पूलिंग की बात कर रहा था बैच की बात कर रहा था ड्यूरिंग द एग्जीक्यूशन
हो सकता है उस प्रोसेस को कुछ इनपुट आउटपुट ऑपरेशन करना पड़े किसी दूसरे इवेंट के लिए वेट करना पड़े अब आमतौर पे अगर
मल्टी प्रोग्रामिंग नहीं है तो सीपीयू क्या करता है था सीपीयू वेट करता है क्या ठीक है तेरे को जो भी इनपुट आउटपुट करना
है तो अपना कंप्लीट कर ले उस उसके बाद मैं एग्जीक्यूट करूंगा बट उससे सीपीयू का टाइम वेस्ट होता है तो मल्टी प्रोग्रामिंग क्या
आईडिया है मल्टी प्रोग्रामिंग कहता है मैं एक बार में बहुत सारे प्रोसेसेस को मेन मेमोरी में लोड करके रखूंगा सीपीयू विल
पिक वन प्रोसेस मान लीजिए प्रोसेस नंबर ए लिया उठाना एग्जीक्यूट करना चालू किया बट ड्यूरिंग द एग्जीक्यूशन अगर वो प्रोसेस
किसी भी इवेंट के लिए वेट करने की बात करता है इनपुट आउटपुट की बात करता है तो सीपीयू आपके लिए वेट नहीं करेगा सीपीयू
तुरंत कांटेक्ट स्विच करेगा विल पिक सम अदर प्रोसेस किसी दूसरे प्रोसेस को लेकर रन करना चालू करेगा फिर उसको रन करेगा फिर
बहुत समय तक वेट नहीं करेगा अगर उसने किसी और चीज के लिए वेट किया मैं फिर से मेन मेमोरी से एक प्रोसेस लूंगा उसको रन करता
जाऊंगा आईडिया क्या है सीपीयू कभी आइडियल नहीं रहेगा जब तक मेन मेमोरी में एक भी प्रोसेस बची एग्जीक्यूट करने के लिए ध्यान
रखिएगा एक और बात कुछ लोग सोचते हैं मल्टी प्रोग्रामिंग का मतलब है एक बार में एक से ज्यादा प्रोसेस एग्जीक्यूट करना नहीं
सीपीयू में एक बार में एक ही प्रोसेस एग्जीक्यूट हो रही है लेकिन मैं मेन मेमोरी में एक से ज्यादा प्रोसेस रख के
बैठा हूं और उनके बीच में स्पीड से कांटेक्ट स्विच करता हूं तो हमें लगता है कि यार शायद बहुत सारी प्रोसेस रन हो रही
है तो लेट मी गो पॉइंट बाय पॉइंट बहुत सारी जॉब्स आ मिट मेन मेमोरी में रख ली एक प्रोसेस लिया उसको रन करना स्टार्ट किया
इवेंचर आउटपुट या किसी और चीज के लिए वेट कराएगा सीपीयू किसी के लिए वेट नहीं करेगा प्रोसेसर किसी के लिए वेट नहीं करेगा दैट
इज द आईडिया अगर य नॉन मल्टी प्रोग्राम होगा तो सीपी बेचारा चुपचाप बैठा रहेगा बट मल्टी प्रोग्रामिंग क्या कह कहता है
चुपचाप नहीं बैठना कोई दूसरा प्रोसेस लेंगे रन करना चालू करेंगे और अगर वह प्रोसेस किसी चीज के लिए वेट करता हो तो
तब अगला उठाएंगे कंक्लूजन इज द शो मस्ट गो ऑन जब तक एक भी प्रोसेस मेन मेमोरी में है जॉब क्यू में है रेडी क्यू में है जो
एग्जीक्यूट होना चाहता है तब तक सीपीयू आइडल नहीं रहेगा इसके कुछ इंपॉर्टेंट एडवांटेज एग्जाम में आता है इसको अच्छे से
लिख के आइएगा तो क्या-क्या ओबवियसली सीपी यूटिलाइजेशन अच्छा होगा अगर जल्दी-जल्दी सबका नंबर आएगा तो वेटिंग टाइम कम होगा एक
से ज्यादा टास्क आप हैंडल कर पा रहे होंगे एक बार में एक ही हो रहा होगा बिकॉज़ ऑफ द कॉन्टेक्स्ट स्विच वाला आईडिया और
ओबवियसली सीपीयू को जो टाइम है शेयर्ड हो रहा है बहुत सारे प्रोसेस के बीच में कुछ कॉम्प्लेक्शन तो आएंगी लाइक प्रोसेस
कॉम्प्लेक्टेड एंड कॉम्प्लेक्शन मैनेजमेंट तो सीपीयू को अच्छे से आपको मैनेज करना पड़ेगा उसके लिए आगे हम एल्गोरिथम स्टडी
करेंगे नॉट अ प्रॉब्लम एंड देन कॉम्प्लेक्टेड मेंट ये बात ठीक है मेन मेमोरी को बड़ा एफिशिएंट तरह से मैनेज
करना उसके लिए पेजिंग और बहुत सारे एल्गोरिथम हम आगे जाके सीखेंगे तो तीन आइडियाज हमने पढ़ ली इवोल्यूशन के अंदर
फर्स्ट इज बैच देन स्पूलिंग एंड देन दिस आइडिया ऑफ मल्टी प्रोग्रामिंग तो अभी बात करते हैं बहुत सारे नाम है मल्टीटास्किंग
टाइम शेयरिंग मल्टी प्रोग्रामिंग विद राउंड रॉबिन या फेयर शेयर आमतौर पे भी से मल्टीटास्किंग सो मल्टी प्रोग्रामिंग और
मल्टीटास्किंग टू बी वेरी ऑनेस्ट वैसे लगभग लगभग सेम चीज है थोड़ा सा लॉजिकल एक्सटेंशन है क्या समझाता हूं आपको और कई
बार इस पे यूनिवर्सिटी एग्जाम में सेमेस्टर्स में बात की जाती है देखिए आईडिया क्या है जब हमने मल्टी
प्रोग्रामिंग की बात की तो हमने समझा कि यार प्रोसेसर के पास बहुत सारी प्रोसेस है और जैसे ही उसको लगेगा कि किसी प्रोसेस को
वेट करना है किसी भी चीज के लिए इनपुट आउटपुट के लिए किसी और चीज के लिए तो सीपीय तुरंत कांटेक्ट स्विच करेगा बट
आईडिया अप्रोच समझिए क्या है ऐसा लगता है समझने में हमारी थॉट प्रोसेस क्या है कि सीपीयू तो रन करना चाहता है अगर प्रोसेस
ही एक समय के बाद रन नहीं होना चाहता तो सीपीयू अपना ऑप्शन एग्जीक्यूट कर रहा है तब वो किसी और को लेके आ रहा है बट क्या
ऐसा हो सकता है कि कोई प्रोसेस लगातार मे भी रन करना चाहता हो लेकिन फिर भी हम उसको जबरदस्ती रोक के किसी दूसरे प्रोसेस पर
जाएं फोर्सफुली कांटेक्ट स्विच करें यस इसी को हम बोलते हैं टाइम शेयरिंग अप्रोच ऐ समझिए जैसे फॉर एग्जांपल हमारा सिस्टम
है आज के टाइम पे सीपीयू है अब कोई यूजर बहुत सारे काम करता है आजकल के टाइम प मे बी आप यू नो ब्राउजर भी आपने खोला हुआ है
जैसे इस फिगर में देख रहे हैं एक्सल फाइल है कोई पेंट ब्रश है कोई गाना भी प्ले किया जा रहा है अब प्रोसेसर हम मानते हैं
कि आजकल के टाइम प बहुत पावरफुल है टास्क छोटे-छोटे हैं तो क्या करता है प्रोसेसर बहुत स्पीड से इन सारे टास्क में कांटेक्ट
स्विच करता जाता है बिकॉज एजेंडा ये तो है नहीं कि पहले गाना बजा के कंप्लीट कर लो गाना भी बैकग्राउंड में चलता रहे आप एक्सल
में कुछ एंट्रीज भी करते रहो और मे भी शायद कोई ब्राउजर भी ओपन रहे तो लॉजिक क्या है सीपीय इन सारे प्रोसेस के बीच में
इतने स्पीड से कांटेक्ट स्विच करता है ना कि एवरीबॉडी केटेड फॉर हिज और हर यूज एक ही चीज के लिए
पूरा सिस्टम है बट एक्चुअली वो यू नो सीपीयू जल्दी-जल्दी कांटेक्ट स्विच कर रहा होता है आपको लगेगा पैरेलल एग्जीक्यूशन हो
रहा है यहां भी पैरेलल एग्जीक्यूशन नहीं है बट स्पीड इतनी फास्ट है कि ऐसा लग रहा होता है तो इसको हम बोलते हैं टाइम
शेयरिंग या मल्टीटास्किंग एक और पॉइंट है हम यहां पर ऐसा भी मान सकते हैं कि टास्क भी अलग-अलग लोगों के हो सकते हैं मान
लीजिए google2 है नहीं बट सर्वर इतना पावरफुल है कि वो बहुत सारे यूजर्स के बीच में इतने
स्पीड से कांटेक्ट स्विच कर रहा है कि हर किसी को इंप्रेशन आ रहा है कि यार शायद हमारे लिए काम कर रहा है तो वही पूरा
आईडिया मैंने यहां पर लिखा है सो अ टाइम शेयरिंग और मल्टीटास्किंग इज अ लॉजिकल एक्सटेंशन ऑफ मल्टी प्रोग्रामिंग उसी का
एक्सटेंडेड वर्जन है इट अलाउ मेनी यूजर टू शेयर कंप्यूटर साइमल नियस सीपीयू एग्जीक्यूट मल्टीपल जॉब्स जो अलग-अलग यूजर
से हो सकते हैं एंड अगेन इतनी स्पीड से कांटेक्ट स्विच होता है कि हर किसी को इंप्रेशन आता है कि पूरा सिस्टम जैसे वही
यूज़ कर रहा है इवन दो वो सच में शेयर हो रहा है अगेन जैसे अब mp3 प्लेयर mp4 कर लीजिए डॉक्यूमेंट है कुछ भी यहां बहुत
सारे काम कर रहे होते हैं अगेन दोबारा समझिए क्या यहां पर भी ट्रू पैरेललिज्म है नहीं सीपीयू पर एक बार में एक ही प्रोसेस
एग्जीक्यूट हो रहा है बट हम इतने फास्टली इतनी स्पीड से कर रहे हैं कि मानो हर किसी को इंप्रेशन हो रहा है कि एक सारा एक साथ
हम बहुत सारा काम कर पा रहे हो यस सो दिस इज द आइडिया ऑफ मल्टी प्रोग्राम मल्टी टास्किंग या टाइम शेयरिंग ठीक है तो ये
अगेन इस जीआईएफ के अंदर ये करके दिखाने की कोशिश की कि बहुत सारा काम हम कर रहे हैं कमिंग टू नेक्स्ट आईडिया इज मल्टी
प्रोसेसिंग अब मल्टी प्रोग्रामिंग या मल्टीटास्किंग एक बात हो गई वह अलग कैटेगरी है यह अलग कैटेगरी है मल्टी
प्रोसेसिंग यह क्या है उल्टा मानते हैं देखो मल्टी प्रोग्रामिंग या मल्टीटास्किंग में हम क्या मान रहे हैं लोड इतना ज्यादा
है नहीं सीपीयू बहुत पावरफुल है इसलिए वो बड़ी स्पीड से कांटेक्ट स्विच कर रहा है और हर किसी को एक साथ मैनेज कर रहा है अगर
कहानी उल्टी समझे लोड बहुत ज्यादा और सीपीयू इतना पावरफुल नहीं है अब मेरे पास क्या ऑप्शन है आइर आई कैन हैव मल्टीपल
कंप्यूटर्स बहुत सारे कंप्यूटर में लगाऊं और उनसे मिलके काम करूं बट द फैक्ट ऑफ द मैटर इज ना तो मेरे को मेमोरी की जरूरत है
एक्स्ट्रा ना मेरे को इनपुट आउटपुट बसेस की जरूरत है ना मेरे को प्रिंटर की जरूरत है मेरे को तो कंप्यूटेशन करने की जरूरत
है तो क्यों ना एक काम करें कि एक ही सिस्टम के अंदर जहां पे मेमोरी भी एक ही होगी इनपुट आउटपुट डिवाइसेज भी सेम होंगे
बट वी कैन हैव मल्टीपल प्रोसेसर्स तो यहां पर सच में हम पहली बार एक सिस्टम में एक से ज्यादा प्रोसेसर लगाते हैं और इसको
बोलते हैं मल्टी प्रोसेसिंग नॉट मल्टी प्रोग्रामिंग वी है मल्टी प्रोसेस सो व्हाट इज द
आईडिया मल्टी प्रोसेसर ऑपरेटिंग सिस्टम रेफर्स टू यूज ऑफ टू और मोर सीपीयूज विद इन द सेम कंप्यूटर द मल्टीपल सीपीयू शेयर
बाकी सब कुछ सेम है उसको रिप्लिकेट नहीं कर रहे सो बसेस है मेमोरी है पेरीफेरल्स है सब कुछ यहां पे एक साथ ही है क्या यहां
पर ट्रू पैरेललिज्म होगा हां हुआ क्योंकि एक प्रोसेसर में एक बार में एक प्रोसेस रन कर सकती है बट अभी तो भाई मेरे पास एक से
ज्यादा प्रोसेसर है ना हां बिल्कुल है सो मल्टीपल कॉन्करेंट प्रोसेस कैन रन ऑन सेपरेटली ऑन ईच सीपीयू तो यहां पे ट्रू
पैरेललिज्म आपको मिलेगा अब यह करने का एडवांटेज क्या होगा ऑब्स जो कॉम्प्लेक्शन इंटेलिजेंस एक्सपर्ट सिस्टम
इमेज प्रोसेसिंग वेदर फॉर कास्टिंग वो सारे काम करने में आपको आजादी मिलती है फैक्ट बताऊं आजकल आपके भी जो प्रोसेसर है
इवन यू नो यू नो द प्रोसेसर्स ऑन सिंपल लैपटॉप्स पर्सनल कंप्यूटर्स में ऑक्टा कोर क्वार्ड कोर आपने सुना होगा इट मींस अगेन
दे आर हैविंग मल्टीपल कोर्स और मल्टीपल सीपीयूज इजंस यह एक आईडिया हुआ अगर मैं एक बार इसमें फर्द जाएं तो दो कैटेगरी होती
हैं एक होता है क्या सिमेट्री प्रोसेसिंग एक है असमेट व्हाट डू वी मीन बाय दिस एक तरीका तो यह है कि फॉर एग्जांपल चार
प्रोसेसर हैं चारों एकदम सिमिलर है सबके राइट सेम है ड्यूटी सेम है आपस में दिल मैनेज एक काइंड ऑफ़ मास्टर स्लेव
आर्किटेक्चर असमेट आइडिया एक मास्टर हो सकता है जो बाकी सारे प्रोसेस को प्रोसेसर्स को मैनेज करें उनको टास्क बताए
या और बहुत सारे कैटेगरी इजेशन हो सकते हैं तो आई विल गो वन बाय वन डेफिनेशन ऑल प्रोसेस डिड इक्वली एंड कैन
रन एनी टास्क जो भी टास्क आपस में मैनेज किया जा सकता है ईच प्रोसेसर इज असाइन ए स्पेसिफिक टास्क और अ रोल फॉर एग्जांपल
प्रिंटर हो सकता है सिर्फ एक प्रोसेसर से एसोसिएटेड हो तो अगर कोई प्रोसेस ऐसी आई जिसको की प्रिंटिंग करना है तो उसको उस
स्पेसिफिक प्रोसेसर पे ही शेड्यूल करना पड़ेगा या एक मास्टर है बाकी सारे स्लेव्स है अगेन जैसे टास्क लोकेशन एनी प्रोसेसर
कैन परफॉर्म एनी टास्क कोई यहां पे से कैटेगरी इजेशन नहीं होगा टास्क आर डिवाइडेड अकॉर्डिंग टू प्रोसेसर रोल एक हो
सकता है इनपुट आउटपुट को हैंडल कर रहा हो एक हो सकता है इमेज प्रोसेसिंग को हैंडल कर रहा हूं लाइक दिस
कॉम्प्लेक्शन सिंपलर फॉर ऑल प्रोसेसर्स एंड आर ट्रीटेड एज अ सेम लगभग सबकी कॉम्प्लेक्टेड करना और इन जनरल भी मुश्किल
होगा क्योंकि भाई एक मास्टर और बाकी सारे स्लेव हैं ये डिफरेंस यूनिवर्सिटी एग्जाम्स में बहुत काम आता है सेमेस्टर्स
में ना इसलिए इसको अलग से मेंटेन करके चल रहा हूं इसमें ऑब्स की स्केलेबल करना ना भी आसान होगा फ्यूचर में मैं 8 की जगह 16
या 32 कोर पे जाना चाहता हूं यहां पर मे एक बार कॉन्फ़िगरेशन एज प्रोसेसर्स आर डेड क्योंकि सबका एजेंडा अलग-अलग है तो हो
सकता है उसको आपको री कॉन्फ़िगर करना पड़े परफॉर्मेंस लोड आ लोड इज इवनली डिस्ट्रीब्यूटर और यहां पर अगेन मे वेरी
कुछ प्रोसेसर हो सकता है ज्यादा काम करें कुछ कम काम करें बेस्ड ऑन कि आप उससे क्या काम करा रहे हो क्या उसकी ड्यूटी है ये एक
इंपॉर्टेंट पॉइंट एक और मैंने सोचा डिफरेंस अलग से आपको एक्सप्लेन कर दूं मल्टी प्रोग्रामिंग एंड मल्टी प्रोसेसिंग
दोनों अलग-अलग आईडिया मल्टी प्रोग्रामिंग सीपीयू एक ही होता है मल्टीपल प्रोग्राम चलते हैं एक के बाद एक के बाद एक फास्ट
कॉन्टेक्ट स्विच यहां पर सच में मल्टीपल सीपीयूज हमारे पास होते हैं सिमुलेटर एट एग्जीक्यूशन ब रेपिडली तो कॉन्करंसी होती
नहीं है इल्यूजन सिमुलेशन है उस चीज का यहां पर सच में ट्रू पैरेललिज्म होता है क्योंकि यार प्रोसेसर एक से ज्यादा है
मेरे पास अ मैक्सिमाइज सीप यूटिलाइजेशन बाय कीपिंग बिजी विथ डिफरेंट टास्क को तो हमने समझ लिया जब तक एक भी टास्क रहेगा तब
तक हम एग्जीक्यूट करेंगे प्रोसेस कोई पंगा करेगी कांटेक्ट स्विच करेंगे यहां पर एन हैंस परफॉर्मेंस बाय अलोंग टास्क टू बी
प्रोसेस साइमल नियस मल्टीपल टास्क एक साथ होता है उस तरह से हम मैक्सिमाइज करते हैं सीपीय एकसे ज्यादा है रिक्वायर ओनली वन
सीपीयू मैनेज मल्टीपल टास्क ऑन इट रिक्वायर मल्टीपल सीपीयू इनेबल पैरेलल प्रोसेसिंग एंड द लास्ट इज़
कॉम्प्लेक्टेड होगा क्योंकि एक ही सीपीयू उसे ही हैंडल करना है अब यहां पर मल्टीपल सीपीयूज
वेदर इट इज सिमेट्री और असमेट कॉम्प्लेक्शन सिंगल प्रोसेसर से तो ज्यादा होने वाली है तो अगर आपसे इस तरह का
डिफरेंस पूछे मेक अ टेबल डिफरेंस बताओ और ज्यादा नंबर मिलेंगे रियल टाइम ऑपरेटिंग सिस्टम बहुत इंपॉर्टेंट बात है यह समझिए
आई एजेंडा क्या है एजेंडा है टाइम कुछ कंडीशंस कुछ आईडियाज ऐसे हो सकते हैं जहां पे सिर्फ टास्क करना जरूरी नहीं है विद इन
द स्पेसिफिक टाइम फ्रेम करना जरूरी है अगर इतने टाइम में किया तो किया अगर उसके बाद करोगे तो फिर उसका करना ना करना बराबर
होगा इस तरह के सिनेरियो को हम बोलते हैं रियल टाइम ऑपरेटिंग सिस्टम्स जहां पर इस तरह की कंडीशन को हम एंटरटेन करते हैं सो
व्हाट आर यू राइट इट अ रियल टाइम ऑपरेटिंग सिस्टम इज अ स्पेशल पर्पस ऑपरेटिंग सिस्टम व्हिच हैज वेल डिफाइंड फिक्स टाइम
कांस्टेंट्स टाइम की बड़ी स्पेसिफिक कंडीशन होंगी प्रोसेसिंग मस्ट बी डन विद इन द डिफाइंड टाइम कांस्टेंट और द सिस्टम
विल फेल या तो विद इन द टाइम स्पैन आप वो काम पूरा करो वरना ना करना ना करना बराबर होगा जैसे फॉर एग्जांपल आप देख सकते हैं
एयरक्राफ्ट है कोई कोई उसके ऊपर वेपन है अभी जब तक मैं एनिमी टेरिट्री में हूं फॉर एग्जांपल या एनिमी एयरक्राफ्ट हमारी
टेरिट्री में हम उसको मार सकते हैं वो अपने घर चला गया फिर दोबारा थोड़ी मार सकते हैं तो विद इन फ्रैक्शन ऑफ सेकंड
आपको फायर करना है वहां ऐसा नहीं कि आपने बटन दब विंडोज अपडेट पे चली गई कि अभी विंडो अपडेट कर रहा है उसके बाद करेगा
मेडिकल सिस्टम है अभी देख रहे इतना कॉम्प्लेक्शन अप है भाई तो अगर फॉर एग्जांपल किसी को कोई उसका बी बीपी डाउन
हो रहा है देयर मस्ट बी अ बजर और ऑटोमेटिक कोई मशीन है जिसको काम करना चाहिए उसको प्रॉब्लम को सॉल्व करने के लिए और वो आप
बोलो कि वो हमने किया लेकिन वो एक घंटा बाद किया एक घंटे में तो आदमी निकल चुका है ना भाई तो उसका ध्यान रखना है
एयरक्राफ्ट है एयरक्राफ्ट पूरा एटीसी है तो रन टाइम पे किसी को लैंडिंग करानी है किसी की इमरजेंसी कोई काम करना है तो ये
सारे के सारे टास्क ऐसे हैं जो आज के टाइम पे कंप्यूटर ही हैंडल कर रहा है बट टाइम बड़ा कांस्टेंट्स है है ना विद इन द टाइम
स्पैन आपको काम करना है सो वैल्यूड मोर ऑन हाउ क्विकली और हाउ प्रिडिक्टिबिलिटी इट कैन रेस्पों विदाउट बफर डि एंड समथिंग सो
आईडिया यह नहीं कि आपने कितना सारा काम किया यह वो वाला आईडिया नहीं है कितनी जल्दी आप रिस्पांस कर सकते हैं यह एजेंडा
होता है किसका रियल टाइम का बाकी ये सब अगेन एग्जांपल्स यहां पर लिखे हैं इसकी फर्द कैटेगरी इजेशन है कौन-कौन सा हार्ड
रियल टाइम एंड सॉफ्ट रियल टाइम ना व्हाट इज दैट हार्ड रियल टाइम एज यू कैन सी एकदम फिक्स्ड टाइम कांस्टेंट है दिस इज द
डेडलाइन यहां तक आप करेंगे मेरे लिए यूजफुलनेस मैक्सिमम है जैसे ही आप ये डेडलाइन क्रॉस करेंगे मेरे लिए आप आपकी
यूज बिलिटी इवन जीरो क्या माइनस में चली गई तो उसके बाद करोगे तो फिर कोई मतलब है नहीं है ना तो ये होता है हार्ड रियल टाइम
बिल्कुल भी हल्का सा भी मैनेज नहीं कर सकते एक बहुत अच्छा एग्जांपल है कार के अंदर एयर बैग है तो कार चल रही है
एक्सीडेंट होता है विद इन फ्रैक्शन ऑफ सेकंड एयर बैग यू नो फूलना चाहिए ताकि आपको चोट ना लगे अब एयर बैग उस समय तो
खुला नहीं आपका फेस जाके स्टेरिंग प लगा उसके दो मिनट के बाद फिर जोर से फुला वो तो उल्टा आपका सिर पीछे जाके और लगा अब तो
नुकसान कर देगा सो इन दिस काइंड ऑफ सिनेरियो आप आपको स्ट्रिक्टली डेडलाइन से पहले काम करना ही है यहां पे कोई फजी नेस
कोई मैनेज नहीं कर पाएंगे चीजों को वाइल ऑन द कांट्रेरी हमारे पास है सॉफ्ट रियल टाइम सिस्टम्स यहां पर आप देख सकते हैं
क्या है नाउ दैट इज द डेडलाइन डेडलाइन तक करें तो बहुत अच्छा बट अगर डेडलाइन क्रॉस भी होती है तो मैं नहीं बोल रहा कि यूज
बिलिटी ड्रॉप्स डाउन टू ज़ीरो इमीडिएट इट ड्रॉप डाउन टू ज़ीरो बट ग्रैजुअली इट गोज डाउन टू ज़ीरो जैसे अगेन वर्चुअल एनिमेशन
है यू नो गेम्स है ऑनलाइन गेम्स है उस तरह के केस में हम बोल सकते हैं कि दीज आर द एग्जांपल्स ऑफ सॉफ्ट रियल टाइम सिस्टम्स
जहां पे ये अच्छा बात तो नहीं होगा बट हां धीरे-धीरे धीरे-धीरे यह जीरो पे जाता है इसकी यूज बिलिटी अब गेम है ना थोड़ा लैग
हो सकता है ना थोड़ा लैग हो सकता है कोई कोई मर तो नहीं रहा ना वो वाला आईडिया है मैंने फिर भी क्या किया रियल टाइम वाले
आईडिया को डिफरेंशिएबल टाइम एंड सॉफ्ट रियल टाइम आई विल गो वन
बाय वन सो डेडलाइन मस्ट मीट स्ट्रिक्ट डेडलाइंस विदाउट फेल तो यहां बड़ा स्ट्रिक्ट है कैन मिस डेडलाइंस ओकेज
विदाउट फेलियर फिक्स्ड एंड गारंटीड रिस्पांस चाहिए ही चाहिए भाई प्रिडिक्टेबल बट नॉट गारंटीड मिल जाएगा गेम है अभी बटन
दबाओ के गोली चलेगी थोड़ा बहुत लैग हो सकता है यूज इन लाइव क्रिटिकल सिस्टम्स लाइक मेडिकल डिवाइस न्यूक्लियर रिएक्टर
जहां किसी की जान खतरे में लगी हो यूज इन मल्टीमीडिया यूजर इंटरफेस एक्सेट्रा टिपिकली मोर
कॉम्प्लेक्शन एंड यूजुअली लेस एक्सपेंसिव 100% मस्ट बी हाईली रिलायबल एंड फॉल्ट टोलरेंट रन टाइम प कोई गड़बड़ होनी नहीं
चाहिए होगा भी तो कैसे उसे मैनेज करना आपको पहले पता हो हाई हाई रिलायबिलिटी डिजायर्ड बट सम फेलर्स आर टॉलरेबल गेमिंग
की बात करो इन सब की बात करर वैसे ही नाम के आगे सॉफ्ट लगा दिया तो थोड़ा बहुत मैनेज किया जा सकता है इन दिस अप्रोच नाउ
कमिंग टू द लास्ट पॉइंट डिस्ट्रीब्यूटर ओस हम क्या कर रहे हैं वरायटी कर रहे हैं इससे पहले हमने क्या किया था इवोल्यूशन
बैच है यास पूलिंग है इवॉल्व हमने समय के साथ कैसे किया यहां पर हम वैरायटी देख रहे हैं डिस्ट्रीब्यूटर सा शब्दों में बोलूं
तो पॉइंट क्या है अगर बहुत सारे कंप्यूटर हैं फिजिकली अलग-अलग लोकेशंस पे उठा के मैंने उसको एक नेटवर्क के अंदर कनेक्ट कर
दिया दैट इज नोन एज डिस्ट्रीब्यूटर ओएस अब उसको जो मैनेज करेगा दैट इज डिस्ट्रीब्यूटर ऑपरेटिंग सिस्टम भले ही
फिजिकली दे आर अपार्ट तो दे आर एक्चुअली इंडिपेंडेंट सिस्टम्स बिल्कुल अलग-अलग है इन आपस में कोई लेना देना नहीं है बट दे
आर बाइंडेड टुगेदर बाय ए नेटवर्क तो अगेन बहुत सारे एडवांटेज मिलेंगे देखते हैं सो डिस्ट्रीब्यूटर ऑपरेटिंग सिस्टम इज अ
सॉफ्टवेयर ओवर कलेक्शन ऑफ इंडिपेंडेंट नेटवर्क्ड कम्युनिकेटिंग लूजली कपल्ड नोट्स फिजिकली सेपरेट कम्युनिकेशन बिल्कुल
फिजिकली सेपरेट है अब यहां पर क्या है नोट्स कम्युनिकेट विद वन अनदर यूजिंग वो हाई स्पीड बसेस हो सकती है इंटरनेट हो
सकता है कोई भी जॉब है अब उसको व रन टाइम पे मैनेज कर सकते हैं मान लीजिए बहुत बड़ा टास्क है तो रन टाइम पे कुछ टास्क यह वाला
सिस्टम ले लेगा कुछ यह ले लेगा आपस में डिवाइड करेंगे मैनेज करेंगे क्या-क्या एडवांटेज आपको मिलेंगे रिसोर्स शेयरिंग
मैं कहता हूं जो सारे एडवांटेज यार इंटरनेट के हैं वही डिस्ट्रीब्यूटर सिस्टम के है रिसोर्स शेयरिंग हो सकता है
कंप्यूटेशन स्पीड अप मैं आज google2 भी एक डिस्ट्रीब्यूटर सिस्टम होगा देयर आर मल्टीपल सर्वर्स जो चीजों को
मैनेज कर रहे होते हैं कनि केशन होगा सो दिस इज अ बेसिक आइडिया तो यह एक और इंपॉर्टेंट फेज हमने कवर कर
लिया जहां पर जो वैरायटी है है ना मल्टी प्रोग्रामिंग टाइम शेयरिंग देन मल्टी प्रोसेसिंग देन रियल टाइम एंड देन जस्ट
डिस्ट्रीब्यूटर कोई भी क्वेश्चन आ जाए पांच नंबर में 10 नंबर में ठोक के आ सकते हो हर चीज के जो टेबल वाले डिफरेंस है
इंपॉर्टेंट आइडियाज है सब कुछ कवर करके चल रहा है उसके आगे और कुछ देखने की जरूरत पड़ेगी नहीं यस आगे बढ़ अभी बात करते हैं
स्ट्रक्चर ऑफ ऑपरेटिंग सिस्टम की तो यह भी एक छोटा सा टॉपिक है कभी-कभार यहां से मैंने देखा है कि क्वेश्चन पूछ लिया जाता
है तो जानते हैं आईडिया क्या है देखिए सबसे पहले तो एक बात समझते हैं कि जो मोस्ट कॉमन अप्रोच है इन जनरल किसी भी
सॉफ्टवेयर को मैनेज करने की जैसे हम सॉफ्टवेयर इंजरिंग पढ़ते हैं ना कि देयर शुड बी अ मॉड्यूलर आर्किटेक्चर बहुत सारे
मॉड्यूस होने चाहिए है ना मॉड्यूस काइंड ऑफ इंडिपेंडेंट हो कपलिंग कोहेजिया एंड देन राद देन हैव अ वन मोनोलिथिक
सिस्टम मान ली एक सिंगल सिस्टम हो दीज मॉड्यूल शुड बी वेल डिफाइंड पोर्शंस अ ऑफ सिस्टम विद केयरफुली डिजाइन इनपुट आउटपुट
एंड द फंक्शंस तो केयरफुल डिजाइनिंग हो आपस में कम्युनिकेट करें टोटली टुगेदरली दे मस्ट बिहेव एज अ सिस्टम ये एक अप्रोच
है हालांकि जब हम ऑपरेटिंग सिस्टम की बात करते हैं तो एक हम बोलते हैं सिंपल स्ट्रक्चर एक सेकंड अप्रोच जो हम बोलते
हैं लेयर्ड अप्रोच तो सिंपल स्ट्रक्चर की जब बात करते हैं ना तो आईडिया कि स्टार्टिंग में जितने भी ऑपरेटिंग सिस्टम
धीरे-धीरे समय के साथ डेवलप हुए हमने कोई बहुत स्पेसिफिक बहुत स्पेसिफिक एक्सक्यूज मी लेयर्ड अप्रोच या मॉड्यूलर अप्रोच यूज
नहीं की हमने तो आईडिया क्या था मेनी ऑपरेटिंग सिस्टम डू नॉट हैव वेल डिफाइंड स्ट्रक्चर्स फ्रीक्वेंसी
जाएंगे और स्ट्रक्चर बाजी में इतना ध्यान दिया नहीं बट धीरे-धीरे फंक्शनैलिटीज एडिट होती गई काम करते गए पूरा सिस्टम एक तरीके
से हमने री कन्फर नहीं किया हम बोलते हैं सिंपल स्ट्रक्चर जैसे एक एग्जांपल है तो यहां कोई अलग-अलग ऐसा नहीं है प्रोसेस
मैनेजमेंट का अलग मॉड्यूल है मेमोरी मैनेजमेंट का अलग है कोई अलग और आपस में कम्युनिकेट कर रहे हैं देयर आर सर्टेन
लेवल्स डायग्राम इंपॉर्टेंट है याद करके बना के आएंगे तो अलग लेवल का अटेंशन आपको मिलेगा सबसे ऊपर आपको दिख रहा है
एप्लीकेशन प्रोग्राम वो कम्युनिकेट करेगा रेजिडेंट सिस्टम प्रोग्राम मान लीजिए ऑपरेटिंग सिस्टम से देन यू हैव एमएस डस
डिवाइस ड्राइवर्स तो ऑपरेटिंग सिस्टम के अपने डिवाइस ड्राइवर हैं देन रम बायोस डिवाइस ड्राइवर अभी रो के अपने ड्राइवर्स
हैं एंड देन फाइनली इन द लास्ट लेवल यू विल हैव द हार्डवेयर बट मजे की बात क्या है इफ यू हैव सम अंडरस्टैंडिंग यू नो बहुत
डिफाइंड स्ट्रक्चर नहीं है बिकॉज़ एप्लीकेशन प्रोग्राम भी अगर चाहे तो डायरेक्ट डिवाइस ड्राइवर को एक्सेस कर
सकता है बट जैसा मैं बोल रहा हूं उस समय हमारी अंडरस्टैंडिंग नहीं थी इतनी तो इस तरह का मिक्स्ड अप्रोच हमने यूज़ किया हां
अगर मैं थियोरेटिकली बात करूं इस लेयर्ड अप्रोच की तो यहां पर क्या है लेयर नंबर ज़ीरो इज़ द हार्डवेयर लेयर नंबर वन इज़ द
फिजिकल लेयर तो पूरे सॉफ्टवेयर को हम लेयर बाय लेयर डिवाइड करेंगे मान लीजिए मैं किसी भी लेयर x में हूं है ना तो जो मेरे
ऊपर लेयर है x + 1 उसको मैं सर्विस दूंगा और जो मेरे नीचे है लेयर x - 1 उससे मैं सर्विस लूंगा तो हार्डवेयर किसी लेयर को
सर्विस देंगे देन उसके ऊपर उसके ऊपर डिजाइनिंग में तीन-चार बातों का खस ख्याल रखना है आप किसी भी फंक्शन को उस लेयर में
ही लिख सकते हैं जिसका जो बेसिक रिक्वायरमेंट है उससे नीचे वाली लेयर में काम हो चुका हो इजंस पल अगर किसी को
मेमोरी यूज़ करना है तो मेमोरी रिलेटेड फंक्शन उसके नीचे ऑलरेडी अंपलिंग चाहिए एडवांटेज क्या मिलेगा कल को मेरे को लेयर
नंबर x में कोई चेंज करना है तो मेरे को सबको बताने की सारी बात बताने की जरूरत नहीं है लेयर नंबर x से कौन रिलेटेड है x
- 1 और x + 1 बस इन दोनों को अपनी बात समझाना है तो लॉन्ग रन में उसको मेंटेन करना मॉडिफाई करना स्केल करना रिलेटिवली
सब कुछ आसान होगा लेकिन थोड़ा सा स्लो यह हो जाएगा ज्यादा सिस्टमैटिक अप्रोच है तो कॉम्प्लेक्टेड वेयर सपोर्ट ऑपरेटिंग
सिस्टम कैन बी ब्रोकन इन टू पीसेज द ऑपरेटिंग सिस्टम कैन देन मेंटेन अ ग्रेटर कंट्रोल ओवर द कंप्यूटर एंड द एप्लीकेशन
प्रोग्राम सो यू शुड हैव अ फ्रीडम विद द इनर यहां पे क्या होगा फ्रीडम तो आपको मिलेगा इनर वर्किंग क्या है उसका पूरा
ध्यान डायरेक्ट रखने की जरूरत नहीं क्योंकि हमने उसको ऑलरेडी लेयर्स में डिवाइड कर दिया है अंडर दिस टॉप डाउन
अप्रोच ऑल आवर फंक्शनालिस एंड द फीचर आर डिटरमिन बाय सेपरेट कंपोनेंट्स इंफॉर्मेशन हाइडिल सो देयर हर किसी को सब बात बतानी
जरूरी नहीं है और वही जो मैंने आपसे बोला था लेयर रो से लेयर n तक पूरी फंक्शनैलिटी जा हम डिवाइड करता डिवाइड करते जाते हैं
ध्यान किस बात का रखना है फिर वही बात आपको जो चीज चाहिए एज अ इनपुट वो आपसे नीचे वाली लेयर में फुलफिल हो चुकी हो और
आप सर्विस देंगे अपने से ऊपर वाले लेयर को सो ये एक बेसिक अंडरस्टैंडिंग थी अगला आईडिया है माइक्रो कर्नल अप्रोच बहुत सारे
सेमेस्टर एग्जाम्स में इसके ऊपर मैंने क्वेश्चन देखा है व्हाट इज़ माइक्रो कर्नल अप्रोच एक कॉमन सेंस आइडिया समझाता हूं
ऑपरेटिंग सिस्टम या कर्नल एक ही बात है थोड़ा सा डिफरेंस आगे बताऊंगा फिलहाल मान लीजिए ऑपरेटिंग सिस्टम इज़ आल्सो नोन एज़
कर्नल उसका टेक्निकल नाम कर्नल है ऑपरेटिंग सिस्टम या कर्नल का साइज बहुत बड़ा है यार है ना और साइज इतना बड़ा होगा
पहले तो वह मेन मेमोरी में ज्यादा स्पेस ऑक्यूपाइड टर्म में उसको मेंटेन करना उसके अंदर मॉडिफिकेशन करना सब कुछ
कॉम्प्लेक्टेड एक अप्रोच क्या हो सकती है इसको हम बोलते हैं माइक्रो कर्नल जहां पर सिर्फ जो कर्नल के बहुत इंपॉर्टेंट
आइडियाज हैं जैसे इंटरप्रोसेस कम्युनिकेशन सिंक्रोनाइजेशन मेमोरी मैनेजमेंट सीपीयू शेड्यूलिंग जो हर बार चाहिए ही चाहिए
इसमें कोई डाउट नहीं कि ये ना चाहिए तो चाहिए ही चाहिए वो तो रहेंगे कर्नल के अंदर और लेकिन अब मैं उसे बोलूंगा माइक्रो
कर्नल बाकी एप्लीकेशन प्रोग्राम्स फाइल सिस्टम्स डिवाइस ड्राइवर्स आर देयर लेकिन वो कर्नल में नहीं रहेंगे वो उसके
बाहर रहेंगे और वह आपस में कम्युनिकेट करते रहेंगे वाया द आईडिया ऑफ कर्नल और वाया मैसेज पासिंग ओनली उससे होगा यह कि
मेरे कर्नल का साइज छोटा हो जाएगा और उसे माइक्रो कर्नल कह के बुलाऊंगा क्योंकि छोटा हो जाएगा कल को फाइल सिस्टम में कोई
चेंज करना है वो चेंज करना आसान होगा कोई अलग से यू नो एज अ कुछ अलग से मॉड्यूल ऐड करने है वो ऐड करना आसान होगा सारी चीजें
आसान हो जाएंगी आईडिया समझिए सो इन मिड 1980 रिसर्चर एर कारगी मलन यूनिवर्सिटी डेवलप ड एन ऑपरेटिंग सिस्टम कॉल्ड मैक दैट
मलाइज द कर्नल यूजिंग माइक्रो कर्नल अप्रोच अभी ये वही बोल रहा हूं दिस मेथड स्ट्रक्चर ऑपरेटिंग सिस्टम बाय रिमूविंग
ऑल नॉन एसेंशियल कंपोनेंट्स फ्रॉम द कर्नल इंप्लीमेंटिंग देम एज अ सिस्टम एज अ यूजर लेवल प्रोग्राम जैसे कोई भी एप्लीकेशन
प्रोग्राम है उसकी तरह मैं इसे डील करूंगा मैं इसको कर्नल का पार्ट नहीं मानूंगा जो इंपॉर्टेंट पार्ट बचेगा वो हो गया माइक्रो
कर्नल वन बेनिफिट ऑफ द माइक्रो कर्नल इज दैट इट मेक एक्सटें ऑपरेटिंग सिस्टम इजियर इसको चेंज करना मॉडिफाई करना आसान होगा और
यह सब आपस में डायरेक्टली कम्युनिकेट कर रहे होंगे अगर एक एग्जांपल बताएं मिनिक्स 3 माइक्रो कर्नल सिर्फ 12000 लाइन ऑफ कोड
में लिख दिया गया था पूरा ऑपरेटिंग सिस्टम 12000 लाइन ऑफ कोड में इज लाइक वेरी लेस लिखा किसने था एंड्रो स्टेन एन बम बुक भी
चलती है ऑपरेटिंग सिस्टम की बहुत अच्छी हैन नेटवर्क्स एंड ऑपरेटिंग सिस्टम अब जिसने ये सब लिखा अगर उसकी लिखी बुक से
पढ़ेंगे तो अगेन आपको एडवांटेज मिलेगा फिलहाल ये वीडियो लास्ट तक देखिएगा ओ आपका ऐसे कंप्लीट हो जाएगा सो आई थिंक माइक्रो
कर्नल अप्रोच का बेसिक आईडिया आपको क्लियर हो गया नेक्स्ट थिंग इज़ द इंटरफेस अब इंटरफेस की क्या कहानी है देखिए यह तो हम
समझ चुके हैं यूजर में और हार्डवेयर में आपस में जो इंटरेक्शन है वो ऑपरेटिंग सिस्टम कराएगा दैट वी ऑलरेडी डिस्कस इट
एक्स एज अ इंटरफेस बट आप ऑपरेटिंग सिस्टम को अपनी बात कैसे बताओगे या ओस आपको अपनी बात कैसे बताएगा इसके बारे में बात नहीं
की तो यह जो क्वेश्चन है इसको आंसर करता है इंटरफेस और यहां पे वैसे आजकल तीन बोल सकते हैं बट दो ऑप्शंस तो है ही हैं एक
हमारा है कमांड लाइन इंटरप्रेटर और सिंपली यू कैन से कमांड इंटरप्रेटर या फिर ग्राफिकल यूजर इंटरफेस तो क्या अप्रोच है
आइए एक बार देख लेते हैं प्रॉब्लम क्या समझ आ रही है ना यूजर और ऑपरेटिंग सिस्टम आपस में कैसे कम्युनिकेट करेंगे इस पे मैं
बात कर रहा हूं सो एक तो जिसे हम आम भाषा में बोल देते हैं कमांड प्रोमट या सीएमडी आप जाएंगे जो जो कमांड आपको लिखनी है जो
जो काम करना है वो कैसे पता लगेगा यू विल राइट इट एज अ पीस ऑफ़ अ कमांड आप कमांड लिखेंगे और वो कमांड रन होगा अगर मैं
थोड़ा सा डिटेल में जाऊं इसको हम बोलते हैं कमांड इंटरप्रेटर सम ऑपरेटिंग सिस्टम इंक्लूड कमांड इंटरप्रेटर एस कर्नल मतलब
कुछ लोग इसको ऑपरेटिंग सिस्टम का पार्ट मानते हैं कुछ लोग पार्ट नहीं मानते अब मैं वो बात भी पूरी कर देता हूं होता यह
है ऑपरेटिंग सिस्टम में एक हमारा हुआ इंटरफेस और एक हमारा हुआ कर्नल इन दोनों को मिला के हम बोलते हैं ऑपरेटिंग सिस्टम
कोई आपसे पूछे व्हाट इज ऑपरेटिंग सिस्टम कर्नल इज दैट पार्ट जो एक्चुअल यू नो मैनेजमेंट वाला काम कर रहा होता है इ फेस
जो कम्युनिकेशन भी हैंडल कर रहा होता है तो अगर आप इस इंटरफेस वाले पार्ट को हटा देते हैं जो बचता है दैट इज नोन एज कर्नल
फेर इनफ अदर सच एज विंडोज है यक्स है ट्रीटेड कमांड इंटरप्रेटर एज अ स्पेशल प्रोग्राम रनिंग वन अ जॉब इज
इनिशिएटिव कर रहा होगा कुछ ऑपरेटिंग सिस्टम में जैसे यक्स है लाइक्स है यहां पर आपको चॉइस भी
मिल जाती है मतलब देर आर मल्टीपल कमांड प्रॉम्स लाइक शेल बॉन शेल सी शेल बंड अगेन शेल कॉन शेल ब्ला ब्ला ब्ला मतलब वी विल
नॉट गो इन टू द डिटेल बेसिक आईडिया कमांड लिखो जो काम करना है वो काम हो जाएगा प्रॉब्लम क्या है कमांड पता किसको है कुछ
टेक्निकल लोग हो सकते हैं बट जो आम यू नो जो लेमन यूजर है जिसको ऑपरेटिंग सिस्टम इस्तेमाल करना उसको ये सब बात समझ नहीं
आती उसके लिए क्या करना पड़ेगा ग्राफिकल यूजर इंटरफेस तो यहां पर जैसा आमतौर पर आप और हम इस्तेमाल करते हैं एक जीआई हमारे
पास होता है बैकग्राउंड प कमांड ही रन करती है बट फॉर एग्जांपल आप यहां पर गए और आपने माउस के थ्रू यहां पे क्लिक किया तो
देयर विल बी अ प्रोग्राम जो कैलकुलेट करेगा माउस का जो कर्सर है उसका एक्स वा एक्सेस क्या है कैलकुलेटर है देन ऑन द बैक
एंड इट विल इनिशिएटिव ग्राफिकल यूजर इंटरफेस में करेंगे आइकंस होंगे पॉइंट्स होंगे सारी की सारी चीज
अच्छा हर स्लाइड में नोट्स मैंने प्रॉपर मेंशन किया है यू वांट टू टेक देम डाउन यू वांट टू यू नो रिमेंबर उसको याद कर लेना
चाहते हो राइट इन अ मच बेटर सेंस इन एन एग्जाम जरूर करना सो सेकंड स्ट्रेटेजी इज ऑपरेटिंग सिस्टम इज यूजर फ्रेंडली अप्रोच
है जीआई है माउस बेस्ड अप्रोच है जहां पर आपकी जो पोजीशन होगी आइकन के ऊपर आप क्लिक करेंगे पैक एंड पे वही सारे फाइल्स फंक्शन
प्रोग्राम्स कोड्स इ इन यू नो इवोक होंगे और एग्जीक्यूशन चलेगा एक और चीज अब मुझे बात जरूर कर लेनी चाहिए वो क्या है वो है
टच बिकॉज़ आजकल मोबाइल फोस की अगर बात करें ज्यादा ज्यादातर काम हम मोबाइल फोस पे ही कर रहे होते हैं हो सकता है वीडियो
मोबाइल फोन पे देख रहे हैं मैं भी वीडियो मोबाइल फोन से ही शूट कर रहा हूं तो काम मोबाइल फोन पे हो रहा है ना दे आर काइंड
ऑफ टच वाला आईडिया है ना तो आप मान सकते हैं जीआई का ही नेक्स्ट वाला लेवल है ये यहां पर बिकॉज इट इज इंप्रैक्टिकल आप ये
सब करें टच स्क्रीन होता है आप कितने यू नो फिंगर से प्रेस कर रहे हैं कितने प्रेशर से प्रेस कर रहे हैं क्या आपका
जेस्चर है है ना मल्टी टच और वो सारी चीजें आजकल स्मार्टफोंस के अंदर रहती है सो दिस इज आल्सो अप्रोच जिसके थ्रू आप
बताना चाह रहे हो थे कि को क्या काम करना है फेयर एनफ अब आईडिया ये है कि बेटर क्या है देखिए ये एक सब्जेक्टिव बात है अगर कोई
बहुत ज्यादा टेक्निकल यूजर है जिसको अंडरस्टैंडिंग है ऑपरेटिंग सिस्टम के ऊपर ज्यादा कंट्रोल ले सकता है वो कमांड लाइन
यूज कर सकता है बट इन जनरल आइ मोर देन 95 96 पर ऑफ द टाइम और इवन मोर जो आम आदमी है जिसको इस्तेमाल करना है ऑपरेटिंग सिस्टम
लिखना नहीं है उ ऑपरेटिंग सिस्टम का इस्तेमाल करना है किसी एप्लीकेशन प्रोग्राम को यूज करना है उसके लिए
ग्राफिकल यूजर इंटरफेस ही बट बटर रहता है है ना तो दोनों के अपने अलग-अलग फायदे अपने अलग-अलग नुकसान है सारे पॉइंट्स
मैंने यहां पे क्लियर कट मेंशन करके रखे हैं नेक्स्ट आईडिया आ जाता है सिस्टम कॉल अगेन वेरी वेरी इंपॉर्टेंट व्हाट इज
सिस्टम कॉल देखिए पहले आसान भाषा में समझाता हूं ये तो मैं मैं पहले आपको समझा चुका हूं ना कि जो हार्डवेयर है हार्डवेयर
के ऊपर सिर्फ और सिर्फ कंट्रोल है कर्नल का है ना अब अगर कोई यूजर लेवल प्रोग्राम है उसको हार्डवेयर के ऊपर कुछ काम करना है
मान लीजिए प्रिंट करना है अब प्रिंट कैसे करेगा ऑपरेटिंग सिस्टम कहता है कि यार मैं किसी को कुछ करने ही नहीं दूंगा तो हम
क्या कहते हैं य ऑपरेटिंग सिस्टम क्या कहता है दैट दे इज एन आइडिया ऑफ यूजिंग अ सिस्टम कॉल आप एज अ यूजर एज अ यूजर लेवल
प्रोग्राम आप ऑपरेटिंग सिस्टम कर्नल के पास आएंगे और आप बोलेंगे टिंग टिंग टिंग नॉक नॉक कर्नल बोलेगा क्या है बोलो मेरे
को प्रिंट करना है इसको बोलते हैं सिस्टम कॉल करना सिस्टम को बुलाना तो कर्नल या ओएस क्या बोलेगा कोई बात नहीं तुम्हारे
बिहाव पे मैं प्रिंट करने वाला हूं यह पूरा आईडिया कहलाता है सिस्टम कॉल इससे आसान तरीके से इस बात को नहीं समझा जा
सकता सता है यस तो ऑपरेटिंग सिस्टम ऐसी बहुत सारी फंक्शनैलिटीज है वह ऐसा नहीं कह रहा मैं काम करने ही नहीं दूंगा वो कह रहा
है बस आपके बिहाव पे काम मैं करूंगा क्या काम करूंगा उसकी पूरी लिस्ट वो पहले से बना के रखता है कि यह सारे काम है जो मैं
कर सकता हूं ऑन योर बिहाव जब भी आपको जरूरत पड़े नॉक नॉक करो मेरे को बताओ आई विल डू दैट वर्क ऑन योर बिहाव दैट इज
कॉल्ड सिस्टम कॉल सो आई विल गो वन बाय वन सिस्टम कॉल प्रोवाइड्स अ मीन फॉर अ यूजर प्रोग्राम टू आस्क ऑपरेटिंग सिस्टम टू
परफॉर्म अ टास्क रिजर्व फॉर ऑपरेटिंग सिस्टम ऑन द यूजर प्रोग्राम्स बिहा थोड़ा अच्छा इंग्लिश हो गया बट बहुत अच्छा पॉइंट
लिखा हुआ है यूज़र प्रोग्राम अ सिस्टम कॉल क्या है एक मैकेनिज्म प्रोवाइड करता है यूज़र प्रोग्राम को कि आप ऑपरेटिंग सिस्टम
से बोलो कि वह टास्क परफॉर्म करे ऑन द बिहा ऑफ़ यूज़र प्रोग्राम इट प्रोवाइड एन इंटरफेस टू द सर्विसेस मेड अवेलेबल बाय दन
ऑपरेटिंग सिस्टम आमतौर पे जो सिस्टम कॉल है ससी प्लस में लिखे होते हैं अलग-अलग एपीआई हैं मैं आपको एग्जांपल से दिखाता
हूं जैसे एक बहुत अच्छा एग्जांपल देखिए इस इमेज से आपको समझ आएगा सी में ने कोड लिखा और बोला प्रिंट कराना है ग्रीटिंग्स अब
प्रिंट एफ का क्या मतलब है ये ओएस को नहीं पता है यह पता है आपका जो यू नो कंपाइलर है उसको तो ये बात आपके कंपाइलर ने समझी
स्टैंडर्ड लाइब्रेरी ने और अब वो गया किसके पास ओएस के पास कि हमको ना ग्रीटिंग प्रिंट कराना है तो ओस के पास एक सिंगल
फंक्शन है मे बी राइट वो राइट फंक्शन के थ्रू जाएगा इस्तेमाल करेगा और आपके बि हाफ पे स्क्रीन के ऊपर ग्रीटिंग्स प्रिंट करा
देगा अब वो कोड सी में लिखा हो पाइथन में लिखा हो में लिखा हो c+ प् में लिखा किसी लैंग्वेज में हो चार अलग-अलग कोड हो सकते
हैं बट ओस हर बार किसको इवोक करेगा राइट को इवोक करेगा यहां एक पूरी डायरेक्टरी देखिए मैंने बना के रखी आमतौर पे कौन-कौन
से रटना नहीं है बट स्टिल आपको पता होना चाहिए जैसे प्रोसेस कंट्रोल है दीज आर सम ऑफ द जनरल यू नो सिस्टम कॉल्स एंड करना है
अड करना है लोड करना है एग्जीक्यूट करना है कोई प्रोसेस क्रिएट करना है टर्मिनेट करना है इन सबके लिए सिस्टम कॉल्स अवेलेबल
होते हैं फाइल मैनेज फाइल से गार्डिंग जो जो सिस्टम कॉल है यहां मैंने लिख के रखे हैं डिवाइस मैनेजमेंट के जो जो स्टैंडर्ड
सिस्टम कॉल्स है रिटन देयर इंफॉर्मेशन मेंटेनेंस गेट प्रोसेस फाइल डिवाइस के ट्रीबो सब सिस्टम कॉल के थ्रू होता है
कम्युनिकेशन कोई कम्युनिकेशन कनेक्शन नेटवर्क्स का जितना काम है वो कम्युनिकेशन प्रोटोकॉल्स के थ्रू होता है दिस इज द
आईडिया तो आई होप सिस्टम कॉल की पूरी कहानी आपको समझ आ गई होगी हम किस तरह से यहां पर काम करते हैं और हर ऑपरेटिंग
सिस्टम का आपने सुना होगा एपीआई होता है एप्लीकेशन प्रोग्राम इंटरफेस जो आप प्रोग्रामर कर देते और प्रोग्राम इसको कॉल
करता है एक और बात बोल देता हूं टू वे एब्स्ट्रेक्शन राइट को नहीं पता उसको इस बात से नहीं लेना देना जिसने ऑपरेटिंग
सिस्टम लिखा है कि राइट को कौन कॉल कर रहा है सी का कोड कर रहा है c+ प का कर रहा है जावा पाइथन अपने को क्या लेना देना है जब
हम प्रोग्राम लिखते हैं सी के कंपाइलर को कोई लेना देना नहीं है कि वो एगजैक्टली एग्जीक्यूट कैसे होता है इजेंट इट
प्रोग्रामर का काम होना चाहिए आप अपना कोड लिखो एक सिंगल फंक्शन होगा जिसके थ्रू उसको एग्जीक्यूट करा देंगे सो आई थिंक
सिस्टम कॉल पूरी कहानी समझ आ गई अच्छे से आप लिख के आओगे मोड क्या होता है सिस्टम कॉल में ही इंटीग्रेटेड पार्ट है इसको ऐसे
समझिए कोई हम सिस्टम दो तरह से काम करता है कभी-कभी तो यूजर का कोड चल रहा होगा जैसे सिस्टम कॉल होगा मैं आपको क्या बोल
रहा हूं ऑपरेटिंग सिस्टम सारी चीजें अपने हाथ में ले लेता है और कहता है मैं मैनेज करूंगा इसी को हम बोलते हैं यूजर मोड
कर्नल मोड यूजर मोड कर्नल मोड कोई प्रोसेस चल रहा था अचानक यूजर ने बोला मेरे को ये काम करना है वाया सिस्टम कॉल तो यहां
सिस्टम यूजर मोड से कर्नल मोड में आ गया इजंस सिस्टम को जो काम करना था किया उसने फिर से दोबारा कंट्रोल किसको दे दिया यूजर
को दे दिया दिस इज द आईडिया तो आमतौर पे एक बिट होती है जि हम बोलते हैं मोड बिट क्या बोलते हैं मड बिट तो मड बिट की
वैल्यू इन जनरल अगर ज़ीरो होती है तो मानते हैं सिस्टम यूजर मोड में है यानी कि अभी यूजर प्रोग्राम रन कर रहा है और अगर
कर्नल मोड बिट की वैल्यू जीरो होती है उसको बोलते हैं कर्नल मोड इस बात का मतलब मतलब क्या हो गया कि फिलहाल जो टोटल
एग्जीक्यूशन है वो कर्नल के हाथ में हालांकि मैं बता दूं दिस इज नॉट लाइक वेरी वेरी स्टैंडर्ड थिंग कुछ सिस्टम में उल्टा
भी हो सकता है कि मान लीजिए वो कह रहा है नहीं मेरे हिसाब से जीरो का मतलब यूजर मोड है वन का मतलब कर्नल है हो सकता है आमतौर
पे यूजर को वन और कर्नल को जीरो दिया जाता है है ना तो मोड बिट की बात आप समझ गए एक छोटा सा एग्जांपल मैंने समझाने की कोशिश
की हम मान लीजिए अंबानी है अपने घर के अंदर बैठे उनका प्राइवेट स्पेस है उनकी सिक्योरिटी प्राइवेटली मैनेज कर सकते हैं
अपने ऑफिस में बैठे उनका अगेन प्राइवेट स्पेस है अपनी सिक्योरिटी अपने लेवल पर मैनेज करेंगे लेकिन अंबानी को रोड से होते
हुए ऑफिस जाना और ऑफिस से आना है वापस अब रोड पे अंबानी को चाहिए सिक्योरिटी है ना अब सिक्योरिटी के लिए क्या गवर्नमेंट अलाव
करेगी अंबानी को कि यार तुम अपनी बंदूकें रख लो रिस्की है इजेंट इट तो अब यहां पर ऑपरेटिंग सिस्टम कौन है गवर्नमेंट ऑफ
इंडिया गवर्नमेंट ऑफ इंडिया की रिस्पांसिबिलिटी है सिटीजन को सिक्योरिटी दे और अगर सिटीजन इंपॉर्टेंट है जो इतना
टैक्स पे करता है जो इतनी बड़ी इंडस्ट्रीज अन कर रहा है उसको एडिशनल सिक्योरिटी दे तो यहां पर मैं बोल रहा हूं सिस्टम आ गया
कर्नल मोड के अंदर सिस्टम बोल रहा है सिक्योरिटी ये जो सिक्योरिटी है पर्सनल सिक्योरिटी नहीं है ये सीआईएसएफ का जवाना
है भारत सरकार की सिक्योरिटी है तो इसने कॉल किया सिस्टम कॉल को मेरे को सिक्योरिटी दो हमने कहा आप बंदूक मत लो हम
आपको सिक्योरिटी देते हैं एज अ गवर्नमेंट ऑफ इंडिया उसके बदले में टैक्स लेंगे आपसे ये आपको सिक्योरिटी द जब आप ऑफिस गए तो
फिर से आप टेंशन फ्री होके काम कर सकते हो एक छोटा सा एनालॉजिक करने की कोशिश की है तो आई होप और अच्छे से आपको य बात समझ आई
होगी तो चलिए अभी बात करेंगे प्रोसेस मैनेजमेंट के बारे में और सबसे पहले जानना पड़ेगा प्रोसेस क्या है प्रोसेस का जब
डिस्कशन स्टार्ट करते हैं तो एक जो बड़ा कॉमन यू नो आईडिया कई बार सेमेस्टर से पूछा जाता है प्रोग्राम क्या है प्रोसेस
क्या है कोई प्रोग्राम प्रोसेस कब बनता है तो उस सारी अंडरस्टैंडिंग को एक-एक करके जानना शुरू करते हैं सो टॉकिंग अबाउट
प्रोसेस आज इन जनरल अ प्रोसेस इज अ प्रोग्राम इन एग्जीक्यूशन कोई प्रोग्राम है रिटन प्रोग्राम हमारे पास लिखा हुआ है
और बोल ये रहे हैं कि जैसे ही वो प्रोग्राम एग्जीक्यूट होना स्टार्ट हो जाता है दैट बिकम अ प्रोसेस पर थोड़ी और
टेक्निकल है मैंने सारे पॉइंट्स मेंशन किए वी विल गो वन बाय वन सो अ प्रोग्राम इज़ नॉट अ प्रोसेस बाय डिफॉल्ट प्रोग्राम इज़
अ पैसिव एंटिटी दैट इज़ अ फाइल कंटेन ऑफ़ इंस्ट्रक्शन स्टोर्ड ऑन अ डिस्क एंड ऑफर इज़ आल्सो कॉल्ड एज़ एग्जीक्यूटेबल फाइल
एक कोड हमारे पास लिखा हुआ है डिस्क में स्टोर है फिलहाल वह प्रोग्राम है व प्रोसेस नहीं है एग्जीक्यूटेबल है यानी कि
एग्जीक्यूट होने की कैपेसिटी रखता है जब वह प्रोग्राम एग्जीक्यूट होना स्टार्ट हो जाएगा तब वो प्रोसेस बन जाएगा बट अभी वो
प्रोग्राम ही है आगे प्रोग्राम बिकम अ प्रोसेस व्हेन एन एग्जीक्यूटेबल फाइल इज लोडेड इन टू मेन मेमोरी एंड व्हेन इट हैज
पीसीबी इज क्रिएटेड्रॉअर्नेविगेटर वो एक प्रोग्राम था अब अगर ऑपरेटिंग सिस्टम वैसे ऐसा भी हो सकता है ऑपरेटिंग
सिस्टम अलाउ ना करें कि अभी हम कुछ और इंपॉर्टेंट काम कर रहे हैं या फिलहाल ये पॉसिबल नहीं है बट अगर ओस अलाउ करता है जो
कि ज्यादातर केस में करेगा तो सबसे पहले क्या करता है ऑपरेटिंग सिस्टम एक डाटा स्ट्रक्चर क्रिएट करता है जिसको बोलते हैं
पीसीबी पीसीबी स्टैंड फॉर प्रोसेस कंट्रोल ब्लॉक कुछ इस तरह का एक डाटा स्ट्रक्चर मोटे शब्दों में बोलूं तो किसी प्रोसेस से
संबंधित जो भी इंफॉर्मेशन जो भी मेटा डाटा लेखा जोखा जो भी है ना वो सब इसके अंदर स्टोर रहता है प्रोसेस अभी आगे बात करेंगे
प्रोसेस कौन से स्टेट में है एक यूनिक प्रोसेस नंबर एक यूनिक प्रोसेस आईडी उसको दी जाती है अगर कुछ काउंटर्स है रजिस्टर्स
की वैल्यू कितनी फाइल्स उसके पास है मेमोरी लिमिट सारा का सारा इंफॉर्मेशन पीसीबी में रहेगा तो पीसीबी एक पहचान है
मान लीजिए ये प्रोसेस का आधार कार्ड है जैसा आपका और मेरा आधार कार्ड है ना ऐसा प्रोसेस का भी आधार कार्ड है तो जैसे ही
प्रोसेस का पीसीबी बना मान लो प्रोसेस बन गया प्रोसेस है तो पीसीबी है प्रोसेस नहीं है तो पीसीबी नहीं है इनके बीच में रहेगा
वन टू वन मैप तो ये कहानी है पीसीबी की तो बोल रहा हूं प्रोग्राम प्रोसेस कब बन जाता है अगर ऑपरेटिंग सिस्टम ने आपके रिक्वेस्ट
एंटरटेन करी और वो क्रिएट कर दिया पसी भी मान लेते हैं प्रोसेस बन गया अ प्रोसेस ऑन द अदर हैंड इज एन एक्टिव एंटिटी प्रोसेस
को तो चीजें चाहिए प्रोग्राम की तरह ऐसे नहीं स्टोर करके सोया हुआ है तो उसको सीपीयू टाइम चाहिए मेमोरी चाहिए रजिस्टर
चाहिए सिस्टम बसेस चाहिए तो ये भी एक पॉइंट होता है उसको बोलते हैं पैसिव उसको बोलते हैं एक्टिव गोइंग विद द फ्लो आगे
देखेंगे इफ टू प्रोसेस ये बड़ा इंपोर्टेंट पॉइंट है इफ टू टू प्रोसेस मे बी एसोसिएटेड विद द सेम प्रोग्राम दे आर ल्स
स्टिल कंसीडर्ड एज सेपरेट एग्जीक्यूशन सीक्वेंस कहना ये चाह रहा हूं मान लीजिए एक सिंगल प्रोग्राम लिखा हुआ है अब ऐसा हो
सकता है ना एक ही प्रोग्राम दो बार एग्जीक्यूट करूं तो एक बार एग्जीक्यूट करूंगा फॉर एग्जांपल इट विल बिकम प्रोसेस
वन एक और बार एग्जीक्यूट करूंगा तो ऐसा नहीं है सेम प्रोसेस है दोनों अलग-अलग प्रोसेस है दोनों का एक दूसरे से कोई लेना
देना नहीं है तो प्रोग्राम एक प्रोग्राम के साथ मल्टीपल प्रोसेस हो सकती हैं बट ऐसा नहीं हो सकता कि एक प्रोसेस मल्टीपल
प्रोग्राम के साथ एसोसिएटेड हो इजन इट वेरी बेसिक अंडरस्टैंडिंग अच्छा अगर बात करें प्रोसेस की मेमोरी के हिसाब से
सिस्टम में क्या-क्या चीजें हैं तो कुछ इस तरह से प्रोसेस आपको नजर आएगी मेमोरी के अंदर जो उसका इमेज होगा जिसमें आप देख रहे
हैं हमारे पास टैक है हीप है डाटा है एंड टेक्स्ट है बहुत शॉर्ट में आईडिया यू नो डिस्कस कर रहा हूं सबसे पहले टेस्ट
टेक्स्ट सेक्शन है हमारा यहां पर क्या है जो भी कोड है है ना प्रोग्राम जिसको हम एग्जीक्यूट कर रहे हैं वो आपको कहां
मिलेगा टेक्स्ट सेक्शन में मिलेगा नेक्स्ट स्टैक व्हिच कंटेन टेंपररी डाटा फंक्शन है यू नो जो भी एक्टिवेशन रिकॉर्ड भी जिसे
आमतौर पे बोलते हैं वो तो स्टैक में मैनेज होता है और ये ऊपर से नीचे इसलिए चलता है ताकि मेमोरी को अच्छे से हैंडल किया जा
सके सारा स्पेस यूटिलाइज होने के बाद ही ये काम करें तो स्टैक ओवरफ्लो आपने सुना भी होगा क्यों होता है अगर आप रिकर्स
वगैरह में चले गए सारा स्पेस कंज्यूम हो गया तो इसी को बोलते हैं स्टैक ओवरफ्लो होना तो सारा एक्टिवेशन रिकॉर्ड यहां पर
रहेगा अ डेटा सेक्शन में जितना भी हमारा ग्लोबल डाटा ग्लोबल वेरिएबल है वो डेटा सेक्शन में रहेगा एंड लास्ट इज द हीप
जो भी मेमोरी एलोकेशन होता है डायनेमिक एलोकेशन जो हम कर सकते हैं यूजिंग हीप्स वो सब यहां पर होता है तो एक बेसिक इमेज
है प्रोसेस की ये चार पॉइंट याद रखेंगे डायग्राम बना के आएंगे मामला एकदम सेट हो जाएगा अगेन यहां पर मैंने फर्द वैसे मुझे
लगता है सफिशिएंट मैंने एक्सप्लेन किया है बट स्टिल फॉर यू प्रोग्राम और प्रोसेस में पूरा पांच-छह पॉइंट का डिफरेंस बना है
इसको एग्जाम में पेल के आ जाओगे कहानी खत्म मैं साइड हो जाता हूं यू कैन टेक अ स्क्रीनशॉट प्लीज यूज दिस है ना आईडिया
मैंने ऑलरेडी कवर किया पीसीबी की एक बार और डिटेल में बात कर देता हूं हालांकि मैं आईडी आपसे डिस्कस कर चुका हूं तो पीसीबी
क्या है पूरे प्रोसेस का जो भी मेटा डाटा है वो एक डाटा स्ट्रक्चर में स्टोर करते हैं उसको बोलते हैं पीसीबी पीसीबी स्टैंड
फॉर प्रोसेस कंट्रोल ब्लॉक ये जो डायग्राम मैं आपको यहां पर दिखा भी रहा हूं ना ये भी एक एप्रोक्सीमेशन है क्योंकि ऑपरेटिंग
सिस्टम टू ऑपरेटिंग सिस्टम चीजें डिफर कर सकती है तो कोई बोल सकता है मुझे इसमें थोड़ा और डटा चाहिए कोई बोल सकता है मुझे
कम चाहिए वो उसका क्या नाम रखे अलग-अलग बातें हैं बट आमतौर पे प्रोसेस कौन से स्टेट में है
प्रोग्राम काउंटर प्रोसेस में भी यू नो एग्जीक्यूट होते हुए कांटेक्ट स्विच हुआ अगली बार जब रन करेगा तो कौन सा
इंस्ट्रक्शन रन करेंगे वो सारी बात सीपीयू के रजिस्टर जितने भी रजिस्टर्स हैं इंस्ट्रक्शन रजिस्टर डेटा रजिस्टर जितने
भी सेपरेट रजिस्टर हो सकते हैं जिस समय कांटेक्ट स्विच हुआ उन सबकी क्या-क्या वैल्यूज थी वो सब ये सेव करके रखेगा
अपार्ट फ्रॉम दैट सीपीयू की शेड्यूलिंग इंफॉर्मेशन है मेमोरी मैनेजमेंट अकाउंटिंग इनपुट आउटपुट मैं बोल रहा हूं ना प्रोसेस
का जो इमेज है उसके अलावा उसका जितना भी इंफॉर्मेशन जितना मेटा डाटा वो सब का सब आपको उसके
पीसीबी में मिलने वाला है तो यह बात याद रखेंगे भूलेंगे नहीं गोइंग विद द फ्लो नेक्स्ट थिंग इज प्रोसेस साइकिल जैसे एक
ह्यूमन है उसकी एक लाइफ साइकिल होती है गोइंग इन डिफरेंट डिफरेंट स्टेजेस सिमिलरली जो प्रोसेस है वो भी अपनी पूरी
लाइफ में पूरे एग्जीक्यूशन में मल्टीपल स्टेट से होके गुजरता है और यह बहुत इंपॉर्टेंट टॉपिक है शायद ही ऐसा कोई पेपर
आपको मिले जिसमें एक बार प्रोसेस स्टेट्स के बारे में बात ना की गई हो तो ध्यान से समझिए देखिए जैसे ही कोई नया प्रोसेस आता
है मान लीजिए एक नया प्रोसेस पैदा हुआ उसको बोलते हैं कि अभी प्रोसेस न्यू स्टेट में है कौन स स्टेट में न्यू स्टेट में
न्यू प्रोसेस है अब यहां पर हम बोल रहे हैं प्रोसेस न्यू स्टेट से माइग्रेट करता है किसमें रेडी स्टेट में रेडी स्टेट क्या
होता है वो स्टेट जिसमें हम बोलते हैं कि अब प्रोसेस एग्जीक्यूशन के लिए रेडी उसको बोलते हैं रेडी स्टेट इस बात को समझिए
एग्जीक्यूशन के लिए रेडी होना और नहीं होने में क्या डिफरेंस है क्या ऐसा हो सकता है कि कोई प्रोसेस हमारे पास हो
प्रोसेस क्रिएट है बट अभी फिलहाल वो सीपीयू पे एग्जीक्यूट नहीं करना चाह रहा हो सकता है मान लीजिए एक अलार्म है फोन के
अंदर अलार्म हमने लगा दिया तो क्या उसको सीपीयू चाहिए नहीं जब टाइम आएगा तब उसको जाके रिंग करना है इजेंट इट तो देयर कुड
बी मल्टीपल सिनेरियो मल्टीपल थिंग्स जिसके लिए वो वेट कर रहा हो बट अभी वो एग्जीक्यूट नहीं करना चाह रहा जैसे ही कोई
एग्जीक्यूट करना चाहेगा तब वो न्यू से आ जाएगा कहां पे रेडी के अंदर एक और बात समझिए डायरेक्ट रनिंग में क्यों नहीं गया
सीपीयू पे क्यों नहीं गया भाई एक प्रोसेस नहीं है ना बहुत सारे प्रोसेस हैं तो यहां पर रेडी स्टेट में बैठ के वेट करेगा जरूरी
नहीं है ना जिस समय उसका मन करे तुरंत उसको सीपीयू मिल जाए वेट कर रहा है कुछ समय के बाद अलग-अलग सीपीयू शेड्यूलिंग
एल्गोरिथम से आगे डिस्कस करेंगे फर्स्ट कम फर्स्ट सव राउंड रॉबिन प्रायोरिटी है अलग-अलग है जैसे ही आपका नंबर आएगा आप
जाएंगे और सीपी प एग्जीक्यूट करना चालू कर देंगे तो अब आप आ गए कौन सी स्टेट में रनिंग स्टेट में अब क्या-क्या हो सकता है
अगर सब कुछ बढ़िया हो कोई प्रॉब्लम ना हो हो सकता है आप यहीं से एग्जिट कर जाए इजेंट इट कोई प्रॉब्लम नहीं यू गो टू
टर्मिनेटेड आपका पीसी भी खत्म कहानी खत्म हो सकता है बीच में आप रन करना चाह रहे हैं लेकिन रन करते-करते कोई इनपुट आउटपुट
ऑपरेशन किसी दूसरे इवेंट के लिए आपको वेट करना है अब भूलिए नहीं हम क्या पढ़ रहे हैं हम पढ़ रहे हैं मल्टी प्रोग्रामिंग और
मल्टी प्रोग्रामिंग में हमने सीखा है सीपीयू किसी के लिए वेट नहीं करेगा तो आप यहां से चले जाएंगे वेटिंग स्टेट में जो
भी इनपुट आउटपुट है जिस भी इवेंट के लिए आप वेट कर रहे हैं वह काम पूरा करेंगे और फिर दोबारा रनिंग में नहीं जाएंगे फिर
जाएंगे रेडी में क्यों क्योंकि जैसे ही आप यहां से बाहर निकले क्या सीपीयू आपके लिए सीपीयू खाली बैठा था नहीं उसने तुरंत किसी
दूसरे प्रोसेस को शेड्यूल कर लिया होगा तो मैं आपको दोबारा से भेज दूंगा रेडी में फिर जैसे नंबर आएगा फिर दोबारा आप इधर आ
जाएंगे ये हुआ एक एक बेसिक अंडरस्टैंडिंग कभी-कभी क्या हो सकता है आप रनिंग है रनिंग करना चाहते हैं और एग्जीक्यूट करना
चाहते हैं बट मे बी मान लीजिए प्रायोरिटी एल्गोरिदम है और कोई ज्यादा इंपॉर्टेंट ज्यादा प्रायोरिटी वाली प्रोसेस आ गई अब
क्या करना पड़ेगा अब आप बोलोगे मैं तो रन करना चाहता हूं मेरे को इनपुट आउटपुट नहीं करना तो आपको फोर्सफुली यहां से बाहर जाना
पड़ेगा बाद में बात करूंगा प्रिमिटिव और नॉन प्रिमिटिव दो तरह की शेड्यूलिंग होती है तो फोर्सफुली आप दोबारा जाएंगे रेडी
क्यू में बैठेंगे किसी दूसरे प्रोसेस को एग्जीक्यूट कराया जाएगा एंड देन कुछ समय के बाद अकॉर्डिंग टू द एल्गोरिथम आपको
दोबारा नंबर आ जाएगा तो ये एक बेसिक अंडरस्टैंडिंग है न्यू मै आप आते हैं रेडी मींस व्हाट व्हेन यू आर रेडी फॉर द सीपीयू
जब सीपीयू के लिए रेडी है रनिंग में चले जाएंगे यहां से या तो इनपुट आउटपुट के लिए जाएंगे या तो जबरदस्ती बाहर निकाले जाएंगे
दोनों ही काम करने के बाद आप फिर से रेडी में आएंगे देन यू गो देयर एंड देन रनिंग सेफ एवरीथिंग फाइन यू गो टू एग्जिट ये एक
बेसिक आईडिया हुआ इन द फ्लो एक प्रोग्राम्स होते हैं हमारे पास शेड्यूलर देखो मैंने ये तो आपसे बोल दिया कि पूरे
लाइफ स्पैन में प्रोसेस अलग-अलग स्टेजेस में स्विच करेंगे बताया आपको लेकिन ये डिसीजन लेगा कौन कौन स्विच कराता है तो
शेड्यूलर्स वो प्रोग्राम होते हैं जो इस बात की रिस्पांसिबिलिटी लेते हैं कि पूरे लाइफ साइकिल में अगर कोई न्यूज़ से रेडी
में आया या रेडी से रनिंग में गया कौन डिसीजन लेता है तो दीज आर कॉल्ड शेड्यूलर प्रोग्राम तो प्रोसेस माइग्रेट्स अमंग
वेरियस शेड्यूलिंग क्यूज थ्रू आउट इट्स लाइफ टाइम ऑपरेटिंग सिस्टम मस्ट सेलेक्ट फॉर शेड्यूलिंग पर्पस प्रोसेसेस फ्रॉम दीज
क्यूज एंड दिस सिलेक्शन इज़ कैरिड आउट बाय एप्रोप्रियेट हैं कितने शेड्यूलर होते हैं तीन तरह के शेड्यूलर हमारे पास हैं लॉन्ग
टर्म मिडिल टर्म एंड शॉर्ट टर्म तो पहले बात करता हूं लॉन्ग टर्म की लॉन्ग टर्म शेड्यूलर डिटरमाइंस व्हिच प्रोसेस एंटर्स
द रेडी क्यू फ्रॉम द जॉब पूल तो जो न्यू क्यूज हमारे रे पास है न्यू स्टेट था ना अब कौन आएगा एग्जीक्यूशन के लिए रेडी के
अंदर यह डिसीजन कौन लेता है तो रेडी सॉरी न्यू से रेडी में आने वाला डिसीजन कौन लेगा लॉन्ग टर्म शेड्यूलर इसे कुछ लोग
स्पुलर भी बोल देते हैं यस ऑपरेटिंग ऑपरेटिंग लेस फ्रीक्वेंसी सम गोल सच एज मैक्सिमाइजिंग थ्रू पोट अभी
आगे डिटेल में आप समझ जाओगे इसका काम है हर तरह की प्रोसेस को अंदर लेके आना और लॉन्ग रन के अंदर कितने प्रोसेस मेमोरी
में रहेंगे इस बात का ध्यान रखता है जितने प्रोसेस सिस्टम से जा रहे हैं उतने नए प्रोसेस आते रहे यह भी डिसाइड करना लॉन्ग
टर्म शेड्यूलर का ही काम है देन पहले मैं चला जाता हूं शॉर्ट टर्म का अब शॉर्ट टर्म का काम क्या है द शॉर्ट टर्म शेड्यूलर और
द सीपीयू शेड्यूलर सेलेक्ट द प्रोसेस अमंग द प्रोसेस दैट आर इन द रेडी क्यूट एजुकेट एंड एलेट सीपीयू वन ऑफ अ एंड एलोकेट द
सीपीयू टू वन ऑफ़ देम रेडी से रनिंग में कौन जाएगा जो बार-बार बार-बार होगा यह डिसीजन लेगा शॉर्ट टर्म शेड्यूल शॉर्ट
टर्म क्यों बोल रहे हैं कोई प्रोसेस लॉन्ग टर्म शेड्यूलर के हाथ से जीवन में एक बार निकलेगी बट शॉर्ट टर्म में क्या है हो
सकता है प्रोसेसर मिले कोई हाई प्रायोरिटी प्रोसेस कांटेक्ट स्विच कर दे हो सकता है है प्रोसेसर मिले आप इनपुट आउटपुट की वजह
से बाहर आ जाएं तो अपने जीवन काल में कई बार आप रेडी से रनिंग पे जाएंगे लेकिन हर बार शॉर्ट टर्म शेड्यूलर के थ्रू जाएंगे
अब इन दोनों के बीच में आ जाता है मिडिल टर्म ये चीजों को बहुत अच्छे से मैनेज करता है इसकी कहानी सुनिए मिडिल टर्म
शेड्यूलर स्वैप प्रोसेस इन और आउट फ्रॉम द मेमोरी टू ऑप्टिमाइज सीपीय यूसेज एंड मेमोरी एलोकेशन
आईडिया समझिए कभी-कभी क्या होता है कि मेन मेमोरी के अंदर बहुत ज्यादा प्रोसेस आ जाती है और उसकी वजह से भीड़ बहुत ज्यादा
होती है बार-बार इनपुट आउटपुट ऑपरेशंस करने पड़ते हैं हर कोई सफिशिएंट अमाउंट ऑफ टाइम रन नहीं कर पा रहा होता और जो भी रन
करता है वो मेन मेमोरी में होता है हम जानते हैं तो मिडिल टर्म शेड्यूलर क्या करता है कुछ प्रोसेस को सस्पेंड कर देता
है आमतौर पर किनको विक्टिम बनाया जाता है जो वेटिंग स्टेट में है कुछ प्रोसेस को सस्पेंड करता है और कुछ समय के लिए दोबारा
से सेकेंडरी में भेज देता है कि यार अभी बहुत भीड़ बहुत ज्यादा है डिग्री ऑफ मल्टी प्रोग्रामिंग ज्यादा है फिलहाल कुछ समय के
लिए सो जाओ बाद में आपको रिज्यूम करेंगे और जब उसको लगता है कि अभी चीजें मैने जबल है तो उनको वापस लोड करता है तो यू नो डे
टू डे ऑपरेशंस मैनेज करना डिग्री ऑफ मल्टी प्रोग्रामिंग यानी कि फिलहाल मेन मेमोरी में कितनी प्रोसेस है ग ज्यादा तो नहीं हो
रही यू नो कुछ समय के लिए मैनेज करना इज द वर्क ऑफ द मिडिल टर्म शेड्यूलर सो बाय डूइंग दिस इट एडजस्ट द डिग्री ऑफ मल्टी
प्रोग्रामिंग फ्री अप द मेमोरी एज नीडेड सो पिंग अलाउ द सिस्टम टू पॉज एंड रिज्यूम अ प्रोसेस इंप्रूविंग द ओवरऑल सिस्टम
एफिशिएंसी तो ये परमानेंटली नहीं कर रहा कुछ समय के लिए पॉज कर देता फिर रिज्यूम कर लेगा यानी कि बाहर भेज देगा मेन से
सेकेंडरी में चले जा और फिर दोबारा सेकेंडरी से मेन में लेके आ जाएगा तो यह काम है मिडिल टर्म शेड्यूलर का अगेन मैंने
फिर से क्या किया है एक बड़ा सा टेबल बना के इन सब में बहुत अच्छे से डिफरेंशिएबल यू कैन गो देम यू कैन रिमेंबर
देम सो दैट एग्जाम में अगर कोई क्वेश्चन पूछता है शेड्यूलर्स पे व्हिच इज इन जनरल इंपॉर्टेंट टॉपिक तो आप उसको अच्छे से
आंसर करके आ सको गोइंग फर्द एक छोटी सी बात मुझे और करनी है द आइडियाज डिस्पैच डिस्पैच क्या होता है ये भी आपने शब्द कई
बार सुना होगा देखिए आमतौर पे शेड्यूलर जो होते हैं ना वो डिसीजन लेते हैं मान लीजिए शॉर्ट टर्म शेड्यूलर ने डिसीजन लिया कि
भाई अब अगला प्रोसेस p3 है जो जाएगा सीपीयू के अंदर बट वो सिर्फ डिसीजन लेता है उसका रियलिटी में इंप्लीमेंट टेशन कौन
कराता है तो डिस्पैच वो प्रोग्राम है जो रियलिटी में काम कराने वाले कैसे कराते हैं गौर करिए डिस्पैच इज अ मॉड्यूल दैट
गिव कंट्रोल ऑफ द सीपीयू टू द प्रोसेस सिलेक्टेड बाय द शॉर्ट टर्म शेड्यूलर उसको रियलिटी में कंट्रोल कौन दिलाता है
डिस्पैच दिलाता है कैसे दिलाता है गौर करिए सो स्विचिंग कांटेक्ट स्विचिंग फ्रॉम यूजर मोड जंपिंग टू प्रॉपर लोकेशन बेसिकली
ऐसे समझो आसान भाषा में जो प्रोसेस रन हो रही है उसका सारा डाटा फिलहाल उसके पीसीबी में सेव करना उसको बाहर निकालना नए
प्रोसेस को लोड करना जिसको शॉर्ट टर्म शेड्यूलर ने सेलेक्ट किया है उसके पीसीबी का डाटा सिस्टम के रजिस्टर्स में फिल करना
उस पॉइंट प लेके जाना और एग्जीक्यूशन चालू कराना यह सारा काम डिस्पैच का है जब यह काम हो रहा होता है उस समय क्या सीपीय
एग्जीक्यूशन कर सकता है नहीं अभी एक आदमी बाहर जाएगा और दूसरा अंदर आएगा उन बिटवीन तो कुछ काम होगा नहीं डिस्पैच ये पूरा काम
करने में जो समय लेता है उसको बोलते हैं डिस्पैच लेटेंसी या डिस्पैच ओवरहेड है ना किसी भी सिस्टम में डिस्पैच का टाइम जीरो
तो नहीं हो सकता बट ये प्योर वेस्टेज है क्योंकि यहां पे हम कुछ काम नहीं कर पा रहे होते तो अच्छा हार्डवेयर अच्छा
सॉफ्टवेयर हमारे पास होना चाहिए कोशिश करें विद इंटेंशन कि डिस्पैच लेटेंसी को कितना कम से कम किया जाए कम से कम किया जा
सके जीरो नहीं हो सकता बट नाउ व्हाट इज डिस्पेचर लेटेंसी एंड व्हाट इज डिस्पैच यू नो नाउ एक और छोटा सा पॉइंट सीपीयू बाउंड
इनपुट आउटपुट बाउंड आमतौर पे कोई भी प्रोसेस है कोई प्रोसेस ऐसी नहीं जो सिर्फ सीपीयू पे काम करे जो सिर्फ आईओ पे काम
करें मानते हो थोड़ा समय सीपीयू भी करना होता है थोड़ा समय इनपुट आउटपुट करना होता है बट प्रोसेस का एक टाइप होता है कि मान
लीजिए एक प्रोसेस है जो ज्यादातर समय सीपीयू में बिताए गी प्रोसेसिंग उसका ज्यादा करना है इनपुट आउटपुट प थोड़ा समय
जाएगा कुछ प्रोसेस उल्टे हो सकते हैं जो बोले हमें ज्यादातर इनपुट आउटपुट ऑपरेशन करना है कोई यूजर इंटरेक्शन है कोई चैट
बॉट है समथिंग लाइक दिस और सीपीयू थोड़ा सा काम करना है तो जो प्रोसेस अपने जीवन का ज्यादातर समय सीपीयू में काम करके
बिताती है थोड़ा बहुत इनपुट आउटपुट के साथ सा उनको बोलते हैं सीपीयू बाउंड प्रोसेस क्या बोलते हैं सीपीयू बाउंड और जो
प्रोसेस ज्यादातर समय इनपुट आउटपुट ऑपरेशंस करेंगे सीपीयू में थोड़ा कम काम करती है उनको बोलते हैं इनपुट आउटपुट
बाउंड प्रोसेस इनपुट आउटपुट बाउंड लॉन्ग टर्म शेड्यूलर का इन जनरल काम क्या होना चाहिए किसी भी समय सिस्टम के अंदर दोनों
का मिक्स होना चाहिए सोचो अगर सारे सीपीयू बाउंड होंगे तो इनपुट आउटपुट डिवाइसेज और हर कोई सीपीयू प वेट कर रहा होगा अगर सारे
आईओ बाउंड होंगे तो सीपीयू बेचारा खाली बैठा रहेगा एवरी बडी इज वेटिंग फॉर द इनपुट आउटपुट डिवाइस कि यार मेरे को
एलोकेट हो जाए अगर दोनों प्रोसेस होंगे तो काम बढ़िया चलेगा सिस्टम के रिसोर्सेस अच्छे से यूज होंगे कुछ प्रोसेस सीपीयू पे
काम करते रहेंगे और कुछ प्रोसेस इनपुट आउटपुट पे तो ये दोनों प्रोसेस के टाइप्स और इनका मिक्सचर इंपॉर्टेंट है व्हाट इज
कांटेक्ट स्विच अगेन आई हैव ऑलरेडी एक्सप्लेंड एक प्रोसेस जब डिसीजन हो जाएगा उस प्रोसेस के डाटा को मान लीजिए यहां पर
प्रोसेस पी नोट देखिए एग्जीक्यूट कर रहा था उसके डाटा को प प्रोसेस पीन के पीसीबी में सेव करना और उसके बाद प्रोसेस p1 जो
अभी तक आइडल था उसके डाटा को यू नो सिस्टम में लोड करना पीसीबी प्रोसेस वन के पीसीबी से सिस्टम में लोड करना यह जो पूरा काम है
इसको बोलते हैं कांटेक्ट स्विच करना तो एक प्रोसेस को बाहर निकालना और दूसरे प्रोसेस का डाटा लोड करना कांटेक्ट स्विच कहलाता
है तो आई थिंक जितने बेसिक बेसिक टर्म्स थे वो हमने सारे यहां पर डिस्कस कर लिए कुछ बहुत इंपॉर्टेंट डिस्कशंस भी किए जैसे
शेड्यूलर है या प्रोसेस का लाइफ साइकिल है उसके स्टेट्स हैं एंड देन अब हम वी आर वेरी मच रेडी टू गो फॉर सीपीयू शेड्यूलिंग
तो अभी बात करेंगे सीपीयू शेड्यूलिंग के बारे में जैसा सभी को पता नहीं पता है तो मैं बता देता हूं सीपीयू शेड्यूलिंग इज वन
ऑफ द मोस्ट मोस्ट मोस्ट इंपॉर्टेंट टॉपिक इससे तो क्वेश्चन आना ही आना है तो अभी आने वाला जो लगभग आधा घंटा बहुत ध्यान से
देखिएगा न्यूमेरिकल्स भी पूरा कवर करके चलेंगे प्रॉब्लम क्या है सो सीपीयू शेड्यूलिंग इज द प्रोसेस ऑफ डिटरमाइंस इन
द रेडी क्यू इज एलोकेटेड टू द सीपीयू भाई बहुत सारे प्रोसेस है रेडी क्यू के अंदर पूरा स्टेट डायग्राम पढ़ा तो अगला नंबर
किसका आने वाला है यह कौन डिसाइड करेगा उसके लिए एक एल्गोरिथम है व्हिच इज लाइक सीपीय शेड्यूलिंग एल्गोरिथम्स जो डिसाइड
करते है कि अगला प्रोसेस कौन सा जाएगा कौन-कौन सा एल्गोरिदम है तो अगर कुछ पॉपुलर की बात करूं एग्जाम पॉइंट ऑफ व्यू
से वेरी वेरी इंपोर्टेंट फर्स्ट कम फर्स्ट सर्व आपने नाम शायद सुना भी हो शॉर्टेज जॉब फर्स्ट या शॉर्टेज जॉब नेक्स्ट
प्रायोरिटी एंड राउंड ड्रबिंग ये चार मेन स्ट्रीम है एक दो आईडिया और है उसकी भी आगे डिटेल में बात
करूंगा कौन सा एल्गोरिथम अच्छा कौन सा खराब है कैसे डिसाइड ड करेंगे तो एक्चुअली अलग-अलग एल्गोरिथम ना अलग-अलग काइंड ऑफ
प्रोसेस को फेवर करते हैं हर किसी के कुछ एडवांटेज है कुछ डिसएडवांटेज है तो जब ये पूरी प्रोसेस हम समझ लेंगे तो एक यू नो एक
अंडरस्टैंडिंग हमारी डेवलप होगी किस तरह के सिनेरियो में शायद ये एल्गोरिथम अच्छा हो इस तरह की प्रोसेस के लिए शायद ये
एल्गोरिदम अच्छा हो लाइक डेटा स्ट्रक्चर्स मैं आपसे पूछूं बताओ एरे और लिंकलिस्ट में कौन सा अच्छा है तो आप नहीं बोल पाओगे ना
कहीं पे एरे शाद सूटेबल होगा कहीं पे लिंकलिस्ट सूटेबल होगा इसीलिए ऐसा पहले से मन में मान के नहीं चलना ये अच्छा और ये
खराब है हर किसी को सेम लेवल ऑफ अंडरस्टैंडिंग से समझेंगे नाउ अ शेड्यूलिंग के दो इंपॉर्टेंट
अप्रोचेबल था उसमें डिटेल में बात नहीं की थी अभी करता हूं एक अप्रोच दोस्तों होता है नॉन प्रिमिटिव शेड्यूलिंग एक होता है
प्रिमिटिव नॉन प्रिमिटिव मतलब जब कोई आपके साथ जबरदस्ती ना करें सारे पॉइंट्स मैंने मेंशन किए हुए हैं आईडिया देखिए यही
प्रोसेस का लाइफ साइकिल था तो रनिंग से अगर आप सीपीयू अपने मन से वॉलेटर छोड़ के बाहर जाते हैं तो इसको बोलते हैं नॉन
प्रीमप्टिव अप्रोच आप क्या करेंगे दो अप्रोच हो सकते हैं नंबर वन नंबर टू से मैंने मार्क किया है या तो आपका
एग्जीक्यूशन ही खत्म हो जाएगा एंड देन यू विल टर्मिनेटेड है ना बाहर चले गए अपने मन से एग्जीक्यूशन कंप्लीट हो गया प्रोसेस
एंड हो गया या तो ये हो सकता है या फिर जैसे मैंने बोला था कोई आपको इनपुट आउटपुट ऑपरेशन परफॉर्म करना है किसी दूसरे इवेंट
के लिए वेट करना फिलहाल आप खुद अपने मन से एग्जीक्यूशन नहीं करना चाहते तो आप कौन से स्टेट में चले जाते हैं वेटिंग स्टेट या
ब्लॉक्ड स्टेट लेकिन इन दोनों ही मन में याद रखिए दोनों ही केसेस में क्या किसी ने आपके साथ जबरदस्ती की क्या नहीं आप वॉलेटर
अपने मन से बाहर आए अगर इस तरह की शेड्यूलिंग हो कि हम किसी प्रोसेस को कभी बाहर नहीं निकालते वो खुद ही बाहर आएगी
सीपी से इसको बोलते हैं नॉन प्रीमप्टिव अप्रोच दूसरा अप्रोच हो सकता है क्या प्रीमप्टिव अप्रोच एंड व्हाट इज दिस ये
वाले दोनों आईडिया तो है ही है जो बाहर आ रहे हैं रनिंग से मैं आपको रेडी में लेके जा रहा हूं दो अप्रोच समझाता हूं मान
लीजिए अप्रोच नंबर थ्री है हमारा क्या प्रायोरिटी वाला हम एग्जीक्यूशन कर रहे थे बट ड्यूरिंग द एग्जीक्यूशन एक नया प्रोसेस
सिस्टम में करता है जिसकी प्रायोरिटी हमारे प्रायोरिटी से ज्यादा है यस तो क्या करना पड़ेगा रनिंग प्रोसेस को बीच में
रोकना पड़ेगा कि भाई आप बाद में काम करना आप रेडी में आ जाओ किसी नए प्रोसेस को लोड करेंगे जिसका प्रायोरिटी ज्यादा है या
राउंड रॉबिन आगे समझेंगे जहां पर हर प्रोसेस को एक टाइम क्वांटम दिया जाता है फिक्स टाइम क्वांटम एक बार में मैक्सिमम
इतना ही एलोकेट कर सकते हो फॉर एग्जांपल दो यूनिट्स ऑफ टाइम और ज्यादा करना है मना नहीं कर रहे अभी बाहर आ जाओ कुछ लोगों को
और काम करने दो थोड़ी देर के बाद फिर से तुम्हें अंदर प्रोसेसर एलोकेट करेंगे है ना तो ये दोनों ही अप्रोच जो हैं जहां पे
हम फोर्सफुली बाहर निकालते हैं या तो राउंड रॉबिन की वजह से टाइम क्वांटम की वजह से या फिर प्रायोरिटी की वजह से ये
कहलाता है नॉन प्रिमिटिव सॉरी ये कहलाता प्रिमिटिव अप्रोच है ना जिसमें जबरदस्ती नॉन जबरदस्ती ये दो अंडरस्टैंडिंग है
मैंने फिर भी प्रिमिटिव नॉन प्रिमिटिव जैसा मैं कर रहा हूं इस वीडियो के अंदर पूरा डिफरेंस किया है यू कैन गो थ्रू दीज
पॉइंट्स चाहो तो याद करो एग्जाम में कोई पूछे तो और अच्छे से डिटेल्स आंसर करने के लिए मैं आगे बढ़ता हूं तो अगेन अ ये जैसे
मैंने आपसे बताया कि हर एल्गोरिदम का अप्रोच अलग है और कुछ क्राइटेरियास हो सकते हैं जिस बेस पे हम जज करें जैसे मान
लीजिए एल्गोरिथम है एक जो सबसे इंपॉर्टेंट क्राइटेरिया होगा वो होगा टाइम एग्जीक्यूशन टाइम जो कम से कम टाइम लेगा
वो उतना अच्छा एल्गोरिथम उसी तरह यहां पर सीपीयू शेड्यूलिंग में भी कुछ इंपॉर्टेंट क्राइटेरियास हैं जिसको हम जज करते हैं
जिसके बेस पे देखते हैं कि वो एल्गोरिथम अच्छा काम किया कि बेकार काम किया उन क्राइटेरियास को समझना बहुत जरूरी है एक
बड़ा इंपॉर्टेंट कॉमन सेंस क्राइटेरिया है लाइक सीपीय यूटिलाइजेशन इसका मतलब क्या है यह देखता है कि जो भी एल्गोरिथम आप यूज कर
रहे हो हमारा सीपीयू कितने परसेंटेज ऑफ द टाइम बिजी है और ओबवियस अप्रोच है कि वो एल्गोरिथम जो सीपीयू को ज्यादा से ज्यादा
समय के लिए बिजी रखेगा हम मानेंगे कि वो अच्छा एल्गोरिथम है वो बेटर काम कर रहा है जो बिजी नहीं रखेगा वो खराब काम कर रहा है
बट ये एक अप्रोच आप देख सकते हैं जो लोग लाइन में खड़े हुए उन्हें लग रहा है कि मैडम शायद बहुत बिजी है इसीलिए बैंक अभी
काम नहीं कर पा रहा बट यहां पे कार्ड्स खेले जा रहे हैं कुछ अलग कारण भी हो सकते हैं मे बी बोलते हैं ना इंटरनेट डाउन और
समथिंग लाइक दिस बट कभी-कभी क्या है ना पॉइंट ये है कि सीपीयू आप बिजी करके रखा है बट कुछ रियलिटी में काम नहीं हो रहा
कोई थ्रू पुट नहीं आ रहा तो दूसरा एक इंपॉर्टेंट पॉइंट हो सकता है अगेन थ्रू पुट व्हाट इज थ्रू पुट यू नो नंबर ऑफ
प्रोसेस एग्जीक्यूटेड पर यूनिट टाइम केस टू केस डिफर कर सकता है अब इमेजिन य शायद कोई कार मैन्युफैक्चरिंग कंपनी है तो इनका
थ्रू पट क्या होगा ये मत बताओ किसने कितना काम किया सर बहुत बिजी थे सर यह किया यह बताओ पू पूरे दिन में फैक्ट्री में से
कितनी गाड़ियां बाहर आई ठीक उसी तरह यहां पे हम बोल सकते हैं कि आपने सीबीयू को बिजी रखा दैट इज अनदर थिंग वर्क क्या डन
हुआ कितने नंबर ऑफ प्रोसेस पर यूनिट टाइम एग्जीक्यूट कर रहे हैं और जो एल्गोरिथम ज्यादा अच्छा थ्रू पुट देगा हम मानेंगे वो
बेटर सीपीयू शेड्यूलिंग एल्गोरिदम है तो दिस कुड आल्सो बी एन आईडिया एक हो सकता है वेटिंग टाइम हम एवरेज वेटिंग टाइम
कैलकुलेट करेंगे और इन जनरल अगर एल्गोरिदम अच्छा है तो प्रोसेस को ज्यादा वेट करना पड़ेगा कि कम वेट करना पड़ेगा प्रोसेस को
कम वेट करना पड़ेगा तो ये तो कोई बहुत लंबी प्रोसेस लग रहा है नजर आ रही है तो वो एल्गोरिथम जिसका एवरेज वेटिंग टाइम कम
होगा वो बेटर कहलाएगा आगे बढ़ी एक अप्रोच हमारे पास क्या हो सकता है रिस्पांस टाइम ये वेटिंग टाइम से थोड़ा सा लग आईडिया है
जैसे मैं इस एग्जांपल से समझाना चाहता हूं आमतौर पे आपने कई बार गोलगप्पे खाए होंगे तो एक बार जब आपको गोलगप्पा मिला पहली बार
तो ऐसा नहीं कि एक साथ सारे मिल जाते हैं अ शायद आप चाहते भी नहीं हो तो आप उसे एंजॉय करोगे देन यू नो इन अ राउंड रॉबन
फैशन साइकिल घूमेगी फिर आपके पास आएगी तो हो सकता है मे बी फर्स्ट गोल गप्पे के लिए आपको मान लीजिए चार खाने हैं मैं सिंपल
केस मान के चल रहा हूं तो पहले के लिए हो सकता है आपको 30 सेकंड वेट करना पड़े और फिर हर किसी के लिए 30 30 30 वेट करना
पड़े अब यहां पर टोटल वेट कितना हुआ तो टोटल वेटिंग टाइम तो हो गया आपका 2 मिनट्स इजन इट 60 सेकंड 60 सेकंड 120 ू मिनट्स हो
गया 120 सेकंड्स और टू मिनट्स लेकिन अगर हम रिस्पांस टाइम देखेंगे दैट इज 30 सेकंड तो व्हाट इज रिस्पांस टाइम पहली बार जब
आपको रिस्पांस मिल जाए उसको बोलते हैं रिस्पांस टाइम राउंड रॉबिन आमतौर पे रिस्पांस टाइम में बहुत अच्छा परफॉर्म
करता है तो रिस्पांस टाइम भी एक इंपॉर्टेंट क्राइटेरिया है इट इज द टाइम टेकन टू स्टार्ट रेस्पॉन्डिंग टू द टाइम
इट टेक द आउ टू आउटपुट द रिस्पांस पहली बार जब मैं आपको रिस्पांस करने में जितना समय लूंगा जब आप रिस्पांस मांगेंगे उसको
बोलेंगे रिस्पांस टाइम तो ये कुछ अलग-अलग क्राइटेरियास है और जैसे मैं आपसे बोल रहा हूं कि अलग-अलग क्राइटेरियास अलग-अलग
एल्गोरिथम बिहेव करेंगे वो क्या रिस्पांस होगा हम देखेंगे एक बात और यहां पर समझ लेते हैं
इस पॉइंट पर बाद में आता हूं पहले जरा कुछ इंपॉर्टेंट टर्मिनोलॉजी आपसे डिस्कस कर लूं वैसे तो न्यूमेरिकल्स में विविल गो ईच
ऑफ देम वन बाय वन पहला टर्म होता है अराइवल टाइम कई बार आपने सुना होगा नहीं सुना अभी समझिए अराइवल टाइम जब कोई
प्रोसेस सिस्टम में आता है टू बी प्रोसाइज रेडी क्यू में आता है और बोलता है मैं एग्जीक्यूशन के लिए रेडी हूं उसको बोलते
हैं अराइवल टाइम द टाइम एट विच अ प्रोसेस एंटर्स अ रिडी क्यू उससे पहले प्रोसेस मेरे किसी काम का नहीं है मैं उसको
शेड्यूल तो कर नहीं सकता सीपीयू प शेड्यूल कब कर सकता हूं जब वो रेडी क्यू में होगा तो दैट इज मेंशन बाय अराइवल टाइम बस टाइम
उसको सीपीयू पे कितना टाइम चाहिए देखिए टॉपिक का नाम ही सीपीयू शेड्यूलिंग है इनपुट आउटपुट डिवाइसेज यहां पे हमारे लिए
कोई खास इंपॉर्टेंस फिलहाल नहीं रखते तो सीपीयू एग्जीक्यूशन के लिए कितना टाइम चाहिए उसको बोलेंगे बस टाइम ये मैं डिसाइड
नहीं करूंगा तो प्रोसेस पहले से डिसाइड करके आएगा और मैं इसको चेंज कर भी नहीं सकता मैं यह तो कर सकता हूं अब फॉर
एग्जांपल मैं एक रेस्टोरेंट चला रहा हूं अगर किसी आदमी को चार रोटी खानी है भाई चार ही खाएगा ना मेरे हाथ में बस यह है
मैं इसको पहले खिलाऊ इसको बाद में खिलाऊ पहले दो इसको खिलाऊ दो किसी और को खिलाऊ यह मैनेज मैं कर सकता हूं तो बस टाइम इसको
कितना टाइम चाहिए कंप्लीशन टाइम कोई प्रोसेस किस समय सिस्टम से बाहर जाता है तो मान लीजिए अगर अराइवल हुआ 12 ब 10 पे
और लेट मी से बाहर गया वो 12:30 पे सो दिस इज अराइवल टाइम दिस इज कंप्लीशन टाइम टर्न अराउंड टाइम कंप्लीशन टाइम माइनस अराइवल
टाइम कोई प्रोसेस कितने समय के लिए सिस्टम में था तो यह भाई साहब 12:00 ब 30 मिनट पे बाहर गए और आए थे 1210 पे तो मान लीजिए
ओवरऑल 20 मिनट्स के लिए सिस्टम में था दैट इज नोन एज टर्न अराउंड टाइम टोटल कितने समय के लिए आप सिस्टम में थे नेक्स्ट इज
वेटिंग टाइम इस पूरे समय में आपने कितने समय वेट किया तो जब कोई प्रोसेस यहां पर है और हम मान रहे हैं इनपुट आउटपुट कंसीडर
नहीं करना आप सिस्टम में सर आप दो ही काम करोगे या तो आप एग्जीक्यूट करोगे यानी कि या तो आप रेडी क्यू में रनिंग स्टेट में
होंगे या तो आप एग्जीक्यूशन के लिए वेट कर रहे हैं यानी कि आप रेडी क्यू में है तो टर्न अराउंड ये जो वेटिंग टाइम है इसको आप
ऐसे समझ सकते हैं इट इज द टर्न अराउंड टाइम माइनस बस टाइम वेटिंग टाइम अगर निकालना है तो आप टोटल कितने समय सिस्टम
में थे जैसे मान लीजिए प्रोसेस कहता है कि मेरा बस टाइम तो सिर्फ 5 मिनट का था तो हम देख रहे हैं ये 20 मिनट के लिए सिस्टम में
था 1210 से 12:30 तक ये सिस्टम में था रन इसने किया सिर्फ 5 मिनट तो बाकी समय क्या किया वेट किया तो टर्न अराउंड टाइम था 20
मिनट्स अब ये खुद से बोल रहा है कि रन इसने सिर्फ 5 मिनट किया तो इसका मतलब 15 मिनट के लिए सिस्टम में वेटिंग टाइम था
इसका वेटिंग मतलब यह रेडी क्यू में था प्रोसेसर के लिए वेट कर रहा था बाकी तो न्यूमेरिकल्स में और आपको मजा आएगा बट यह
बेसिक टर्मिनोलॉजी मेरे हिसाब से क्लियर होना चाहिए था यस नाउ वी एंटर इन टू द फर्स्ट एल्गोरिथम व्हिच इज
एफसीएफएस नाम से भी इसका काम समझ आता है फर्स्ट कम फर्स्ट सर पहले आओ पहले पाओ तो सबसे सिंपल सबसे कॉमन अप्रोच हो सकता है
जिसमें कोई दिमाग लगाने की जरूरत नहीं है आईडिया क्या है जब भी कोई प्रोसेस सिस्टम में एंटर करेगा तो सब से पहले सीपीयू
किसको एग्जीक्यूट होने वाला है सबसे पहले उसको एग्जीक्यूट होगा जो पहले आया था बात खत्म यहां कोई प्रायोरिटी नहीं चलेगी दिस
इज ऑफ नॉन प्रीमप्टिव नेचर एक बार अगर सीपीयू मिला तो मिला जब तक एग्जीक्यूशन कंप्लीट नहीं होगा तब तक उसको बाहर नहीं
निकालेंगे ओबवियसली क्यू इज अ वेरी सिंपल अप्रोच जिसके थ्रू आप इसे इंप्लीमेंट कर सकते हैं एक छोटा सा केस आपको करके दिखाता
हूं तो देखिए पूरा टेबल यहां पर हमारे पास है कितने प्रोसेस हैं p न से p4 तक फाइव प्रोसेस है जरा गौर करिए अराइवल टाइम पर
मुझे बताइए सबसे ऐसा मत करिएगा p न कोही रन करना चालू कर दिया ना बताओ सबसे पहले कौन आया सर सबसे पहले p2 आया तो टाइम जीरो
पर प2 ने लगाई एंट्री कितना समय चाहिए थ्री यूनिट्स तो मैं बोल रहा हूं इसको फर्क नहीं पड़ता एक बार एलोकेट किया तो
किया इट इज ऑफ नॉन प्रीमप्टिव नेचर तो अब तीन यूनिट तक p2 चला अब जब p2 बाहर आया सीपीयू खाली है फिर देखेंगे अभी अगला
सीनियर कौन है अगला सीनियर है p1 जो कि वन पे आया था दो यूनिट इसको चाहिए तो थ्री से फाइव तक गौर करिए कौन चलेगा p1 चलेगा फिर
आगे बढ़ी अगला नंबर अगला नंबर यह p0 आया था चार यूनिट का रिक्वायरमेंट है तो p0 कहां से कहां चलेगा 5 + 4 हो जाएगा 9 यह
चले p0 भाई साहब फिर बताइए अच्छा p4 पहला आ है थ्री पर आई वलब सिंगल यूनिट का रिक्वायरमेंट है 9 + 1 हो गया 10 p4 और
सबसे लास्ट में आया था सबसे लास्ट में इसे प्रोसेसर मिलेगा क्या नाम है इसका p3 तो p3 को यहां पर प्रोसेसर मिल जाता है कितने
यूनिट के लिए दो यूनिट के लिए चाहिए था दो के लिए मिलता है तो यह कहानी हो गई यस अब इसको बोलते हैं गैन चार्ट ये एग्जाम में
बनाना बहुत जरूरी है न्यूमेरिकल जब आप सॉल्व करेंगे जैसे ही चार्ट बना कंप्लीशन टाइम समझ आ गया पन बाहर गए नान पर
p1 बाहर गया है 5 पर p2 बाहर गया थ पर p3 बाहर गया 12 पर यू नो सबसे लास्ट में एंड p4 बाहर गया 10 पर अब जो हमने पहले
अंडरस्टैंडिंग ले रखी है जैसे ही आपको पता लगा कंप्लीशन टाइम कि कौन कितने समय बाहर गया अराइवल टाइम आपको पहले से पता है कौन
कब आया था तो इससे आप क्या निकाल सकते हैं टर्न अराउंड टाइम माइनस करिए ये टू पे आया था वन पे आया था जीरो पे आया था फोर पे
आया था थ्री पे आया था तो इसका टर्न अराउन टाइम हुआ सेवन इसका हुआ फोर इसका हुआ थ्री इसका हुआ एट इसका हुआ सेवन अगेन जब टोटल
सिस्टम में कितना टाइम बिताया यह पता आपको लग गया तब आप क्या कर सकते हैं माइनस करिए इनका एग्जीक्यूशन टाइम पता लगेगा किसने
कितना वेट किया तो एग्जीक्यूशन टाइम कितना था इसका फोर था इसका टू था इसका थ्री था इसका टू था इसका वन था सो दैट विल बी थ्री
दैट विल बी टू दैट विल बी जीरो दैट विल बी सिक्स दैट इज आल्सो सिक्स इसमें कोई छोटा-मोटा कैलकुलेशन मिस्टेक हुआ हो रन
टाइम पर रिकॉर्ड कर रहा तो माफ करिएगा पहले से ऐसे सॉल्व करके नहीं रखा ताकि थोड़ा फील आए आपको एग्जांपल चेक करते हैं
यह प्रोसेस सिक्स यूनिट वेट कर रहा है कौन है ये p4 चेक करना आया था चार पे और प्रोसे p3 माफ कीजिएगा आया था चार पे देखो
प्रोसेसर मिला 10 पे चार और 10 का डिफरेंस हां छ यूनिटी वेट किया कभी-कभी आपसे बोल सकते हैं एवरेज बताओ एवरेज बता दो तो
एवरेज टर्नर ऑन टाइम क्या करेंगे 7 + 4 लाइक दिस अप टिल अप टिल सेवन टोटल कितने प्रोसेस है 1 2 3 4 5 डिवाइड कर दो
सिमिलरली एवरेज वेटिंग टाइम सबका टाइम प्लस करो डिवाइड बाय फाइव कर दो क्योंकि फाइव प्रोसेस है तो दैट इज हाउ यू कैन
सॉल्व अ न्यूमेरिकल जो पूछा जाता है एडवांटेज की बात करें बहुत सिंपल है इजी टू इंप्लीमेंट है आसान है समझना समझाना सब
और जो खासकर वो प्रोसेस है ना जो बड़े अर्जेंट नेचर के नहीं है क्योंकि ये तो तसल्ली से भाई साहब जो पहले आएगा उसके काम
करेंगे मुझे प्रायोरिटी समझ नहीं आ रही मुझे राउंड ड्रॉबिन मुझे रिस्पांस नहीं समझ आ रहा मैं तो बेसिक तरह से काम करता
हूं तो वहां पर ये सूटेबल काम करता है यस क्या एफसीएफएस के अंदर कुछ प्रॉब्लम है जो हमें एक हिंट देगा हमें आईडिया देगा अगले
एल्गोरिथम की तरफ जाने का जो है शॉर्टेज जॉब फर्स्ट तो एक छोटा सा प्रॉब्लम आपसे डिस्कस करता हूं फिर एक बार पूरा पैटर्न
ऑब्जर्व करेंगे यहां देखिए दो टेबल मेरे पास है p न और p1 दो प्रोसेस है और अगर जल्दी से मैं आपसे रिक्वेस्ट करूं कि यार
चलो इनका अपन चार्ट बनाते हैं तो एक बार ऑब्जर्व करते हैं देखिए क्या होगा तो एट टाइम जीरो मेरे पास एक ही प्रोसेस है बट
बहुत बड़ा प्रोसेस है 100 यूनिट्स का रिक्वायरमेंट है तो p नॉ अन डाउटेड शेड्यूल होगा 100 तक प्रोसेस p1 व पे आ
गया था बट प्रोसेसर मिलेगा 100 पे क्योंकि कांटेक्ट स्विच हो नहीं सकता रिक्वायरमेंट है मात्र दो यूनिट का तो 100 से 102 तक ये
कौन चलेगा p1 चलेगा बट अगेन मैं देखूं एवरेज वेटिंग अगर मेरे को देखना हो p न ने तो कोई वेट नहीं किया जीरो पे आया जीरो पे
प्रोसेसर मिला बट p11 पे आया था 100 प प्रोसेसर मिला 99 वेट कि अगर मैं एवरेज भी करता हूं तो मेरा एवरेज वेटिंग टाइम आता
है 49.5 जो कि बहुत ज्यादा है अब अगर आप इधर देखिए यहां पर बस एक ही चेंज किया है कि जो बड़ा प्रोसेस है उसको बाद में रख
दिया छोटे को पहले रख दिया तो 0 पर p1 आया और आते ही उसको प्रोसेसर मिला 0 सेट तक p1 चलेगा और वन पे आया था पन अब वो 100
यूनिट्स के लिए पन को शेड्यूल कर देता है चलेगा 102 तक तो हालांकि देखिए पन पे कुछ खास फर्क नहीं पड़ा क्योंकि p1 का वेटिंग
टाइम मैं मानता हूं जीरो ही रहेगा लेकिन p1 वन पे आया था टू पे प्रोसेसर मिला उसको सिर्फ वन यूनिट वेट करना पड़ा एवरेज
देखेंगे फ तो यहां पर एक बड़ा इंपॉर्टेंट मोटिवेशन हमें मिलता है वो क्या एफसीएफएस में क्या हो रहा है कभी-कभी ना बड़े
प्रोसेस के चक्कर में छोटे प्रोसेस फस जाएंगे अगर कोई बड़ा प्रोसेस पहले आ गया तो छोटे प्रोसेस का वेटिंग टाइम बहुत
ज्यादा बढ़ जाता है लेकिन अगर हम छोटे प्रोसेस को पहले रन करें तो बड़े प्रोसेस के वेटिंग टाइम पे इतना कुछ खास फर्क नहीं
पड़ रहा है इस प्रॉब्लम को हम बोलते हैं कन्वोय इफेक्ट देखिए एक बड़ी इंपोर्टेंट बात है यहां पर हम स्टार्वेशन शब्द यूज
नहीं करते हम ये नहीं कहते कि जो प्रोसेस बाद में फंस गया वो स्टार्वेशन में है क्योंकि पहले आओ पहले पाव वाली बात थी तो
प्रोसेसर तो बायस नहीं है अगर आपको पहले नंबर आना था आपको पहले आना चाहिए था लेकिन ये एक प्रॉब्लम जरूर है जिसको बोलते हैं
कन्वोय कन्वोय मतलब काफिला तो यहां पे आप देख रहे हैं बहुत सारे कोई कोई मिनिस्टर है जिसका कन्वोय जा रहा है तो बहुत सारे
लोग साइड हालांकि ये तो मेरे को लग रहा है मजे लेने आया है बट अगर आपको रो क्रॉस करनी हो जैसे यहां देखिए एक ट्रेन है बड़ी
प्रोसेस है इन भाई साहब को रोड क्रॉस करने में हो सकता है 10 सेकंड लगे ट्रेन को हो सकता है क्रॉस करने में दो मिनट लगे लेकिन
अब क्योंकि फस्ट कम फस पहले ट्रेन आ गई है अब सबको वेट करना पड़ेगा तो व्हाट इज अ कन्वो इफेक्ट जब बड़ी प्रोसेस की वजह से
छोटे प्रोसेस को बहुत ज्यादा समय के लिए वेट करना हो इस प्रॉब्लम को हम बोलते हैं कन्वोय इफेक्ट और यह प्रॉब्लम जो कि
एफसीएफएस में है हमें मोटिवेशन देती है हमें हंट देती है इसका मतलब क्या करना चाहिए करना यह चाहिए कि छोटे प्रोसेस को
पहले पले एग्जीक्यूट करो और छोटे प्रोसेस को पहले एग्जीक्यूट करने का आईडिया ही है शॉर्टेस्ट जॉब फास्ट यस और कोई
डिसएडवांटेज अ अगेन दिस इज द बेसिक आइडिया आई थिंक एफसीएफएस हमने कंप्लीट कर लिया नाउ टॉकिंग इन द आइडिया ऑफ शॉर्टेज ऑफ
फर्स ये कैसे काम करेगा मैं एक एक करके पैटर्न बाय पैटर्न चलता हूं फिर जो डाउट जो कंफ्यूजन होगा आप मुझे बताइएगा इसके
अगेन दोनों वेरिएंट्स हमारे पास है हमारे पास प्रिमिटिव वेरिएंट भी है और नॉन प्रिमिटिव वेरिएंट भी है तो कैसे इस पे
काम कर सकते हो और क्या आईडिया होगा क्या एजेंडा होगा यह समझ आएगा एक पूरा क्वेश्चन सॉल्व करके तो यहां पर एक न्यूमेरिकल
हमारे पास है शॉर्टेस्ट जॉब फर्स्ट के दोनों वेरिएंट हमारे पास है प्रिमिटिव और नॉन प्रिमिटिव क्वेश्चन सॉल्व करने के साथ
आपको समझाता हूं तो बढ़िया सा एक न्यूमेरिकल है शुरू करते हैं वन बाय वन तो यहां पर देखिए बहुत सारी प्रोसेस मेरे पास
है पहले जो वेरिएंट हम सॉल्व करेंगे वो सॉल्व करेंगे नॉन प्रिमिटिव वर्जन एट टाइम जीरो कितनी प्रोसेस मेरे पास है टाइम जरो
प कोई भी प्रोसेस मेरे पास नहीं है आप देख रहे हो पहले प्रोसेस का अराइवली जीरो पे है वन पे है जानबूझ के ऐसा केस रखा है
ताकि इस तरह का कोई केस हो तो कंफ्यूजन ना हो अभी नहीं है तो नहीं करू क्या ही करूं एट टाइम वन मेरे पास एक प्रोसेस है अब
देखिए जब एक ही प्रोसेस है तो डू आई एक्चुअली नीड अ सीपीय शेड्यूलिंग एल्गोरिथम नो भाई जो है वही रन होगा उसकी
कोई प्रायोरिटी वो पहले आ बाद में क्या करूं तो जो पहली प्रोसेस है रन करना शुरू करता हूं और प्रोसेस का नाम है p न अब
यहां पर देखिए एक बात सोचनी पड़ेगी प्रिमिटिव वर्जन के नॉन प्रिमिटिव वर्जन पहले कर रहा हूं सिंपल नॉन प्रिमिटिव
वर्जन नॉन प्रिमिटिव वर्जन क्या कहता है एक बार शेड्यूल हो गया तो प्रोसेस को फोर्सफुली सीपीयू से बाहर नहीं निकाल सकते
वो वॉलेटर अपने मन से ही बाहर आएगा तो वही मैं भी करूंगा प्रोसेस बहुत बड़ा है सेन यूनिट का बस टाइम रिक्वायरमेंट है तो 1 +
7 यानी कि यह भाई साहब चलने वाले हैं 8 तक और पूरा करके ही ये बाहर आएगा कोई इससे फोर्सफुली प्रिम नहीं कर सकता नाउ एट टाइम
एट व्हेन आई सी सारे प्रोसेस मेरे पास आ चुके हैं अभी तो बल्ले-बल्ले हैं अब आप देखो सबसे छोटा प्रोसेस छोटा प्रोसेस पहले
तो सबसे पहले रन करूंगा p2 मात्र एक यूनिट का रिक्वायरमेंट है तो 8+ 1 9 तक ये चलने वाला है छोटे के हिसाब से देखूंगा अगला
नंबर आएगा p 3 का सो नेक्स्ट प्रोसेस इज p3 दो यूनिट का रिक्वायरमेंट है सो 9 + 2 11 तक यह चलेगा अगला नंबर है p1 का फाइव
यूनिट्स का रिक्वायरमेंट है तो 11 + 5 यानी कि 16 तक कौन चलेगा p1 चलने वाला है एंड सबसे लास्ट में सबसे बड़ा प्रोसेस 8
यूनिट का रिक्वायरमेंट है तो 8 16 + 8 आई थिंक 2424 क्या नाम है भाई साहब इसका इसका नाम है p4 तो यह पूरी कहानी हमारी कंप्लीट
हो गई बाकी कलेशन तो आप कर सकते हो पहले की तरह अब पूरा गेम है नॉन प्रिमिटिव तो नॉन सॉरी नॉन प्रिमिटिव हो चुका है पूरा
गेम है प्रिमिटिव प्रिमिटिव करके दिखाता हूं यहां पे आपको आएगा मजा तो नॉन प्रिमिटिव आप समझ गए एक बार अगर शेड्यूल
कर दिया फिर बीच में कोई भी प्रोसेस आए मेरे को इस बात से कोई लेना देना नहीं है मैं उसी हिसाब से चलूंगा है ना यहां पर
गेम में क्या गेम है दिखाता हूं एट टाइम जीरो मैंने स्टार्ट किया टाइम जीरो पर कोई प्रोसेस नहीं है तो रो से वन तक पहले की
तरह कोई नहीं चलेगा वन प आ p न बट इस बार मैं p न को लास्ट तक शेड्यूल नहीं करूंगा मैं तब तक शेड्यूल करूंगा जब तक अगली
प्रोसेस नहीं आती और वहां पे रुक के लूंगा मैं डिसीजन तो वन से मैंने शुरू किया और प्रोसेस का नाम है क्या प्रोसेस का नाम है
p नॉ ये कब तक चलेगा जब तक अगली प्रोसेस नहीं आ रही वो आ रही है टू पे तो वन से टू तक सिर्फ एक यूनिट मैंने चलाया तो कितना
बचा सिक्स एंड नाउ आई विल टेक अ डिसीजन जो नया प्रोसेस आया है उसका टाइम है फाइव जो करंट प्रोसेस है उसका रिमेनिंग टाइम भी
सिक्स है नाउ पीइंग प्योर ग्रीडी शॉर्टेज ऑफ फस को क्या करना चाहिए जो छोटा प्रोसेस है उसको रन करना चाहिए तो मैं रन करने
वाला हूं सर अ p1 को मैं इसको धोखा दूंगा छोड़ दूंगा p1 को रन करूंगा लेकिन कब तक जब तक अगला प्रोसेस नहीं आता वो आ रहा है
थ्री पे तो टू से थ्री तक अब मैं रन करने वाला हूं किसको सिंगल यूनिट p1 को रन करूंगा लेट मी राइट p1 और ये बचेगा फोर बट
यू नो बुरे के साथ बुरा होता है डबल क्रॉस हो जाएगा p1 ने p न को डबल क्रॉस किया टाइम थ्री पर एक नई प्रोसेस p p2 ने
एंट्री लगाई है जिसका रिमेनिंग टाइम है वन अभी शॉर्टेज जो फर्स्ट के हिसाब से तो सोना इसी को पहले रन करना पड़ेगा तो नाउ
आई एम गोइंग टू रन दिस p2 फॉर वन यूनिट एंड थ्री से फोर तक छोटा होने की वजह से सबसे पहले रन हो के बाहर गया अब चार था
शायद दोबारा नंबर आने वाला था बट देखिए फोर पे दोबारा से एंट्री लगाई एक नई प्रोसेस p3 ने जिसका बस टाइम रिक्वायरमेंट
है टू जो कि सिक्स और फोर दोनों से कम है तो p3 को भी आते ही रिस्पेक्ट करना चाहिए सिक्स तक मैं रन कर देता हूं किसको p3 को
देखिए ये भी यहां से से हो गया बाहर एट टाइम सिक्स नाउ आई थिंक सभी आ चुके हैं अब आप शॉर्टेस्ट जॉब फर्स्ट के हिसाब से चलना
शुरू करिए तो अगला नंबर यह पेंडिंग है फर यूनिट इसको दीजिए p1 को फर यूनिट का रिक्वायरमेंट है तो यह 6 + 4 हो जाएगा 10
ये गया बाहर नाउ एट टाइम 10 अगला नंबर दीजिए किसको p न को अ सिक्स यूनिट्स का रिक्वायरमेंट है तो 10 + 6 हो गया 16 16
ये गया बाहर और सबसे लास्ट में आपको मिलेगा p4 एट यूनिट्स का रिक्वायरमेंट है तो यह मैं इसका बचारे का न बाद में ही आया
सो दैट इज हाउ आई थिंक प्रिमिटिव और नॉन प्रिमिटिव में क्या डिफरेंस है तो प्रिमिटिव अप्रोच आपने देख लिया जब भी कोई
नया प्रोसेस आता है हम करंट प्रोसेस को रुक के देखते हैं कि जो नया प्रोसेस आया क्या उसका टाइम करंट प्रोसेस के रिमेनिंग
टाइम से भी कम तो नहीं है और अगर कम है तो हम कांटेक्ट स्विच करते हैं अगर बराबर होगा तो जो चल रहा है उसको चलने देंगे उस
केस में बिकॉज फिर अगेन इट विल बी अ वेस्ट ऑफ टाइम क्योंकि कांटेक्ट स्विच में भी तो कुछ टाइम वेस्ट होता है बहुत माइन्यूट
होता है बट होता है तो यह बेसिक बात आपको समझ आ गई एडवांटेज की अगर बात करें तो अगेन जो प्रिमिटिव वर्जन है एज फार एज
वेटिंग टाइम इज कंसर्न वी कैन से कि यार इससे अच्छा कोई काम कर ही नहीं सकता इसीलिए प्रिमिटिव वर्जन को हम क्लियर कट
ऑप्टिमल भी बोलते हैं ऑप्टिमल क्यों क्योंकि गारंटी करता है मिनिमम टाइम देगा यस तो ये बड़ा एडवांटेज है डिसएडवांटेजेस
की बात करूं तो दो डिसएडवांटेज यहां पे आपको देखने के लिए मिलेंगे पहला डिसएडवांटेज क्या है कि यह जो पूरा का
पूरा आईडिया है इसमें वो प्रोसेस जिनका टाइम रिक्वायरमेंट ज्यादा है वो स्टार्वेशन में जाएंगे है ना उनकी क्या
गलती होती है हर बार छोटा प्रोसेस आएगा रन होता जाएगा छोटा प्रोसेस आएगा रन होता जाएगा तो दैट विल बी अ काइंड ऑफ अ
प्रॉब्लम सेकंड प्रॉब्लम जो कि इतनी प्रैक्टिकल है जिसके बाद हर चीज बकवास लगेगी आपको ये एल्गोरिदम इंप्लीमेंटेबल ही
नहीं है जी हां क्यों क्योंकि पूरे एल्गोरिदम का आप सोचो ना यार एक बार पूरे एल्गोरिथम का डिपेंडेंस है बस टाइम पे पर
हमें क्या रियल लाइफ में किसी प्रोसेस जब कोई नया प्रोसेस आता है किसी भी सिस्टम में हमें उसका बस टाइम पता होता है क्या
हमें पता हो क्या प्रोसेस पता होता है क्या कि प्रोसेस कितने टाइम रन करेगा हमें तो नहीं पता होता तो जब बस टाइम ही नहीं
पता तो यही शेड्यूलिंग क्राइटेरिया पूरा शेड्यूलिंग करेंगे कैसे तो फिर ये हमने पढ़ा क्यों पढ़ा सिर्फ इसलिए कि ये एक
हमें अंडरस्टैंडिंग दे सके एक स्टैंडर्ड हमें समझ आए कि यार अगर शॉर्टेस्ट ऑफ फर्स्ट में एवरेज वेटिंग टाइम इतना आ रहा
है ना तो ऑब् वियस इस आप बीट तो नहीं कर सकते बट कोशिश करिए इसके पास जाने की दूसरा एक आईडिया जरूर समझ आया जब बाद में
हम चारों पांचों एल्गोरिथम पढ़ लेंगे ना ें समझ आएगा लॉन्ग रन में जैसे राउंड रॉबिन है वो कुछ हद तक नॉट एगजैक्टली बट
कुछ हद तक कोशिश यही करता है कि छोटी जॉब्स पहले कंप्लीट हो जाए तो कुछ लोग इसको सिमुलेटर की कोशिश करेंगे बट यस
प्योर इंप्लीमेंटेशन ऑफ शॉर्टेस्ट जॉब फर्स्ट इज नॉट पॉसिबल वो पॉसिबल नहीं है यस तो आई होप इतनी बात आपको समझ आई अब
चलते हैं अगले एल्गोरिथम के तरफ जिसका नाम है प्रायोरिटी एल्गोरिथम यह मजेदार क्यों लगता है मेरे को एक्चुअली हर एल्गोरिदम
प्रायोरिटी एल्गोरिथम ही होता है बस पॉइंट है कि आप प्रायोरिटी एलोकेट कैसे करते हैं फर्स्ट कम फर्स्ट सर में हमने क्या बोला
हमने बोला जो पह पहले आएगा उसको पहले एग्जीक्यूट करेंगे तो एक्चुअली यही हो गया ना जिसका अराइवल टाइम कम है उसकी
प्रायोरिटी ज्यादा है अगला शॉर्टेज जो फर्स्ट था उसमें क्या बोला जिसका टाइम रिक्वायरमेंट कम है जिसका बस टाइम
रिक्वायरमेंट कम है वो पहले रन होगा तो वो भी एक तरह का प्रायोरिटी हो गया ये मेरे को अच्छा क्यों लगता है प्रायोरिटी
शेड्यूलिंग बिकॉज़ यहां पे तो वो सामने से बोल देता है इसका प्रायोरिटी ये है तो मैं प्रायोरिटी के हिसाब से रन करूंगा अगेन
लॉजिकल रिक्वायरमेंट क्या है सिस्टम के अंदर जैसा आप देख सकते हैं इधर इतना ट्रैफिक जाम लगा है इधर यू सी अ
प्रायोरिटी प्रोसेस सो आईडिया क्या है सर सिस्टम के अंदर कुछ प्रोसेस ऑपरेटिंग सिस्टम प्रोसेस हो सकते हैं जिनका
एग्जीक्यूशन सिस्टम के सर्वाइवल के लिए बहुत जरूरी है तो अभी तक जो भी दो एल्गोरिथम हमने पढ़े वहां इस तरह का कोई
प्रोविजन नहीं है कि अगर किसी प्रोसेस को प्रायोरिटी बेसिस पे रन करना हो तो कैसे करेंगे है ना उसका कोई आइडिया नहीं है तो
प्रायोरिटी उसका आईडिया है अगेन यहां दोनों वेरिएंट पॉसिबल है प्रिमिटिव एंड नॉन प्रिमिटिव तो मुझे ऐसा लगता है अगेन
लेट मी गो डायरेक्टली इन टू दन आईडिया क्वेश्चन सॉल्व करता हूं पूरी बात समझा डालता हूं दोनों तरह से सॉल्व करेंगे है
ना पहले अगेन नॉन प्रिमिटिव फिर प्रिमिटिव दूसरी बात अगेन याद दिला दूं कि प्रायोरिटी नंबर लिखे होंगे बट यू नो छोटा
नंबर बड़ी प्रायोरिटी है कि बड़ा नंबर नोबडी नोज क्वेश्चन में दिल मेंशन जैसे यहां मैं क्लियर कट आपको बता रहा हूं ऐसे
डिफॉल्ट केस मान के मत जाइएगा क्वेश्चन गलत करके आओगे डिफॉल्ट गस कुछ नहीं है यहां पे तो मैं आपको अलग से बता रहा हूं
कि एट नंबर इज द हाई प्रायोरिटी है ना ये बात क्लियर रखना तो छोटा नंबर छोटी प्रायोरिटी मेरे एग्जांपल में कोई और
एग्जांपल बनेगा उसमें डिफरेंट केस भी ले सकता है पहले शुरू करते हैं नॉन प्रिमिटिव वर्जन अगेन टाइम्स जीरो पर मैं आपसे
पूछूंगा कितने प्रोसेस है मेरे पास वही वाला एग्जांपल है टाइम जीरो पर कोई प्रोसेस नहीं है तो मेरे को वेट करना
पड़ेगा वन तक तो रो से वन तक यहां पर देखिए कुछ भी शेड्यूल नहीं होगा एट टाइम वन पहली प्रोसेस आई अब अगेन प्रायोरिटी
देखूं क्या नहीं क्योंकि आपको मैंने पहले समझाया कोई भी शेड्यूलिंग एल्गोरिथम तब चाहिए जब मल्टीपल प्रोसेसेस में डिसीजन
लेना हो अभी यहां प्रोसेस ही एक है तो क्या आप करोगे क्या मैं करूंगा उठा के रन करता हूं सर तो p न को मैं रन करूंगा और
क्योंकि नॉन प्रिमिटिव वर्जन है पूरा बस टाइम आपका कंप्लीट करूंगा तो p नॉ जो है वो वन से लेके फ तक प्रोसेस p नॉ
अनइंटरप्टेड चलने वाली है मेक सेंस एट टाइम फाइव जब पी नो बाहर जा रहा है मैं देख रहा हूं लगभग सारे प्रोसेस आ चुके हैं
अब गेम चलेगा सर प्रायोरिटी के बेस पे तो जरा मुझे बताइए इन सब में हाईएस्ट प्रायोरिटी किसका है फिलहाल है प्रोसेस p3
का बस टाइम अराइवल टाइम जाने दो बस ये बताओ प्रायोरिटी क्या है रिक्वायरमेंट क्या है फाइव यूनिट्स है सर सबसे पहले
आपकी रिक्वायरमेंट हम सेटिस्फाई करेंगे तो 5 प् 5 हो गया 10 और यह p3 द प्रोसेस विथ द हाईएस्ट प्रायोरिटी पहले रन होगा 8 के
बाद अगला नंबर नजर आ रहा है सेन रिक्वायरमेंट है थ्री यूनिट्स का नाम है टू तो प्रोसेस p2 ्र यूनिट रिक्वायरमेंट
है ना 10 प् 3 13 तक चलेगा अगला नंबर फिलहाल मेरे को नजर आ रहा है प्रायोरिटी सिक्स दो यूनिट का रिक्वायरमेंट है नाम है
p5 p5 यस ओके तो दो यूनिट है ना 13 प् 2 हो गया 15 नाउ दिस गोज एकट नाउ य सी जज अ क्लैश इन द प्रायोरिटी तो प्रायोरिटी में
क्लैश है तो टाई कैसे ब्रेक करेंगे अराइवल से कर लेते हैं तो इधर फाइव है इधर फाइव है अभी इधर थ्री है इधर टू है इधर थ्री है
तो यह सीनियर है इसको पहले रन करता हूं पहले आया था कुछ लोग बोलेंगे सर अराइवल टाइम में भी क्लैश हो तो भाई जो तुम्हारा
मन है वो पहले कर लो फिर क्या आप करोगे क्या मैं करूंगा फिलहाल क्लेरिटी है p1 पहले रन होगा दो यूनिट का रिक्वायरमेंट है
p1 तो 5 + 2 हो गया 17 दिस गोज आउट एंड नाउ वी हैव अ प्रोसेस जिसका सिर्फ एक यूनिट का बस रिक्वायरमेंट है p4 लेकिन
नंबर बाद में आए क्योंकि प्रायोरिटी इसका वीक था है ना तो ये चलेगा सबसे बाद में p4 रिक्वायरमेंट है ओनली वन यूनिट का तो 18
तक ये पूरी प्रोसेस कंप्लीट होगी है ना अब ये पूरा काम हमने कंप्लीट कर डाला है लेकिन हमने ध्यान रखा है कि कौन सा आईडिया
हमने यूज किया नॉन प्रिमिटिव प्रिमिटिव करेंगे तो आई थिंक इट विल बी मोर फन और एग्जाम पॉइंट ऑफ व्यू से भी कौन सा ज्यादा
इंपॉर्टेंट है प्रिमिटिव वर्जन शुरू करता हूं एक-एक करके बहुत शानदार तरह से ध्यान दीजिएगा सो अगेन लेट मी स्टार्ट विद टाइम
जीरो से वन तक तो हमें पता है कुछ रन होगा नहीं अब अगेन सबसे पहले जो प्रोसेस उठा के रन करो एक ही प्रोसेस अवेलेबल है प नो
चलेगा प्रायोरिटी कुछ भी हो तो जीरो से सॉरी वन से टू तक सिंगल यूनिट में चलाता हूं तो इसका टाइम कितना बचा बोलिए इसका
टाइम बचा थ्री है ना यहां तो कोई प्रॉब्लम नहीं है अब मुझे देखना पड़ेगा यहां पे कि कौन-कौन आया है यहां पे टाइम टू पे दो
प्रोसेस आए हैं और क्या किसी का प्रायोरिटी मेरे प्रायोरिटी से ज्यादा है ओबवियसली दो दोनों का ज्यादा कांटेक्ट
स्विच होगा 100% होगा पहले चलेगा ये p2 चलेगा जब तक अगला नहीं आ रहा अगला आ रहा है थ्री पे तो टू से 3 तक मैं p2 चलाता
हूं एक यूनिट p नॉ चला तो वो बचा है थ्री एक यूनिट अभी p2 चला है आई एम सॉरी एक यूनिट p2 चला है ना
यस नहीं टू पे तो भी मैं हुं ही ना टू पे कौन चलेगा तो टू पे भी p2 चलेगा हां ठीक है एक यूनिट p2 चलेगा सो नॉट दिस ये तो टू
ही रहेगा ये चला एक यूनिट तो ये बचा टू और अब टाइम थ्री पर आप देखेंगे तो यहां पर एंट्री लगाई है यू नो प्रायोरिटी सेवन के
भी बाप ने एट ने एंट्री लगा दी अब ये तो चलेगा े कोई रोक ही नहीं सकता और आगे टाइम देखने की भी जरूरत नहीं है फाइव यूनिट्स
का रिक्वायरमेंट है तो 8 तक 3 + 5 इ 8 p3 चलेगा विदाउट एनी कंफ्यूजन और आई थिंक जब तक ये बाहर जाएगा मेरे लिए गेम आसान हो
गया क्योंकि एवरी बडी इज ऑलरेडी कम अभी कौन पेंडिंग है सेवन वाला है क्या सेवन वाला पेंडिंग है दो यूनिट का रिक्वायरमेंट
है तो 8 प् 2 इज गोइंग टू बी 10 8 प् 2 इज गोइंग टू बी 10 एंड नाउ दिस इज लाइक p2 यह
बाहर होगा नाउ एट टाइम 10 दोबारा से देखिए अभी बताइए कौन हाईएस्ट प्रायोरिटी पेंडिंग है सिक्स पेंडिंग है सर दो यूनिट का
रिक्वायरमेंट है नाम है p5 तो 12 तक इसको चलाइए अब बताइए फाइव के दो पेंडिंग है बस टाइम मत देखिए क्लैश रिजॉल्व करते हैं
अराइवल टाइम से पहले p1 को रन करेंगे टू यूनिट्स का रिक्वायरमेंट पेंडिंग है तो ये 14 तक य भाई साहब चले अब बताइए कौन
पेंडिंग है 14 पे 14 पे 14 पे फिलहाल ये पेंडिंग है ना वन यूनिट रिक्वायरमेंट है तो 14 + 1 इज गोइंग टू बी 15 ये प्रोसेस
p4 यहां से जाता है बाहर सब हो चुके है थ्री यूनिट का रिक्वायरमेंट पेंडिंग है प्रोसेस p0 का ये देख रहे हैं एंडिंग सेम
पे होगा कोई फर्क नहीं पड़ता ो दैट इज हाउ प्रिमिटिव प्रायोरिटी शेड्यूलिंग वर्क्स तो आई थिंक पूरा आईडिया प्रायोरिटी का
आपको समझ आया होगा अप्रोच क्या है यहां मैं किसी पैरामीटर के लिए नहीं कर रहा मैं प्रायोरिटी के हिसाब से रन कर रहा हूं
मेरे को वेटिंग टाइम से या किसी और चीज से रिस्पांस टाइम से अ थ्रू पुट से कोई लेना देना सीपीयू यूटिलाइजेशन से कोई लेना देना
नहीं है मेरा पॉइंट है कि जो प्रायोरिटी प्रोसेस है पहले रन हो प्रिमिटिव नॉन प्रिमिटिव दोनों चीज मैंने आपको बताया
एडवांटेज सिस्टम को सपोर्ट करेगा फैसिलिटेट करेगा जो इंपॉर्टेंट प्रोसेस हैं उनको रन करने के लिए परमिट करेगा
डिसएडवांटेज अगेन स्टार्वेशन देखिए जब भी कोई स्पेशल क्राइटेरिया होगा कोई ना कोई स्टार्पेपर जिनका प्रायोरिटी कम है वो
धीरे-धीरे स्टार्वेशन में जाएंगे बड़ा इंपॉर्टेंट पॉइंट है तो यहां पे स्टार्वेशन है यस अब इसको रिजॉल्व कैसे
करें एक बड़ा मजेदार आईडिया है जिसको हम बोलते हैं एजिंग जैसे रियल लाइफ में होता है ना उम्र बढ़ने के साथ हम आदमी की
रेस्पेक्ट करने लगते हैं है ना किसी के पास पैसा है इसलिए रेस्पेक्ट कर रहे किसी के पास नॉलेज है इसलिए रेस्पेक्ट कर ो
किसी के पास हेल्थ है इसलिए रेस्पेक्ट कर रहे किसी के पास एज है इसलिए भी रेस्पेक्ट करता है पैर छूते है ना अपन सेम आईडिया है
लॉजिक क्या है जैसे-जैसे किसी प्रोसेस का वेटिंग टाइम बढ़ता जाए आप धीरे-धीरे उसकी प्रायोरिटी बढ़ाते जाए तो जैसे बोलते हैं
देर है बट अंधेर नहीं है तो होगा ये भले ही कोई प्रोसेस बहुत कम प्रायोरिटी से स्टार्ट करें बट जैसे-जैसे उसका वेटिंग
टाइम बढ़ता जाएगा मैं प्रायोरिटी बढ़ता बढ़ाता जाऊंगा तो कभी ना कभी तो यार उसका नंबर आ जाएगा ये छोटा सा आईडिया है अ
टेक्निक ऑफ ग्रेजुएटी ऑफ अ प्रोसेस दैट इज इन अ सिस्टम फॉर अ लॉन्ग टाइम है ना फॉर
एग्जांपल हर 10 मिनट में बढ़ाता जाता हूं सो दैट इज कॉल्ड एजिंग इससे प्रायरिटी सॉल्व हो जाएगा डन अभी बात करेंगे राउंड
रॉबिन के बारे में तो राउंड रॉबिन अगेन एक बहुत कमाल का एल्गोरिथम है बिल्कुल डिफरेंट आईडिया है इसका आईडिया क्या है
देखिए ये डिजाइंड है टाइम शेयरिंग सिस्टम्स के लिए टाइम शेयरिंग हमने समझा था एक्सटेंशन ऑफ मल्टी प्रोग्रामिंग जहां
पर आईडिया ये नहीं कि एक प्रोसेस को कंप्लीट किया जाए आईडिया ये है कि बहुत सारी प्रोसेस के बीच में इन अ सर्कुलर
फैशन यू नो टाइम शेयर किया जाए सीपीयू का मतलब हो सकता है बहुत सारे यूजर हो तो हर यूजर को थोड़ा-थोड़ा थोड़ा-थोड़ा टाइम अगर
हम एलोकेट करें दिस आइडिया इज़ कॉल्ड राउंड ड्रॉप इन तो ये बिल्कुल वही बात कर रहा है मैंने सारे पॉइंट बहुत अच्छे से
मेंशन किया डिजाइन फॉर टाइम शेयरिंग सिस्टम वेर इट इज नॉट द आइडिया टू कंप्लीट वन प्रोसेस देन स्टार्ट अनदर बट बी
रिस्पांसिस ये गोलगप्पे वाले भैया वाला अप्रोच है धीरे-धीरे सबको रिस्पांस करना है सीपीयू शेड्यूलर गो अराउंड द रेडी क्यू
एक सर्कुलर क्यू है एलोकेटिंग थोड़ा-थोड़ा टाइम हम देते हैं जिसको हम बोलते हैं मैक्सिमम टाइम इज वन टाइम क्वांटम या तो
उस टाइम क्वांटम के अंदर प्रोसेस कंप्लीट हो जाएगी पॉइंट नंबर वन अगर नहीं होती है तो उसके बाद मैं फोर्सफुली कांटेक्ट स्विच
करूंगा बोलूंगा पहले बाकी सबका नंबर आने दो फिर दोबारा से तुमको एग्जीक्यूट करूंगा और ऐसे सर्कुलर फैशन में मान लो एक-एक
रोटी सबको देते जाते हैं तो अगर किसी को 10 रोटी खानी है भाई वेट करना पड़ेगा पहले एक मिलेगी फिर सबको एक-एक मिलेगी अगर कुछ
लोगों का हो सकता है एक रोटी मन भर जाए वो बाहर चले जाएंगे जो नहीं बन जाएंगे फिर सबको एकएक मिलेगी जिनका दो वाला होगा वो
बाहर चले जाएंगे इस तरह मैं सर्कुलर फैशन में एलोकेट करता जाऊंगा बाकी सारे पॉइंट्स यहां प मैंने मेंशन किए हुए हैं आई विल
डायरेक्टली गो इन टू द आईडिया क्वेश्चन सॉल्व करके दिखाता हूं मजा आ जाएगा तो एक क्वेश्चन हमने लिया है एंड फॉर दिस
क्वेश्चन लेट मी एज्यूम सपोज द टाइम क्वांटम बीटू यूनिट्स यस तो यहां पर आपको अप्रोच समझाता हूं एक क्यू रन टाइम प
मेंटेन करो उससे इस क्वेश्चन को सॉल्व करना बहुत आसान है अदर वाइज इसमें बहुत सारे कंफ्यूजन हो जाते हैं ट्रस्ट मी तो
आई विल स्टार्ट विद टाइम जीरो टाइम जीरो पे कितनी प्रोसेस है टाइम जीरो पे एक ही प्रोसेस है मैं ऐसे मान लेता हूं वो लाइन
में खड़ी थी प्रोसेस मैंने उसे पिक कर लिया टाइम जीरो पे कितना रिक्वायरमेंट है फोर बट मैं फोर तो दूंगा नहीं मैं एक बार
में टू दूंगा तो मैं जीरो से टू तक किसको चलाऊंगा प्रोसे p2 को अब यहां बड़ा कांसेप्चुअल बात है बच्चे पता है क्या
करते हैं उठा के सबका एक सर्कुलर क्यू बना देते हैं भाई अराइवल टाइम भी तो इंपॉर्टेंट है तो ध्यान से देखना एट टाइम
टू p नॉ आया q से बाहर और जब वो बाहर आया तो वो क्या देखता है अराइवल टाइम वन p1 आ चुका था लाइन में p2 का अराइवल टाइम टू है
मान लेते हैं p2 भी लाइन में आ चुका था बट मजे की बात है अभी p3 p4 और p5 नहीं आए थे तो p न दोबारा आके लाइन में लग जाएगा ये
गेम है ये अगर आप समझ समझ ग तो राउंड रोबिन का कोई न्यूमेरिकल गलत नहीं करके आओगे आर यू गेटिंग इट अभी ये तीन नहीं आए
ना तो फिर उससे पहले दोबारा आ के लाइन में लग गया पहले खेलने आया था इसके ज्यादा नंबर आ रहा है फेयर इनफ दो यूनिट रन कर
चुका हूं दो बचेगा अगला नंबर है p1 का रिक्वायरमेंट है फाइव का वो दे नहीं पाऊंगा मैक्सिमम दे सकता हूं दो यूनिट तो
p1 चलेगा दो यूनिट के साथ कहां तक थ्री तक चला यस और सॉरी थ्री बचा जब ये बाहर आया तो टाइम हो चुका था फर तब तक अब आप नोटिस
करिए तब तक p3 आ चुका है p4 हो आ चुका है बट p5 अभी भी नहीं आया तो p5 से पहले p1 भी दोबारा लाइन में आके लग गया अगला नंबर
p2 का नाउ फॉर योर सरप्राइज दो यूनिट का टाइम क्वांटम था दो ही मैं दे रहा हूं तो यह अभी पहली इटरेशन में बाहर हो जाएगा
दोबारा क्यू मैं आक एंटर नहीं करेगा है ना सिक्स हो चुका है तो मैं यहां पे क्य भी मेंटेन करता रहता हूं कि p5 का भी अराइवल
हो चुका है अगला नंबर दोबारा से आ गया p न का अभी पन भी आई थिंक दोबारा एंट्री नहीं लेगा एक बार पहले रन कर चुका था दो यूनिट
पेंडिंग था वो अ भी सेटिस्फाई हो जाएगा तो ये लीजिए p0 भी बाहर हो गया अगला नंबर है p3 का अब यहां देखिए इंपॉर्टेंट केस टाइम
क्वांटम दो यूनिट का है लेकिन इसका रिक्वायरमेंट वन है तो वन ही चलेगा ऐसा नहीं जबरदस्ती दो यूनिट देंगे ही देंगे तो
नाइन तक p3 चला और p3 भी हो गया बाहर फाइनली p4 का नंबर आया है पहली बार नंबर आया अ सिक्स यूनिट्स का इसका रिक्वायरमेंट
है तो एक बार में तो दो यूनिट चल पाएगा तो फर बचेगा 9 + 2 हो जाएगा 11 और यह p4 और यह p4 दोबारा q में एंट्री लेगा यस अगला
नंबर नोटिस करिए p1 का है 3 यूनिट्स का रिक्वायरमेंट है अगेन मैं वन यूनिट बचेगा दो यूनिट दे पाऊंगा तो 11 से 13 तक फर्द
चला p1 और p1 भी दोबारा क्यू में एंट्री लेते हुए मुझे नजर आ रहा है आगे बढ़ते हैं पहली बार मौका मिला p5 को थ्री यूनिट का
रिक्वायरमेंट है वन बचेगा तो दो यूनिट मिलेगा तो 13 + 2 इ 15 और यह कहानी हो गई p5 की यह भी q में ऐसा q से मेंटेन करोगे
कभी गलती नहीं होगी यस फाइनली मेरे ख्याल से अब आखिरी नंबर है नहीं आखिरी नंबर नहीं है p4 भी दोबारा एंट्री लेगा दो यूनिट
पेंडिंग रहेगा तो 15 + 2 17 p4 भी दोबारा एंट्री लेते नजर आ रहा है देन p1 सिंगल यूनिट रिक्वायरमेंट है यहां से जाएगा बाहर
तो 17 + 1 इज 18 p p1 माफ कीजिएगा p1 हो गया बाहर देन p5 सिंगल यूनिट रिक्वायरमेंट पेंडिंग है तो 18 + 1
p5 यह बाहर हो गया 19 एंड आखिरी नंबर में बाहर होगा p4 दो यूनिट का रिक्वायरमेंट है 19 + 2 इज 21 दैट इज p4 तो राउंड रॉबिन
कैसे सर्कुलर क्यू ये सर्कुलर क्यू था कैसे सर्कुलर क्यू मेंटेन करके पूरा पैटर्न सॉल्व किया पूरा मैकेनिज्म एकदम
शानदार तरीके से समझ आया होगा कंप्लीशन टाइम ये तीनों कॉलम भरना मैंने पहले से सिखाया तो हर केस में आप सिमिलर तरह से भर
के एवरेज वेटिंग टाइम वो सब निकाल सकते हो कंक्लूजन द आईडिया राउंड रॉबिन सबसे शानदार काम करता है रिस्पांस टाइम पे
रिस्पांस टाइम क्या पहली बार जब हम रिस्पांस करते हैं तो क्योंकि यह कांटेक्ट स्विच करके जल्दी-जल्दी सबको रिस्पांस
करता है तो रिस्पांस टाइम की टर्म्स में तो ये शानदार काम करता है राउंड रॉबन कमिंग टू द नेक्स्ट आइडिया जैसे हमने बोला
टाइम शेयरिंग सिस्टम है लॉन्ग रन में कौन से प्रोसेस जल्दी बाहर हुए जिनका टाइम रिक्वायरमेंट कम था कि
ज्यादा था जिनका कम था मैं नहीं कह रहा पोरली वो है लेकिन स्टिल कम वाले जल्दी बाहर हुए ज्यादा वाले कुछ समय के बाद बाहर
हुए तो काइंड ऑफ इंप्लीमेंटेशन है नाउ अगेन यहां पर भी अगर शॉर्टेज ऑफस का इंप्लीमेंटेशन है तो बड़ी प्रोसेस र्व
करेंगी इस पूरे एल्गोरिथम का हाई लेवल इंपॉर्टेंस है टाइम क्वांटम पे अगर टाइम क्वांटम बहुत बड़ा हो जाएगा तो रिस्पांस
टाइम पुअर होगा यह काइंड ऑफ फस कम फस की तरह बिहेव करने लगेगा अगर टाइम क्वांटम बहुत कम कर देंगे तो रिस्पांस टाइम अच्छा
मिलेगा बट बहुत सारा समय वेस्ट होगा बार-बार कांटेक्ट स्विच करने में तो द सक्सेस ऑफ राउंड रॉबिन डिपेंड्स हैवली ऑन
द आईडिया ऑफ टाइम क्वांटम टाइम क्वांटम अच्छे से चूज करेंगे तो बढ़िया काम करेगा एंड लास्ट प्रायोरिटी का कोई प्रायोरिटी य
है भी नहीं भाई टाइम शेयरिंग के लिए बनाया तो प्रायोरिटी की कोई बात यहां पर नहीं करेंगे यस आई थिंक यह बात समझ आ गई अब
कंक्लूजन हमने पढ़े है ना श टेस्ट जब फर्स्ट पोरली तो इंप्लीमेंटेबल ही नहीं है लेकिन एफसीएफएस पढ़ा प्रायोरिटी पढ़ा
राउंड रॉबिन पढ़ा बताओ कौन सा अच्छा कौन सा खराब है मतलब बताओ विज में र्सिटी एग्जाम के लिए इंपॉर्टेंट है मैंने
इन परे डायरेक्ट क्वेश्चन देखे हैं लेकिन बच्चा घबरा जाता है न्यूमेरिकल यहां आता नहीं है दो तीन थोरेट्स ये तो आईडिया है
मल्टीलेवल आईडिया है मल्टीलेवल क्यू शेड्यूलिंग तो मल्टी लेवल क्यू शेड्यूलिंग क्या होता है
और कैसे इसकी लॉजिस है आपको समझाता हूं यहां पर हम क्या करते हैं इंस्टेड ऑफ हैविंग अ सिंगल रेडी क्यू ना वी मेंटेन
मल्टीपल रेडी क्यू तो जैसे ही कोई प्रोसेस आएगा क् सबका रिक्वायरमेंट अलग-अलग है उनको उसी हिसाब से मैनेज करते हैं
सिस्टम प्रोसेस जो हाई रिक्वायरमेंट होगा प्रायोरिटी का जिनको जल्दी रन करना है उनको एक रेडी क्यू में मेंटेन करते हैं
इंटरेक्ट प्रोसेस जिनको सिस्टम में बने रहना है बार-बार बार-बार इनपुट आउटपुट करना पड़ेगा इस तरह का रिक्वायरमेंट है एक
रिडिक्यूल में मेंटेन करेंगे बैच प्रोसेस कोई अर्जेंसी नहीं है कोई फाइल कॉपी प लगा हुआ है कुछ अपग्रेडेशन चल रहा है
बैकग्राउंड में चल सकता है उनको अलग कर लेंगे और होगा ये अब क्योंकि डिफरेंट डिफरेंट हमारी यू नो रिडी क्यूज है जिनका
अलग-अलग रिक्वायरमेंट्स है तो व्हाट वी कैन डू इन एव्री रिडी क्यू वी कैन हैव अ डिफरेंट एल्गोरिथम फॉर एग्जांपल आप अंदाजा
भी लगा पा रहे होंगे हियर कैन आई यूज़ द प्रायोरिटी वन क्योंकि सबसे इंपॉर्टेंट है अ सिस्टम प्रोसेस है इंटरेक्ट है बार-बार
सबसे बात करनी है व्हाई कांट वी यूज़ राउंड रॉबिन बैच है बैकग्राउंड में चलता रहेगा एफसीएफएस लगा दो है ना तो इस तरह का
एक आईडिया मैच करता है जहां पर हर किसी को हम एक साथ मेंटेन करते हैं मजे की बात है मैं दो पॉइंट मेंशन कर रहा हूं एक तो इन
सबके अंदर एक इनके बीच में तो लगाना पड़ेगा मान लीजिए इनके बीच में राउंड ड्रॉपिन लगा दो लाइक एन एल्गोरिथम इनसाइड
अ क्यू एंड एल्गोरिथम बिटवीन अ क्यू तो मैं बोल य रहा हूं कि एक टाइम इसको दो एक टाइम इसको दो एक टाइम इसको दो उसमें भी
आपको मन कर रहा है चेंज कर लो सपोज आई विल से अ काइंड ऑफ अ हाइब्रिड राउंड रोबिन जहां पर लेवल वन को चार यूनिट मिलेगा इसको
दो यूनिट मिलेगा इसको वन यूनिट मिलेगा तो कुछ बीच का रास्ता निकाला जा सकता है कितने लेवल होंगे रिडी क्यूस कितनी होंगी
हर के हर रिडिक्यूल के अंदर कौन सा एल्गोरिदम होगा डी क्य के बीच में आपस में कौन सा एल्गोरिदम होगा यह सब चीज
सब्जेक्टिव है बट यह मल्टीलेवल क्यू शेड्यूलिंग यह बताने का समझाने का बहुत अच्छा तरीका है कि इन जनरल ऑपरेटिंग
सिस्टम्स कैसे यह सारे के सारे प्रोसेस को सपोर्ट कर रहे होते हैं बिकॉज दे आर काइंड ऑफ यूजिंग मिक्सचर ऑफ ऑल ऑफ देम यस बाकी
सारे पॉइंट मैंने बहुत अच्छे से मेंशन किए यू कैन जस्ट कॉपी देम डाउन नोट देम डाउन एंड यू राइट देम इन द सेमेस्टर एग्जाम्स
नाउ लास्ट टॉपिक इस यूनिट का मल्टीलेवल फीडबैक क्यू शेड्यूलिंग तो ये एक थोड़ा सा मॉडिफाइड आईडिया है लॉजिक समझिए यहां पर
हमें ना पहले से डिवीजन करने की जरूरत नहीं पड़ती तो जैसे ही कोई प्रोसेस आएगा सबसे पहले वो एक ही लेवल पे जाएगा देयर यू
सी अकाउंट ऑफ राउंड रॉबिन आईडिया काइंड ऑफ जिसका टाइम क्वांटम है एट यूनिट्स अब अगर आपका रिक्वायरमेंट एट यूनिट या उससे कम है
तो आप यहीं से बाहर चले जाओगे अगर नहीं एट से ज्यादा चाहिए तो मैं आपको दोबारा स्क्यू में एंट्री नहीं दूंगा देन यू विल
गो टू द नेक्स्ट लेवल इसका टाइम क्वांटम है 16 यूनिट 8 + 16 24 अगर 24 तक का रिक्वायरमेंट है यहीं से एग्जिट यहां भी
काम नहीं चलेगा यू विल गो डाउन और लास्ट लेवल पर रखा है एफसीएफएस की बेटा अब तो तेरे को करके ही भेजेंगे तो इस तरह का
आईडिया जहां पर थ्रू आउट द लाइफ लिखा मल्टी लेवल फीडबैक क्यू शेड्यूलिंग थ्रू आउट द लाइफ यू कैन यू नो मूव बिटवीन द
क्यूज अच्छा इसमें आप चाहो तो एजिंग का कंसेप्ट भी लगा लो अभी बहुत समय से एफसीएफएस में बैठा हुआ नंबर नहीं आ रहा
मान लीजिए 10 मिनट वेट किया एक लेवल प्रमोट कर दो फिर नंबर नहीं आए एक लेवल प्रमोट कर दो तो इस तरह का हाइब्रिड
मॉडिफाइड आईडिया यूज कर सकते हैं ऑल इंपॉर्टेंट पॉइंट्स जो है वह सब मैंने यहां पे लिख के रखे हैं अगेन कितने क्यूज
होंगे क्या एल्गोरिथम होगा बिटवीन द क्यू इनसाइड द क्यू ये सब सब्जेक्टिव मैटर है तो ये दो एडिशनल पॉइंट और थे बाकी चार
एल्गोरिथम बहुत शानदार तरीके से हमने कंप्लीट किए तो दिस इज ऑल अबाउट द यू नो दिस आईडिया ऑफ सीपीयू शेड्यूलिंग तो अभी
बात करते हैं प्रोसेस सिंक्रोनाइजेशन के बारे में तो प्रोसेस सिंक्रोनाइजेशन बहुत जबरदस्त चैप्टर है मैं जल्दी से पहले
समझाता हूं कि क्या प्रॉब्लम है और किस तरह के क्वेश्चन उसके यहां से एक्सपेक्ट किए जाते हैं एक-एक करके डिटेल में बात कर
करेंगे तो देखिए आईडिया क्या है मल्टी प्रोग्रामिंग ऑपरेटिंग सिस्टम है किसी भी इंस्टेंस प बहुत सारी प्रोसेस होंगी जो
रिसोर्सेस के लिए कंपीट करती हैं बट इस सारे सिनेरियो में कभी-कभी इनकंसिस्टेंसी हो सकती है जब इतने सारे लोग एक ही टाइम
पे सेम डाटा एक्सेस करने की कोशिश करेंगे तो सोचिए क्लैश हो सकता है एक छोटा सा एग्जांपल कोट करता हूं यहां देखिए कोई
प्रोसेस है हमारे पास प जिसके अंदर सिर्फ तीन ही प्रोसेस क्या प्रोग्राम है है ना एक फंक्शन है जिसके अंदर तीन ही
इंस्ट्रक्शन लिखे हुए हैं रीड i i = i + 1 राइट आए तो मानो पहले वैल्यू को रीड करेगा फिर जो भी वैल्यू होगी + व करेगा एंड देन
प्व वन करने के बाद राइट करेगा फॉर एग्जांपल मान लेते हैं कि ओरिजनली लेट मी से i का वैल्यू क्या है 10 मान लेता हूं
सो लेट मी से ओरिजनली i का वैल्यू 10 है अब हमने पहली बार इसको रन करना स्टार्ट किया और जैसे हमने पहले भी समझाया जैसे ही
हम प्रोसेस को रन करते हैं क्या होता है प्रोग्राम को रन करते हैं एक प्रोसेस बन जाता है तो बन गया प्रोसेस p1 रन करना
स्टार्ट किया तो बताओ क्या रीड करेगा सर ये रीड करेगा 10 फिर i = i + 1 तो दिस इज गोइंग टू बी 11 और ये राइट करने ही वाला
था मान लेते हैं कि बीच में कॉन्टेक्ट स्विच हो गया अब तो सीपी शेड्यूलिंग पढ़ ली हमने कॉन्टेक्ट स्विच नहीं हो सकता
क्या हो सकता है सर अगर बीच में कॉन्टेक्ट स्विच हुआ तो अब बोलो क्या होगा सर कॉन्टेक्ट स्विच हुआ तो फिलहाल इसको यहीं
पे रोकना पड़ेगा राइट अपडेट नहीं होगा लेट मी से किसी दूसरे यू नो आईडिया ने आया और इसी कोड को दोबारा रन किया और एक नई
प्रोसेस जन्म लिया जिसका नाम है p2 हो सकता है ना आई कैन एग्जीक्यूट सेम कोड मल्टीपल टाइम और हर बार अलग-अलग प्रोसेस
बनेगी तो p2 बना लेकिन वैल्यू तो 10 ही है तो अब क्या हुआ देखो इसने वैल्यू रीड किया 10 इसने वैल्यू अपडेट किया i = i + 1 10 +
1 11 हुआ और मान लेते हैं कि इसने जाके राइट भी कर दिया तो जो ओरिजिनल वैल्यू 10 थी अब बोलो क्या हो गया अब सर वो वैल्यू
हो गया 11 बात समझ आती है अब जब p1 कंटिन्यू करेगा तो क्या वो शुरुआत से करेगा नहीं वो तो दो इंस्ट्रक्शन
एग्जीक्यूट कर चुका है तो वहीं से आगे करेगा और वो तो 11 कैलकुलेट कर चुका है सर तो 11 इ इ टू वो यहां पर जाके 11 को कायदे
से कट करके दोबारा 11 ही लिख देगा अब बोलो क्या हुआ यह कायदे से एक तीन लाइन का बेसिक सा कोड है इंक्रीमेंट करने के लिए
और हमने इस पे दो बार इंक्रीमेंट किया है तो जेनुइनली वैल्यू 10 से क्या हो जानी चाहिए थी 12 हो जानी चाहिए थी बट यहां पर
वैल्यू क्या हुआ 11 ही हुआ सो दैट इज अ वेरी सिंपलेस्ट एग्जांपल ऑफ एन इनकंसिस्टेंसी कि क्या हो सकता है और इस
सिनेरियो को हम क्या बोलते हैं दिस इज कॉल्ड रेस कंडीशन ये टर्म बड़ा इंपॉर्टेंट है पांच नंबर का क्वेश्चन डायरेक्ट इसी पे
पूछा जा सकता है पढ़ें एक बार क्या लिखा है रेस कंडीशन इज अ सिचुएशन इन व्हिच द आउटपुट ऑफ अ प्रोसेस डिपेंड्स ऑन द
एग्जीक्यूशन सीक्वेंस ऑफ द प्रोसेस जब आउटपुट एग्जैक्ट एग्जीक्यूशन ऑर्डर जो है उस परे डिपेंड करने लगे क्योंकि सोचिए अगर
मैं पहली प्रोसेस कंप्लीट होने देता उसके बाद दूसरी प्रोसेस चलाता तो रिजल्ट 11 आता कि 12 आता सर 100% उस केस में 12 आता बट
इस बार रिजल्ट क्या आ 11थ आउटपुट तो चेंज हो गया है एंड वी चेंज द ऑर्डर ऑफ़ एग्जीक्यूशन द डिफरेंट प्रोसेस विद
रिस्पेक्ट टू अदर प्रोसेस द आउटपुट मे चेंज तो ये सिनेरियो हुआ रेस कंडीशन याद रखिएगा व्हाट इज रेस कंडीशन जब ऑर्डर चेंज
करने से रिजल्ट चेंज होने लगे रेस कंडीशन कहलाता है और प्रोसेस सिंक्रोनाइजेशन क्या प्रॉब्लम हुआ बहुत सारी प्रोसेस हैं शेयर
डाटा पे काम करेंगे अब यहां पर आई कौन था शेड वेरिएबल था ना इसलिए प्रॉब्लम हो गया आगे बढ़ता हूं इससे पहले कि हम यू नो बहुत
सारे सॉल्यूशंस और बहुत सारे आइडियाज पे डिटेल में बात करें ये एक स्ट्रक्चर समझ लीजिए किसी भी प्रोसेस का इस पूरे चैप्टर
में ये स्ट्रक्चर हमारे साथ चलेगा हम क्या मान रहे हैं सपोज देर इज अ प्रोसेस p अब कोई भी प्रोसेस मैं वाइल टी इसलिए लगा रहा
हूं आपको समझाता हूं बेसिक स्ट्रक्चर मैं जब चाहूं जितनी बार चाहे रिपीट कर सकता हूं देखो कोई भी प्रोसेस अपने पूरे लाइफ
स्पैन में हमेशा तो शेयर्ड डाटा यू नो रन नहीं करेगा शेयर्ड डाटा पे काम नहीं करेगा तो कभी वो ऐसे डाटा पे काम कर सकता है जो
शेयर्ड ना हो और कभी वो ऐसे डटा पे काम करेगा जो शेयर्ड हो अगर मैं ऐसे डटा पे काम कर रहा हूं जो शेयर्ड नहीं है तो क्या
क्लैश होने का है ना इनकंसिस्टेंसी होने का कोई चांस है कोई चांस नहीं है चांस कब है जब शेयर्ड डाटा प काम करें उस सेक्शन
को आज के बाद हम बोलेंगे क्रिटिकल सेक्शन ये टर्म बड़ा इंपॉर्टेंट है बहुत लोग इसमें कंफ्यूज हो जाते हैं डेफिनेशन देखिए
वेयर अ प्रोसेस एक्सेस शेयर्ड रिसोर्सेस जब भी मैं शेयर्ड रिसोर्स पे शेयर्ड डाटा पे काम करूंगा तो मैं बड़ा ध्यान रखूंगा
कि यार किसी को गड़बड़ ना हो जाए किसी के साथ यू नो लड़ाई ना हो जाए अपनी तो इस सेक्शन को हम बोलेंगे क्रिटिकल सेक्शन
इनिशियल सेक्शन प्रोसेस अपने प्राइवेट डाटा पे प्राइवेट रिसोर्स प काम कर रहा है रिमाइंडर सेक्शन वो क्रिटिकल सेक्शन पे
काम कर कर चुका हम बाहर आ गए हैं है ना और ये एंट्री और एग्जिट सेक्शन क्या लिखा हुआ है आगे बात करेंगे क्रिटिकल सेक्शन बहुत
क्रिटिकल है हम नहीं चाहते जिसका जब मनाए तभी वो क्रिटिकल सेक्शन में चला जाए दो-चार चीजें चेक करेंगे क्या कोई और तो
अभी उस पर काम नहीं कर रहा एक बार में जाएंगे क्लैश तो नहीं होगा इसलिए एंट्री और एग्जिट हमने बना दिया है ये कायदे से
मान के चलिए सिक्योरिटी है क्रिटिकल सेक्शन की अपने लाइफ में क्या जरूरी है प्रोसेस एक ही बार क्रिटिकल सेक्शन में
जाए नहीं हो सकता है ना पूरे लाइफ में पहले थोड़ी देर शेयर डाटा एग्जीक्यूट किया फिर कुछ समय बाद फिर किया फिर कुछ समय बाद
फिद किया ऐसा हो सकता है इसीलिए हमने इसको वाइल टू यू नो लूप में रखा है कि मैं जब चाहे इसको रिपीट कर सकता हूं तो हो सकता
है मैं क्रिटिकल सेक्शन में एंटर करूं बाहर हो जाऊं कुछ समय के बाद फिर मुझे जरूरत पड़े फिर मैं अंदर जाऊं फिर बाहर हो
जाऊं ये प्रोसेस चलती रहेगी तो ये पूरा का पूरा पैटर्न आपको याद रखना है क्रिटिकल सेक्शन को कैसे सॉल्व करना है तो क्रिटिकल
सेक्शन प्रॉब्लम क्या हुआ पहले ये समझो क्रिटिकल सेक्शन इज दैट सेक्शन जहां पे मैं शेयर्ड डाटा को एक्सेस कर रहा हूं ये
तो बेसिक बात हो गई अब हमें क्या करना है हमें ऐसा सॉल्यूशन लिखना है एक क्रिटिकल सेक्शन प्रॉब्लम को सॉल्व करना है जहां पे
मल्टीपल प्रोसेस एक साथ शेयर्ड डाटा प काम कर सके या शेयर डाटा के साथ उसके ऊपर ऑपरेट कर सके और उनके कोलिजन उनके क्लैशेस
ना हो तो अभी बात करते हैं इस चीज पे कि क्रिटिकल सेक्शन प्रॉब्लम को सॉल्व करेंगे कैसे बट यहां पे एक और कहानी में ट्विस्ट
है ट्विस्ट क्या है ट्विस्ट है क्राइटेरियास मतलब यहां पर हमारे पास कुछ स्टैंडर्ड क्राइटेरियास हैं कुछ मान के
चलिए वो यू नो जैसे बोलते हैं चेक पॉइंट्स हैं कुछ मापदंड है जो पूरे होने ही चाहिए तो यहां यहां पर अभी मैं सॉल्यूशन की बात
नहीं कर रहा आपसे ये आ आईएसआई मार्क है जब तक कोई भी सॉल्यूशन ये क्राइटेरिया फुलफिल नहीं करता तब तक हम उसे वैलिड नहीं मानते
तो मुकाबला नि इसके की पहले हम डायरेक्टली सॉल्यूशन पढ़े पहले क्राइटेरिया समझ लेते हैं ताकि बाद में हम अच्छे से जज कर पाए
कि हमारे जो सॉल्यूशन है वैलिड है कि नहीं है है ना तो पहला जो इंपॉर्टेंट क्राइटेरिया है क्रिटिकल सेक्शन के लिए
बड़ा इंपॉर्टेंट है सर दैट इज म्यूचुअल एक्सक्लूजन अ वेरी सिंपल आईडिया इट सेज व्हाट नो टू प्रोसेस शुड बी प्रेजेंट
इनसाइड अ क्रिटिकल सेक्शन एट द सेम टाइम दैट इज ओनली वन प्रोसेस इज अलाउड टू क्रिटिकल सेक्शन एट एनी इंस्टेंस ऑफ टाइम
एंड दैट इज अ वेरी कॉमन सेंस थिंग भाई जब दो लोग होंगे एक ही टाइम पे होंगे शेयर डाटा को एक्सेस करने की कोशिश करेंगे तो
सर लड़ाई तो होगी होगी ना तो एक काम करते हैं लड़ाई की जड़ी खत्म कर देते हैं हम ये नहीं कह रहे कि आप करो मत प्रोसेस को भी
किसी शेयर्ड डाटा पे काम करना है तो करेगा हम बोल रहे हैं सेम टाइम पे मत करो तो आप कितना भी स्मार्ट सॉल्यूशन लिखो लेकिन अगर
आपके सॉल्यूशन में दो प्रोसेस एक साथ क्रिटिकल सेक्शन में आ गए तो हम मान लेंगे इनवैलिड है बिकॉज इट इज वेरी रिस्की इजेंट
इट तो व्हाट इज म्यूचुअल एक्सक्लूजन एक टाइम पे क्रिटिकल सेक्शन में एक ही प्रोसेस रहने वाली है बात खत्म सेकंड
प्रोग्रेस ये बड़ा स्मार्ट है इसको मैं समझा देता हूं इसमें सबसे ज्यादा कंफ्यूजन होता है प्रोग्रेस में बच्चों को
प्रोग्रेस क्या कहता है सिर्फ वही प्रोसेस क्रिटिकल सेक्शन में जाएगी या जाने के लिए कंपीट करेगी जो सच में क्रिटिकल सेक्शन
में जाना चाहती हो इंटरेस्टेड हो एक कॉमन सेंस आइडिया कभी-कभी क्या हो सकता है सर टोटल एन प्रोसेस है राउंड रॉबिन लगा दो ना
पहला जाएगा फिर दूसरा जाएगा फिर तीसरा जाएगा जब एन चले जाएंगे फिर से पहला शुरू हो जाएगा लेकिन अगर उसमें बीच में 10
प्रोसेस को जाना ही ना हो तो तो यह इनवैलिड है है ना इससे एफिशिएंसी प फर्क पड़ेगा तो प्रोग्रेस क्या कहता है सिर्फ
वही क्रिटिकल सेक्शन में जाए जो लिटरली जाना चाहता है जबरदस्ती किसी को नहीं भेजना है कुछ लोग ऐसा करेंगे आगे समझाऊ
आपको पढ़ लेता हूं नो इफ नो प्रोसेस इज एग्जीक्यूटिंग इन इट्स क्रिटिकल सेक्शन सम प्रोसेस विशेस टू एंटर द क्रिटिकल सेक्शन
अगर कोई जाना चाहता है देन ओनली दोस प्रोसेस दैट आर नॉट ए यूटिंग इन द रिमाइंडर सेक्शन कैन पार्टिसिपेट इन
डिसाइडिंग व्हिच विल एंड इन द क्रिटिकल सेक्शन बेसिकली रिमाइंडर सेक्शन की बात क्यों कर रहे हैं जो रिमाइंडर में है वो
जाना चाहता है कि नहीं जाना चाहता वो तो नहीं जाना चाहता तो ऐसे किसी प्रोसेस को हमको नहीं भेजना जो इंटरेस्टेड नहीं है यस
यानी के ओनली दोज प्रोसेस विल पार्टिसिपेट व्हिच एक्चुअली विशेस टू एंटर एक और इसमें एडिशनल पॉइंट ध्यान रखना है कुछ सॉल्यूशन
ओवर स्मार्ट खेलने के चक्कर में डेड लॉक लगा देते हैं तो अगर सिस्टम में डेड लॉक लगा तो भी हम मानेंगे प्रोसेस फेलर
प्रोग्रेस हमारा फेल हो गया यस एंड थर्ड एंड द लास्ट पॉइंट इज लाइक बाउंड वेटिंग इसका मतलब क्या है देयर एजिस्ट अ बाउंड और
अ लिमिट ऑन द नंबर ऑफ़ टाइम अ प्रोसेस इज़ अलाउड टू एंटर द क्रिटिकल सेक्शन एंड नो प्रोसेस शुड वेट
इनफाइनों चाहिए कि इनफा बाउंड वेट होना चाहिए फॉर एग्जांपल एक प्रोसेस है p24 सपोज वो कहता है मेरे को क्रिटिकल सेक्शन
में जाना है रिक्वेस्ट कर रहा है तो क्या इसके रिक्वेस्ट करने के बाद हो सकता है कोई दूसरा प्रोसेस पी 17 10000 बार
क्रिटिकल सेक्शन में जाके बाहर आ जाए नहीं आप मुझे टाइम बताएंगे या काउंट बताएंगे कि आपका फॉर एग्जांपल 15th नंबर आपका है तो
इतने न समय के अंदर आपका नंबर आ जाएगा कोई दूसरा प्रोसेस ऐसा नहीं जाते जा रहा है जाते जा रहा है इस बेचारे का नंबर ही नहीं
आ रहा तो जो हमारा वेट है वो वेट कैसा होना चाहिए बाउंड होना चाहिए अब इसमें एक पॉइंट और बता देता हूं इन तीन
क्राइटेरियास में जो पहले दो हैं ये डायरेक्ट क्वेश्चन पूछ लेता है म्यूचुअल एक्सक्लूजन एंड प्रोग्रेस ये हमारे हैं
मैंडेटरी टेरिया यानी कि अगर आपने यह ऊपर के दोनों क्राइटेरिया सेटिस्फाई करे म्यूचुअल एक्सजन और प्रोग्रेस तो मान
लेंगे आपका सॉल्यूशन वैलिड है कोई प्रॉब्लम नहीं जो थर्ड क्राइटेरिया है हमारा बांडेड वेट ये हमारा ऑप्शनल है
डिजायरेबल है अगर हो तो अच्छा अगर नहीं हो तो भी कोई बात नहीं है तो अगर कोई प्रोसेस सिर्फ दो क्राइटेरिया भी सेटिस्फाई कर दे
दो मतलब ऐसा नहीं नीचे के दो ऊपर वाले दोनों न म्यूचुअल एक्सक्लूजन और प्रोग्रेस तो हम बोलेंगे सॉल्यूशन वैलिड है यस ये एक
एडिशनल पॉइंट यही मैंने बताया यहां पे आपको बता दिया अब सॉल्यूशन पे आ जाते हैं कैसे सॉल्व करेंगे अभी सॉल्यूशन की बात
नहीं की थी आप समझ रहे हैं ना यह जो भी हमने पढ़ा तो सिर्फ क्राइटेरिया था अभी सॉल्यूशन पढ़ेंगे तो सॉल्यूशन में एक
आईडिया तो यह है कि हम यू नो पहले मुकाबल सिस्टम में कितनी प्रोसेस है सिस्टम में तो सर बहुत सारी प्रोसेस हो सकते हैं सपोज
करिए p1 से लेके pn4 सॉल्यूशन पे और यहां पर एक सॉल्यूशन है टर्न वेरी वेरिएबल का फ्लैक का पीटरसन
सॉल्यूशन या इसका एक और वेरिएंट है डेकर्स एल्गोरिथम मैं तीनों चारों की बात करूंगा बड़े पॉपुलर है कॉम्पिटेटिव एग्जाम में
सेमेस्टर्स में डायरेक्ट क्वेश्चन में पूछता है पांच नंबर का 10 नंबर का पहले इसके ऊपर बात करेंगे एंड देन हमारा जो
सीमा फर्स है साथ में जो क्लासिकल प्रॉब्लम है है ना प्रोड्यूसर कंज्यूमर बाउंडिंग बफर वो सब सॉल्व करेंगे एंड देन
मैं बात करूंगा टेस्ट एंड सेट की तो सबसे पहले बात करते हैं अभी टू प्रोसेस सॉल्यूशन के बारे में तो चलिए अभी टू
प्रोसेस सॉल्यूशन में जैसे मैंने बोला दो-तीन अलग-अलग आइडियाज है एक-एक के तीनों आईडिया डिस्कस करते हैं पहला आईडिया है
यूजिंग अ टर्न वेरिएबल दो प्रोसेस में सॉल्व करते हैं तो कैसे करते हैं कैसे आपस में सिंक्रोनाइज करते हैं एकएक करके देखिए
पूरा कोड हमने लिखा हुआ है क्या रिसोर्स हम यूज कर रहे हैं हमारे पास एक टर्न वेरिएबल है बुलियन नेचर का बुलियन नेचर का
तो दो ही वैल्यू उसके हो सकते हैं या तो जीरो या तो वन तो मान लीजिए मैं यहां पर लिख लेता हूं लेट मी से कोई भी वैल्यू से
स्टार्ट करते हैं रैंडम इनिला इज रैंडम तो लेट मी स्टार्ट विद जीरो अब आप देखो दो प्रोसेस है p न और p1 वाइल वन लिखा है
ताकि जब चाहे जितनी बार चाहे घूम सकते हैं और रन करके देखते हैं मान लेते हैं मैं पहली प्रोसेस चेक कर रहा हूं क्या अ यू नो
p नॉ अच्छा इफ टर्न इज नॉट इक्वल टू ज जीरो मजे की बात क्या इक्वल टू नहीं चेक करा नॉट इक्वल टू चेक कर रहा तो आप मुझे
बताओ फिलहाल टर्न की वैल्यू क्या है रो 0 इज नॉट इक्वल टू 0 कंडीशन ट्रू या कंडीशन फॉल्स कंडीशन फॉल्स कंडीशन फॉल्स होगा आप
लूप में रहेंगे कि लूप के बाहर आ जाएंगे आप लूप के बाहर आ जाएंगे और प्रोसेस p0 जो है वो बड़े आराम से देखिए पहुंच गया
क्रिटिकल सेक्शन में एक चीज जो नोटिस करने वाली है यह बाकी के जो इंस्ट्रक्शन है वाइल के अंदर नहीं लिखे हुए हैं यह वाइल
लूप दरअसल एक ट्रैप है आप देखिए वाइल के बाद ही सेमीकलन है तो इट इज लाइक जैसे वाइल लूप काम करता है ना मैं जाऊंगा मैं
कंडीशन चेक करूंगा कंडीशन अगर ट्रू होगी तो मैं बॉडी के पास जाऊंगा एंड देन आई गो बैक कंडीशन अगर फॉल्स होगी मैं आगे जाऊंगा
अगर मैं यहां से बॉडी हटा दूं तो देर यू सी नाउ अभी एक लूप बन जाएगा अब एक लूप बन जाएगा इजेंट इट तो वही यहां पर हो रहा है
तो खैर मैं लूप में नहीं फंसा मैं क्रिटिकल सेक्शन में हूं एक बार चेक कर लेते हैं अगर इस समय कंटेक स्विच हो भी
गया हो सकता है क्या सर कांटेक्ट स्विच तो कभी भी हो सकता है अगर इस समय कॉन्टेक्ट स्विच होता है तो मुझे बताएं क्या p1
क्रिटिकल सेक्शन में जा पाएगा ट्राई कर लेते हैं टर्न की वैल्यू जीरो है p1 आएगा आएगा आएगा 0 इज नॉट इक्वल टू 1 कंडीशन
ट्रू के कंडीशंस फॉल कंडीशन ट्रू और जब कंडीशन ट्रू होगी तो मुझे बताओ p1 इसी लूप में घूमता रहेगा कि क्रिटिकल सेक्शन में
जा पाएगा सर इसी लूप में घूमता रहेगा इजन इट मान लो कुछ कु समय के बाद p1 बेचारा यहां पर फंसा हुआ है कंट्रोल दोबारा p नॉ
के पास आता है क्रिटिकल सेक्शन एंजॉय करने के बाद p1 बाहर आता है बट यहां देखिए क्या कर रहा है टर्न इक्वल टू 1 अब जैसे ही ये
टर्न करेगा वन और सोचिए कंट्रोल दोबारा p1 को मिलेगा ये मैं एक और काम करके दिखाता हूं टर्न वन है लेट मी से रिमाइंडर सेक्शन
में गया घूम के वापस आया इसका मन है फिर दोबारा क्रिटिकल सेक्शन में जाना चाहता है बट बताओ जा पाएगा क्या टर्न की वैल्यू है
वन वन इज नॉट इक्वल टू 0 कंडीशन ट्रू अब ये यहां हां पर फस जाएगा इसका मतलब अब नंबर p1 का आएगा वन इज नॉट इक्वल टूव
कंडीशन फॉल्स p1 चला जाएगा क्रिटिकल सेक्शन के अंदर थोड़ा सा आप उसको स्टडी करेंगे तो आपको क्या समझेगा 100% यहां पर
म्यूचुअल एक्सक्लूजन है पहला मैंडेटरी क्राइटेरिया एक बार में दोनों प्रोसेस p न और p1 क्रिटिकल सेक्शन में नहीं जा पाएंगी
ये बात बिल्कुल तय है दूसरी बात लेकिन जो नोटिस करने वाली है यहां पर ना स्ट्रिक्ट अल्टरनेशन है जब आप नीचे जाते हैं टर्न कर
देते हैं वन यानी कि अब अगला नंबर आता है p1 का p1 जब नीचे जाता है टर्न करता है जीरो यानी कि अगला नंबर आता है किसका p न
का ये दोनों एक दूसरे को कैच कैच नंबर देते रहेंगे राउंड रॉबिन है p1 के बाद p न p न के बाद p1 फिर p न के बाद p1 फिर p1
के बाद p न इसे बोलते हैं स्ट्रिक्ट अल्टरनेशन और ध्यान से सोचेंगे ये प्रोग्रेस नहीं है क्यों इमेजिन करो हमने
तो यहां प्रोसेस से पूछा ही नहीं मान लो अगर p1 को क्रिटिकल सेक्शन में जाना ही ना हो सोचो ऐसा हो सकता है क्या हां हो तो
सकता है लेकिन उस केस में क्या p न जो है वह 10 चक्कर लगा पाएगा मेरे ख्याल से नहीं लगा पाएगा देखो ना कैसे लगाएगा जैसे ही
बाहर आएगा टर्न वन किया अब तो जबरदस्ती है कि p1 को जाना ही पड़ेगा p1 बाहर आएगा p नॉ को जाना पड़ेगा तो यहां पर जैसे हम बोल
रहे थे प्रोग्रेस जो सच में जाना चाहता है वह जाए जबरदस्ती ना हो यहां पर जबरदस्ती है यहां पे स्ट्रिक्ट अल्टरनेशन है इसका
मतलब यह सॉल्यूशन वैलिड नहीं है अ अजीब बात है आप सोचोगे वैलिड नहीं है तो पढ़ा क्यों पढ़ते हैं इसको आईडिया समझने के लिए
ताकि आगे जब सही आईडिया डेवलप करें तो क्लेरिटी हमको हो इस बात को ध्यान से दोबारा सुनिए मैं क्या बोल रहा हूं कि
यहां पर म्यूचुअल एक्सक्लूजन सेटिस्फाई किया कोई दिक्कत नहीं बट प्रोग्रेस फेल हो गया है और ये दोनों मैंडेटरी क्राइटेरिया
थे इसमें अगर एक भी फेल होता है तो सॉल्यूशन को हम फेल मान लेते हैं सो दैट इज अ रीजन यह काम नहीं करेगा इसी का एक
नेक्स्ट वेरिएंट है तो ये मैंने बता दिया दिस इज नॉट अ गुड सॉल्यूशन इसी के एक नेक्स्ट वेरिएंट है जहां पर हम सीखते हैं
कि या टर्न वाले कोड में हमने गलती क्या की हमने क्या गलती की हमने गलती यह की हमने प्रोसेस पूछा ही नहीं अपने मन से जब
बाहर निकल रहा है वो जीरो कर रहा है दूसरे वाला वन कर रहा है स्ट्रिक्ट अल्टरनेशन किया यहां पर देखिए हमने क्या किया है ऊपर
देखिए क्या लिखता हूं हियर वी यूज अ बुलियन एरे फ्लैग विथ टू सेल्स ईच ऑफ व्हिच इज इनिला टू फॉल्स तो मान लीजिए एक
एरे हमने बनाया फ्लैग अगेन बुलियन नेचर का है दो ही सेल है उसके अंदर एक सेल है प्रोसेस p0 का एक सेल है प्रोसेस p1 का और
इनिशियल वैल्यू नोटिस करिए दोनों के अंदर है फॉल्स अब यहां पर करना क्या है नोटिस करिए करना हमको ये है कि जब भी कोई
प्रोसेस देखे प नो को स्टडी कर लेते हैं इस बार रैंडम इनिश इज नहीं करना फॉल्स इनिश इज करना है जब भी किसी प्रोसेस को
क्रिटिकल सेक्शन में जाना है नोटिस करिए क्या करता है तो वो सबसे पहले फ्लैग ऑफ जीरो में ट्रू लिख रहा है मानो लक्सर बता
रहा है कि आई एम इंटरेस्टेड प्लीज मुझे जाने दो तो यहां पर देखिए ये वैल्यू हमने कर दिया ट्रू यस अब ये क्रिटिकल सेक्शन
में जाना चाहता है पर फिर देखिए कितना स्मार्ट है कितना अच्छा है वाइल फ्लैग वन और फिर वही सेमीकलन यानी कि यह ट्रैप बना
रहा है कह रहा है मैं जाना तो चाहता हूं बट क्या मेरा भाई p1 तो नहीं जाना चाहता क्या फ्लैग ऑफ वन में ट्रू तो नहीं है
सोचिए अगर फ्लैग ऑफ वन में ट्रू होता तो यही लूप करता रहता बट फिलहाल नहीं है फिलहाल सिर्फ यही यहां पे फॉल्स है कंडीशन
फॉल्स हुआ p नॉ बड़े आराम से पहुंच गया क्रिटिकल सेक्शन में एक बार ट्राई कर लेते हैं म्यूचुअल एक्सशन फेल तो नहीं होगा जब
p1 शुरू करेगा देखिए वो भी यही कर रहा है वो क्या कर रहा है फ्लैग ऑफ वन में ट्रू वो कह रहा है भैया मैं भी जाना चाहता तो
ट्रू मार्क कर दिया देन फ्लैग जीरो अगेन चेक कर रहा क्या मेरे भाई का फ्लैग ट्रू तो नहीं है ट्रू है ट्रू है तो मैं इसके
आगे नहीं जाऊंगा p1 यहीं पे वेट करता रहेगा और म्यूचुअल एक्सक्लूजन यहां पर मुझे वायलेट होता नजर नहीं आ रहा कुछ समय
के बाद सोच क्या होगा p न जब बाहर आएगा वो सबसे पहले फ्लैग ऑफ ज जीरो में फॉल्स करेगा यह बताने के लिए कि उसका मन भर गया
वो क्रिटिकल सेक्शन से बाहर आ गया और यह लो मैंने अपना फ्लैग उठा के फाल्स कर दिया और मान लो वो घूम रहा है रिमाइंडर सेक्शन
में इंटरसेक्शन में अब दोबारा इमेजिन करिए इस समय अगर कांटेक्ट स्विच होता है क्या अभी p1 को एंट्री मिलेगी 100% मिल जाएगी
क्योंकि यहां पर फ्लैग फॉल्स है तो फ्लैग ऑफ ़ इ इ ू फॉल्स एंड नाउ देर यू सी p1 वेरी क्लीयरली में एंटर इनटू द क्रिटिकल
सेक्शन मान रहे हैं तो म्यूचुअल एक्सक्लूजन जो है वो यहां पर 100% काम कर रहा है क्राइटेरिया सेटिस्फाई हो गया अगला
है प्रोग्रेस प्रोग्रेस अगर मैं आपको ध्यान से समझाऊं वो भी अच्छा काम करता है ऐसा लगेगा पहले स्टार्टिंग में स्टार्टिंग
में दोनों का फॉल्स से मान लीजिए मैं p1 का ट्रू कर देता हूं p नॉ का अब ये आया इसने ट्रू किया क्रिटिकल सेक्शन एंजॉय
किया क्योंकि मान लीजिए p1 का जो फ्लैग है वो फॉल्स है तो कोई प्रॉब्लम नहीं है फॉल्स हो गया बाहर आया एंजॉय किया आके
अपना फ्लैग फॉल्स किया मेरा पूछना यह है अगर मैं एक राउंड मार के दोबारा आऊं और फिर से अपना फ्लैग ट्रू कर लूं कोई
प्रॉब्लम होगा क्या आई डोंट थिंक कोई प्रॉब्लम है फिर से ट्रू करेगा भाई अभी भी इंटरेस्टेड नहीं है अगेन इट विल गो इन द
क्रिटिकल सेक्शन पहले जो टर्न वेरिएबल वाला सॉल्यूशन था ना वहां ऐसा नहीं हो रहा था नोटिस करो आप वहां पर क्या था p न के
बाद p1 p1 के बाद p नॉ बट यहां पर हमने इंप्रूवमेंट किया है अगर दूसरा प्रोसेस इंटरेस्टेड ही नहीं है अगर p1 इंटरेस्टेड
नहीं है तो अब p नॉ जब चाहे जितनी बार चाहे राउंड लगा सकता है जो कि रियलिटी में प्रोग्रेस है सिर्फ वही पार्टिसिपेट कर
रहा है जो जाना चाहता है बट कभी-कभी ओवर स्मार्ट खेलने के चक्कर में गलती हो जाती है कैसे नोटिस करिए प्रोग्रेस की एक
कंडीशन और थी क्या थी बताओ डेड लॉक नहीं लगना चाहिए अब इमेजिन करो स्टार्टिंग में दोनों का फ्लैग फॉल्स है कोई प्रॉब्लम
नहीं है p न ने एग्जीक्यूशन चालू किया फ्लैग ऑफ ज़ीरो में ट्रू मार्क कर दिया तो ये आया इसने ट्रू मार्क किया अब ये आगे
जाके मान लो कंडीशन रन करने ही वाला था बट मैं दो प्रोसेस के बीच में तो कॉन्टेक्ट स्विच कर सकता हूं ना हां कर सकते हैं
किसी भी प्रोसेस को कभी भी कॉन्टेक्ट स्विच किया जा सकता है ओस अपना काम कर रहा है सीपी शेड्यूलिंग अपना काम कर रहा है p1
ने रन करना चालू किया उसने भी अपने फ्लैग को देखिए ट्रू मार्क कर दिया और ट्रू मार्क करने के बाद अब जब ये आगे इस वाइल
को चेक करेगा फ्लैग जीरो बताओ फ्लैग जीरो पर क्या मिलेगा सर फ्लैग जीरो ट्रू है तो ये आगे नहीं जा पाएगा p1 यहां पे फंस
जाएगा चार्ज दोबारा p न को दो क्या p न आगे जा पाएगा मेरे को लग रहा है p नो भी आगे नहीं जा पा रहा सर वो भी यहां पर फंस
गया एंड दे यू सी देर इज अ पॉसिबिलिटी ऑफ डेड लॉग डेड लॉग लग गया अभी कोई भी नहीं जा पा रहा यार ये कैसी प्रोग्रेस है दोनों
प्रोसेस जाना चाहते हैं कम से कम एक को तो भेजो टर्न तो ऐसा कर रहा था यह तो किसी को भी नहीं भेज रहा सो दैट इज आल्सो वायलेशन
ऑफ प्रोग्रेस क्यों प्रोग्रेस के अंदर दोनों चीजें थी खैर हम ट्राई कर रहे हैं अब आप बोलेंगे अगेन सर फिर क्यों पढ़ा
सीखने के लिए पढ़ा तो यह सॉल्यूशन भी इनवैलिड है इसमें भी प्रोग्रेस फेल हुआ है लेकिन हां अगर आप ध्यान से सोचेंगे आप
समझेंगे पहले वाले से रिलेटिवली बेटर है अब अगर इन दोनों वेरिएंट्स को मिलाएं तो एक तीसरा सॉल्यूशन पहले पीटरसन सॉल्यूशन
पढ़ाता हूं वो ज्यादा पॉपुलर है ज्यादा इंपॉर्टेंट है एग्जाम पॉइंट ऑफ व्यू से जो टर्न भी यूज़ करता है फ्लैग भी यूज करता
है और शायद ये वैलिड सॉल्यूशन हो कैसे चलिए देखते हैं तो चलिए अभी देखते हैं थर्ड एंड फाइनल अप्रोच जहां पे हम टर्न और
फ्लैग दोनों यूज करेंगे बहुत फैंटास्टिक आईडिया होने वाला है और पीटरसन सॉल्यूशन बहुत कमाल का केस है इसके ऊपर बहुत सारे
क्वेश्चंस आपको मिलेंगे एग्जाम में चलिए एक-एक करके गेम शुरू करते हैं तो आईडिया में पहले से पता है टर्न एक बाइनरी
वेरिएबल होने वाला है जिसका ओरिजिनल वैल्यू जीरो भी हो सकता है वन भी रैंडम हम इसको स्टार्ट करते हैं और फ्लैग हमारे पास
एक एरे है बुलियन एरे दोनों प्रोसेस का एक-एक सेल है और यहां पे हम इन स्टार्ट करते हैं किससे
फॉल्स से तो लेट मी टेक ए आईडिया अगेन परमिट में कि मैं इसको जीरो से चालू करूं शुरू करता हूं मान लेते हैं पी नो ने
शुरू किया टिंग टिंग टिंग टिंग टिंग सबसे पहले पी नो ने बताया कि मेरे को जाना है और जाना है तो हम पता है क्या करना होता
है अपने फ्लैग को ट्रू मार्क करेगा तो पी नोट ने बोल दिया आ एम इंटरेस्टेड आई एम गोइंग इनसाइड द क्रिटिकल सेक्शन बट देखिए
खूबसूरती कितनी मजेदार बात है मैं क्रिटिकल सेक्शन में जाना चाहता हूं बट इस बार ये पूछ नहीं रहा कंपर नहीं कर रहा
असाइन कर रहा है क्या बोल रहा है टर्न इक्वल टूव लेकिन अब हमने वैसे जीरो इनिशिएटिव
लूप है यह सेमीकलन के साथ है इसका मतलब ये एक ट्रैप है और ट्रैप की कंडीशन देखिए बहुत मजेदार कंडीशन है क्या कह रहा है दो
है कंडीशन और बीच में लगा है एंड टर्न इ इव एंड फ्लैग इ इक्व इ टू यानी के मैं यह कंडीशन अगर ट्रू हुई तो मैं यही फसा रह
जाऊंगा मैं लूप में नहीं जाऊंगा तो पी नॉ कह रहा है मैं लूप में नहीं जाऊंगा अगर टर्न मेरे भाई के पास है यानी कि टर्न
इक्व इ 1 है दूसरा फ्लैग ऑफ वन इज आल्सो ट्रू अगर वो जाना चाहता है तो भी अब यहां देखो मजे की बात अभी क्योंकि गेम स्टार्ट
हुआ है तो फ्लैग ऑफ वन में तो फिलहाल फॉल्स है अब अगर एंड में एक कंडीशन भी फॉल्स हो गई तो दूसरा ट्रू फॉल्स कोई फर्क
नहीं पड़ता तो क्योंकि अभी फ्लैग ऑफ वन फॉल्स है कंडीशन फॉल्स पूरा गेम फॉल्स हुआ और लूप अगर फॉल्स है कंडीशन फॉल्स है हम
मा लूप से बाहर और बड़े आराम से पी नो भाई साहब पहुंच गए क्रिटिकल सेक्शन में तो धीरे-धीरे दो-चार बार चलाएंगे ना तो
कंडीशन का फील आना शुरू होता है इतना खूबसूरत तरीके से लिखा है कि अगर वो जाना ही नहीं चाहता दूसरा प्रोसेस तो फिर टर्न
का कोई मतलब नहीं है बिकॉज़ एंड करेंगे तो फॉल्स ही हो जाएगा अगर वो जाना चाहता है तो इस बार डेड लॉक नहीं लगेगा इस बार वो
फाइनल डिसीजन टर्न लेने वाला है कि फिर ये देखा जाएगा टर्न किसका है चलो फिलहाल p नोट बाहर आ गया चलिए ट्राई करते हैं
क्रिटिकल सेक्शन को वायलेट करने की p न चालू करता हूं p न ने कहा मैं भी जाना चाहता हूं तो टर्न की वैल्यू हो गई ट्रू
फ्लैग की वैल्यू और यहां से यह भी अपने भाई ज स ही है इसने बोला मैं जाना चाहता हूं बट टर्न दूंगा अपने भाई को तो उसने
टर्न की वैल्यू देखिए क्या कर दिया जरो एंड नाउ यू कैन लुक एट द कंडीशन क्या टर्न की वैल्यू ज़ीरो है हां है हमने ही करी है
क्या फ्लैग भी ट्रू है हां ट्रू है क्योंकि वो तो क्रिटिकल सेक्शन के अंदर अब दोनों कंडीशन ट्रू है तो बोलो p न जा
पाएगा p1 जा पाएगा कि नहीं नहीं नहीं जा पाएगा यहीं पे बिजी वेट करता रहेगा इजेंट फाइनली आप देखेंगे तो मौका किसको मिलेगा
अगेन p नॉ को जब p नो बाहर आ रहा है क्रिटिकल सेक्शन से तो देखिए फ्लैक को कर रहा है फॉल्स की हां अभी मेरा वन भर गया
और अब जैसे ही ये फॉल्स होगा अगन अगर दोबारा p1 को मौका मिलेगा तो इस बार अगर फ्लैग ही फॉल्स है तो टर्न का कोई लेना
देना नहीं है एंड देन दिस टाइम p1 विल गेट एंट्री इन द क्रिटिकल सेक्शन है ना तो म्यूचुअल एक्सक्लूजन आप जितनी बार चला लो
जैसे चाहे चला लो कुछ भी इसमें वैरायटी नहीं होगी और बहुत आराम से यह क्रिटिकल सेक्शन के अंदर चले जाए जाएंगे पॉइंट नंबर
वन एक बार में एक ही जा पाएगा अब जरा वो वाला सिनेरियो देख लेते हैं जहां प्रोग्रेस का लेशन था अगर p1 इंटरेस्टेड
ही नहीं है और अपने फ्लैग में फॉल्स करके बैठा है मुझे बताओ उस केस में क्या p नॉ मल्टीपल राउंड लगा सकता है क्या हां लगा
सकता है सर कोई प्रॉब्लम नहीं क्योंकि अगर ये कंडीशन ही फॉल्स है तो पूरा वाइल बार-बार फॉल्स होता रहेगा एंड वी कैन हैव
मल्टीपल इटरेशंस इन द लूप तो ये भी काम चलेगा बिल्कुल सही बात है इसमें कोई प्रॉब्लम नहीं है क्या यहां डेड लॉक लग
सकता है इस बार डेड लॉक नहीं लगेगा क्योंकि अगर मैं टर्न वन या यहां टर्न रो करने के बाद कांटेक्ट स्विच कर भी दूं भले
ही आप ऐसा केस बना लो कि दोनों का फ्लैग जो है वो ट्रू हो लेकिन टर्न तो बुलियन है उसकी एक वैल्यू होगी या तो रो या तो वन
जिसके पास होगी वो अंदर जाएगा जिसके पास नहीं होगी वो अंदर नहीं जा पाएगा तो यह आपके लिए प्रॉब्लम क्रिएट नहीं करेगा इस
बार तो फाइनली दो सॉल्यूशन दोनों वैलिड है यानी कि दोनों क्राइटेरिया सेटिस्फाई हुए म्यूचुअल एक्सक्लूजन भी और प्रोग्रेस भी
तो ये जो हमारा पीटर सॉल्यूशन जिसे हम बोलते हैं याद रखिएगा जहां टर्न न फ्लैग और यह तो कोड दो-तीन बार लिख के देखेंगे
समझ लेंगे तो मजा ही आ जाएगा लिख के देख लेंगे तो भी आपको याद हो जाने वाला है तो दिस थिंग विल मेक सेंस और यह 100% बहुत
शानदार तरह से काम करेगा एक इसी का छोटा सा बेसिक वर्जन है जिसे हम बोलते हैं डेकर्स एल्गोरिथम ये भी काफी मिलता जुलता
है एक बार इस अप्रोच को भी आप देख ले वो आपने समझ लिया तो यह भी समझ आएगा कोई भी प्रोसेस है पीआई अब सबसे पहले देखिए उसने
अपने फ्लैग में ट्रू किया पहले की तरह बताने के लिए में जाना चाहता हूं फिर इस बार य एक्चुअल वाइल लूप है इसलिए देखिए
मैंने हिरर की भी यूज़ कि है वाइल फ्लैग ऑफ जे अगर मेरा भाई भी मेरा भाई जो है वह है प्रोसेस पीजे अगर वो भी जाना चाहता है
तो अगर यह फॉल्स हुआ तो देखिए मैं सीधे पहुंच जाऊंगा क्रिटिकल सेक्शन में अगर भाई जाना चाहता है तो मैं जाके चेक करूंगा
क्या टर्न इ इल इ j है अब फिर वही बात जब दोनों के फ्लैक ट्रू है तो गेम किसके पास आएगा टर्न के पास अगर टर्न भी उसका है तो
मैं जाऊंगा और देखिए कितनी खूबसूरती से लिखता है फ्लैग ऑफ आ इ टू फॉल्स कह रहा है कि फिर इसका मतलब मैं इंटरेस्टेड नहीं हूं
और मैं यहां पर तब तक घूमता रहूंगा जब तक जो दूसरा प्रोसेस है उसका टर्न रहता है टर्न इ इक्ट j रहेगा जैसे ही टर्न की
वैल्यू आई होगी ये कंडीशन फॉल्स होगी मैं बाहर आऊंगा और फिर से मैं आके बोलूंगा कि हां अब मैं जाना चाहता हूं फ्लैग ऑफ आ इ
टू ट्रू फिर बाहर आके चेक करूंगा क्या फ्लैग ज फॉल्स हो गया अगर फॉल्स हो गया होगा देन आई विल गो इनसाइड अदर वाइज यही
लूप करता रहूंगा एज सून एज वी एंटर इनटू क्रिटिकल सेक्शन बाहर निकलते हुए देखिए टर्न का वैल्यू क्या किया है j यह बताने
के लिए कि मेरा हो गया है अभी मैं टर्न भी उसको देता हूं तो अपने फ्लैग को भी क्या कर लेता हूं फॉल्स रिमाइंडर सेक्शन है
बाकी डू वाइल ट्रू है जब तक चाहूं जितनी बार चाहूं घूम सकता हूं तो दोनों ही सॉल्यूशन काम करते हैं बट जितना मैंने
देखा है एग्जाम पॉइंट ऑफ व्यू से कॉम्पिटेटिव एग्जाम से पीटरसन इज मोर पॉपुलर अब एक बात
कंक्लूजन भी सॉल्यूशंस हमने काम किए क्या नोटिस करने वाली बात है यह सारे के सारे सारे सॉल्यूशन जो है टू प्रोसेस सॉल्यूशन
है यानी कि एक बार में दो ही प्रोसेस सॉल्व कर सकते हैं दो ही प्रोसेस काम कर सकती है बट इन अ रियल सिनेरियो कंप्यूटर
में कितने प्रोसेस होते हैं वी कैन हैव n नंबर ऑफ प्रोसेस और ए नंबर ऑफ प्रोसेस अगर सॉल्व करना है तो फिर बात करनी पड़ेगी
सीमा फोर्स की तो चलिए डिस्कशन स्टार्ट करते हैं सीमा फोर्स का चलिए नाउ टॉकिंग अबाउट सीमा फोर तो सीमा फोर्स इस प्रॉब्लम
को कैसे सॉल्व करेंगे और क्या अप्रोच होगी बहुत मजेदार आईडिया एक-एक करके नोटिस करिएगा देखिए पहली बात तो समझनी है सीमा
फोर्स कोई डाटा टाइप नहीं है जैसे इंटी जर है फ्लोट है कैरेक्टर है सीमा फोर्स आर आल्सो सिंपल इंटी जर वेरिएबल ये सिंपल
इंटी जर वेरिएबल है बट इसका एक सेपरेट गेम है गेम क्या है अपार्ट फ्रॉम इनिश इइ जशन एक बार आपने इनिश इज कर लिया उसके बाद आप
इसको बार-बार एक्सेस नहीं कर सकते और दो ही ऑपरेशन है जो इसपे अलाउड है फॉर एग्जांपल अगर सीमा 4 की वैल्यू है 10 फॉर
एग्जांपल तो आप ये नहीं बोलोगे कि सर इसको 10 से मल्टीप्लाई कर सकते हैं क्या इसको टू से डिवाइड कर सकते हैं क्या नहीं दो ही
ऑपरेशन अलाउड है एक हम बोलते हैं वेट ऑफ s और एक बोलते हैं सिग्नल ऑफ s वेट का मतलब -1 करना सिग्नल का मतलब + व करना वो भी
कैसे एक्सक्यूज मी वो भी कैसे करना है किस ऑर्डर में करना है एक-एक करके समझते हैं तो सीमा फर आर सिंक्रोनाइजेशन टूल्स व्हिच
आर यूज्ड एंड यूजिंग व्हिच वी विल अटेंप्ट एंड प्रोसेस सॉल्यूशन जैसे मैं बोल रहा हूं दे आर सिंपल इंटी जर वेरिएबल कोई
फैंसी बात नहीं है बट अपार्ट फ्रॉम इनिश इजेशन इट कैन बी एक्सेस ओनली थ्रू टू स्टैंडर्ड एटॉमिक ऑपरेशन जो मैं बोल रहा
हूं वेट एंड सिग्नल और यहां पर एक शब्द देखिए बड़ा इंपॉर्टेंट आया बीच में एटोमिसिटी इसका मतलब जब वेट या सिग्नल कर
रहे तो एटॉमिक मतलब आइर फुल और नन कई बार हमने ये टर्म कंप्यूटर साइंस में ऑब्जर्व करते हैं उसका बीच में कांटेक्ट स्विच
नहीं कर सकते तो यहां पे देखिए काम क्या करता है जब आप सिग्नल कॉल करेंगे फॉर एग्जांपल मान लीजिए मेरा सीमा फर की
वैल्यू रो है कोई कंडीशन नहीं है कोई ड्रामा नहीं है आप जाओगे s+ प् यानी कि + व करोगे बाहर आ जाओगे तो वैल्यू आराम से
हो जाएगी रो से वन कोई फैंसी बात नहीं है जब आप वेट में आओगे यह थोड़ा मेरा को स्मार्ट लगा फॉर एग्जांपल s की वैल्यू वन
है मैं वेट ऑफ s कॉल करूंगा एक कंडीशन है वन फिलहाल वन है ना 1 इज < = 0 क्या वन 0 के बराबर या ज़ीरो से कम है हां जी है तो
अ वन ओ सॉरी नहीं है सॉरी वन इज नॉट लेस दन और इक्वल टू 0 नहीं है कंडीशन फॉल्स आप लूप से बाहर ये भी ट्रैप है आप बाहर s -
माइनस वैल्यू हो गया रो एक बार और ट्राई करूं क्या रो जीरो के कम या बराबर है हां है कंडीशन ट्रू है तो यहीं घूमते रहेंगे
आगे नहीं जाने देगा इसका मतलब वाइल लूप जो है खास करर केस केस में जब हम वेट कर रहे हैं यह आपको ट्रैप कर सकता है कब जब आप
वैल्यू को ज़ीरो से नीचे लेके जाने की कोशिश करेंगे देखिए कहां पे ट्रैप कर रहा है तो यह सॉल्यूशन मजेदार हो सकता है अभी
सॉल्यूशन नहीं है यह तो सिर्फ सीमा फोर की डेफिनेशन है उस टूल की डेफिनेशन जो हम यूज़ करेंगे तो वेट और सिग्नल दोनों
डेफिनेशन आप समझ गए अब मैं आपको डायरेक्टली लेके चलता हूं सॉल्यूशन पे एंड नाउ दिस इज़ अ जेनेरिक सॉल्यूशन फॉर अ
प्रोसेस पीआई सर पीआई मतलब अभी तो हम प्रोसेस p न और p1 की बात कर रहे थे क्योंकि दो प्रोसेस सॉल्यूशन था अभी एन
प्रोसेस सॉल्यूशन की बात कर रहा हूं तो इन जनरल बात कर रहा हूं यस तो देखिए कैसे काम करेगा कोई भी प्रोसेस आया हमने बोला वाइटी
इनिशियल सेक्शन चल रहा है अब देखिए यह पूरा गेम है किसी भी प्रोसेस को जब अंदर जाना है तो अंदर जाने से पहले वेट ऑफ एस
करना है बाहर आना है तो बाहर आते हुए सिग्नल ऑफ एस करना है और यहां पर इस सॉल्यूशन के लिए हम सीमा फर को हमेशा
इनिला इज करेंगे वन से ये बड़ा पोर्टेंट है अगर जीरो से करोगे तो भी गड़बड़ होगा टू से करोगे तो भी गड़बड़ होगा सिर्फ वन
से इनिश इइ करना है ठीक है चलो वन से इनिला करते हैं अब देखते हैं क्या होता है पहली प्रोसेस आई लेट मी से p नॉ p1 ऐसा
करके बहुत सारे प्रोसेस हमारे पास है पहली प्रोसेस आए अब जिसको भी अंदर जाना है क्या अटेंप्ट करना है वेट ऑफ s अटेंप्ट करना है
ट्राई करते हैं अभी क्योंकि फिलहाल s की वैल्यू वन है 1 इज लेसन इक्वल टू 0 कंडीशन फॉल्स है तो माइनस माइनस हो जाएगा तो s की
वैल्यू हुई जीरो और मान लीजिए p नॉ भाई साब क्रिटिकल सेक्शन में यस अब कुछ समय क्रिटिकल सेक्शन में बिताया बहुत हैप्पी
था बट अब कुछ समय के बाद कांटेक्ट स्विच हुआ कंटक्ट स्विच कभी भी हो सकता है अब p1 अटेंप्ट करेगा अब आप मुझे बताइए p1 आया
आया इनिशियल सेक्शन नाउ वेट ऑफ s अटेंप्ट करेगा p1 जरा यहां पे नजर डालिए और मुझे बताइए क्योंकि s की वैल्यू ऑलरेडी रो है
क्या इस बार वेट ऑफ s चलेगा क्या 0 इज लेसन इक्वल टू 0 कंडीशन ट्रू यहीं पे गोल-गोल घूमता रहेगा तो p1 को यू नो
क्रिटिकल सेक्शन में एंट्री नहीं मिलेगी p1 वेट कर रहा है अगर कोई दूसरा प्रोसेस p2 आया वह कर पाएगा कोई भी नहीं कर पाएगा
क्योंकि जो भी करने की कोशिश करेगा s की वैल्यू ऑलरेडी ज़ीरो है नोबडी इज अलाउड टू एंटर इनटू क्रिटिकल सेक्शन नहीं कर पाएगा
क्या करें क्या करें मान लीजिए बहुत सारे प्रोसेस यहीं पे वेट करते रहेंगे कुछ समय के बाद फाइनली पी नॉ भाई साहब का जब मन
भरेगा यह क्रिटिकल सेक्शन से बाहर आएंगे नोटिस करिए बाहर आएगा तो क्या करना है सिग्नल सिग्नल करते हुए कोई कंडीशन नहीं
कोई आईडिया नहीं सीधे + व करो ये वैल्यू हुआ 0 से वन अब मान लो कि p1 जो है अभी वो अपने रिमाइंडर सेक्शन में घूम रहा है अ
सॉरी p न p न भरया ना अब बताओ अगला कौन जाएगा कोई ऑर्डर नहीं है कोई भी जा सकता है तो जिसको भी सीपीयू मिलेगा वो वेट
अटेंड करेगा मान लीजिए p2 p1 के बाद में आया था लेकिन इसको सीपीय मिल गया अब सोचिए जैसे ही ये वेट अटेंप्ट करेगा फिलहाल इस
की वैल्यू क्या है अब आप देख रहे हैं जैसे ही ये वेट अटेंप्ट करेगा फिलहाल इसकी वैल्यू अगेन हो चुकी है वन तो वन में -1
करेंगे वैल्यू हो जाएगा रो जो कि फिलहाल बड़े आराम से हो सकता है और p2 क्रिटिकल सेक्शन में चला जाएगा फिर कोई और अटेंप्ट
करेगा बताओ जा पाएगा क्या बेसिक बात समझ आ रही है n प्रोसेसेस है इनिशिएटिव करना है एक बार में एक ही प्रोसेस जा पा
रहा है मैं जरा सारे आइडियाज याद कर लेता हूं स्टेप नंबर वन अगर सॉल्यूशन वैलिड होना है तो म्यूचुअल एक्सक्लूजन होना
चाहिए आई थिंक यूजिंग दिस सॉल्यूशन कोई भी प्रोसेस रन कर ले मेरे को तो एक बार में में दो प्रोसेस क्रिटिकल सेक्शन में जाते
हुए नजर नहीं आ रही तो म्यूचुअल एक्सक्लूजन तो पक्का होल्ड करेगा इसमें कोई डाउट नहीं है पॉइंट नंबर टू प्रोग्रेस
हमने किसी भी प्रोसेस को जबरदस्ती भेजा क्या नहीं भेजा तो नहीं सर जो एक्चुअली में जाना चाहता है वही जा रहा है अगर कोई
दूसरा प्रोसेस इंटरेस्टेड नहीं है तो एक प्रोसेस मल्टीपल राउंड लगा सकता है हां क्या यहां पर p नॉ p1 को फोर्स कर रहा है
कि बेटा मैं जा चुका हूं अब तुम जाओ फिर p1 प2 को भेजेगा ऐसा कोई राउंड रॉबिन कर रहे हो या स्ट्रिक्ट अल्टरनेशन कर रहे हो
ऐ ऐ भी नहीं हो रहा प्र डेडलॉक भी मेरे को नजर नहीं आ रहा है तो यह फाइनली प्रोग्रेस भी अचीव करता है और अचीव करता है तो इट्स
अ बिग सक्सेस बिकॉज नाउ वी हैव अ सॉल्यूशन व्हिच कैन वर्क ओवर एन प्रोसेस ये टू प्रोसेस सॉल्यूशन है विद द हेल्प ऑफ अ
सीमा फोर्स और ये एन प्रोसेस में सिंक्रोनाइजेशन कर सकता है अब दो मैंडेटरी क्राइटेरिया तो फुलफिल हो गए सॉल्यूशन
वैलिड है बट तीसरा क्या था याद करो तीसरा है हमारा बाउंड वेट लद इफ यू यू नो इसको डिटेल में आप समझोगे तो आपको समझेगा बाउंड
ड वेट नहीं है यहां पे क्यों जैसे मैंने पहले भी बताया ना जब कोई प्रोसेस क्रिटिकल सेक्शन से बाहर आता है अगला कौन सा
प्रोसेस क्रिटिकल सेक्शन में जाएगा यह मौके पर चौका मारने वाली बात है बिकॉज जिसके हाथ में उस समय सीपीयू होगा जो पहले
वेट ऑफ एस को एंप्लॉय कर देगा वो अंदर चला जाएगा तो क्या यहां पर मैं बाउंड वेट गारंटी कर सकता हूं नहीं वो गारंटी नहीं
कर सकता बट मैं याद दिला दूं वो गारंटी करना मैंडेटरी नहीं था डिजायरेबल था बट मैंडेटरी नहीं था तो स्टिल हमारा जो
सॉल्यूशन है यूजिंग सीमा फर वो सॉल्यूशन वैलिड हो जाता है और इन जनरल बाउंड वेट गारंटी करना यानी कि स्टार्वेशन को दूर
करना आमतौर पे वैसे भी बहुत पॉसिबल हो नहीं पाता ज्यादातर केसेस में ऑपरेटिंग सिस्टम में हम वैलिडिटी पे ध्यान देते हैं
बाउंड वेट गारंटी करना मुश्किल होता है तो सीमा फोर का एक बेसिक अंडरस्टैंडिंग आपको क्लियर हो गया अब सीमा फर्स का इस्तेमाल
करके कैसे हम स्टैंडर्ड प्रॉब्लम सॉल्व करते हैं वो देखते हैं और यहां पे बहुत सारी क्लासिकल प्रॉब्लम्स हमारे पास हैं
एग्जाम में पांच पांच 10-10 नंबर में डायरेक्ट क्वेश्चन इनके ऊपर आते हैं जैसे रीडर राइटर प्रॉब्लम है प्रोड्यूसर
कंज्यूमर या बाउंसिंग बाउंड बफर प्रॉब्लम डाइनिंग फिलोसोफर प्रॉब्लम स्लीपिंग बारबर प्रॉब्लम तो सबसे पहले प्रोड्यूसर
कंज्यूमर से शुरू करते हैं तो चलिए अभी बात करते हैं प्रोड्यूसर कंज्यूमर प्रॉब्लम की बहुत मजेदार अप्रोच है किस
तरह से काम करना है क्या-क्या सिंक्रोनाइजेशन करना है एकएक करके आपको समझाता हूं अप्रोच यह है मान के चलिए कि
हमारे पास दो प्रोसेस है अब आप इसे हार्डवेयर के दो मशीनस मान लो दो प्रोसेस मान लो एक प्रोसेस का नाम है प्रोड्यूसर
एक एक प्रोसेस का नाम है कंज्यूमर प्रोड्यूसर एक बार में एक आर्टिकल या एक डाटा सेट कुछ भी मान लेते हैं एक आर्टिकल
बनाता है एक आइटम बनाता है और वो आइटम को कंज्यूम कौन करता है कंज्यूमर बट प्रोड्यूसर डायरेक्टली कंज्यूमर को वो
आइटम नहीं देता यहां पर हमने बीच में एक बनाया हुआ बफर तो प्रोड्यूसर एक आर्टिकल बनाएगा और उसको इस बफर के अंदर रखेगा एंड
बफर के अंदर ए नंबर ऑफ सेल्स है इसलिए कि ऐसा ना हो एक आइटम बनाने के बाद ही प्रोड्यूसर को वेट करना पड़े तो
प्रोड्यूसर ने एक आइटम बना बफर के अंदर रखा अगर कंज्यूमर उस आइटम को फिलहाल कंज्यूम नहीं भी करता तो प्रोड्यूसर को
टेंशन नहीं है वो एक और आइटम बना सकता है एक और आइटम बना सकता है कब तक जब तक बफर पूरा फिल ना हो जाए तो प्रोड्यूसर के
फ्रेम ऑफ रेफरेंस में देखेंगे दो-तीन बात का ध्यान रखना है प्रोड्यूसर का डायरेक्ट कंज्यूमर से कोई लेना देना नहीं है
प्रोड्यूसर का लेना देना है बफर से उसको जब भी आर्टिकल प्रोड्यूस करेगा इस बफर के अंदर ऐड करता जाएगा बस किस बात का ध्यान
रखना है ओवरफ्लो ना हो यर किसी आइटम को प्रोड्यूस करके बफर को अटेंप्ट तब करें एक्सेस करने का जब वहां पर कम से कम एक
सेल खाली हो ताकि वह आइटम रख सके टॉकिंग अबाउट कंज्यूमर कंज्यूमर भी उसी तरह इंडिपेंडेंट है उसका प्रोड्यूसर से
डायरेक्ट कोई लेना देना नहीं है अगर प्रोड्यूसर कुछ समय के लिए काम नहीं कर रहा तो भी अगर सेल्स के अंदर मल्टीपल
वैल्यूज हैं तो कंज्यूमर एक-एक करके उनको कंज्यूम कर सकता है कंज्यूमर को किस बात का ध्यान रखना है एक बार में एक एलिमेंट
ही कंज्यूम करेगा दूसरा ये जो पूरा हमारा बफर है अंडरफ्लो ना हो इस बफ बर को जाके मैं एक्सेस तब करूं जब कम से कम एक सेल
भरा हुआ हो इन जनरल बफर प किस बात का ध्यान रखना है एक ही टाइम पे दोनों एक्सेस ना कर ले क्योंकि प्रोड्यूसर कंज्यूमर अगर
दोनों एक साथ एक्सेस करेंगे तो भी क्लैश होगा तो प्रोड्यूसर ओवरफ्लो का ध्यान रखेगा कंज्यूमर अंडरफ्लो का ध्यान रखेगा
और हम दोनों इन मिलके इस बात का ध्यान रखेंगे कि यह सब के सब एक साथ एक्सेस ना कर ले यह एक शॉर्ट में डिस्क्रिप्शन है
प्रोड्यूसर कंज्यूमर प्रॉब्लम का बाकी सारी डिटेल्स वन बाय वन मैंने मेंशन की है हम यहां पर यूज क्या करेंगे हम तीन सीमा
फोर यूज करेंगे एक सीमा फोर यूज करेंगे s जिसको इनिश इज करेंगे वन से व्हिच इज लाइक अ क्रिटिकल सॉल्यूशन जो मतलब इस बात का
ध्यान रखिएगा एक टाइम पर प्रोड्यूसर कंज्यूमर एक साथ क्लैश ना करें तो ए की ड्यूटी मैंने आपको बता दी वो क्रिटिकल
सेक्शन का ध्यान रखिएगा कोऑर्डिनेशन का दो और सीमा फोर है e और f e मतलब एमटी सेल्स जब गेम शुरू होगा तो बताओ सारे के सारे
सेल तो खाली होंगे n के एन सेल्स इसलिए मैं e को इनिश इज कर रहा हूं n से और ये एक एग्जांपल है काउंटिंग सीमा फोर्स का
क्योंकि सिर्फ रो व दो वैल्यू में हम डील नहीं कर रहे सिमिलरली ए बताएगा फील्ड कितने हैं और उसको इलाइट कर रहा हूं ज
जीरो से क्योंकि जब गेम स्टार्ट होगा तो सारे के सारे सेल हमारे खाली होंगे तो फिल वाला तो जीरो होगा एमटी वाला n होगा ये
तीनों बातें आपको समझ आ गई अब कोड पे आ जाते हैं एक तरफ प्रोड्यूसर एक तरफ कंज्यूमर है एक-एक करके आपका टाइम भी बचवा
ंगा लेकिन पैटर्न याद तो आप करोगे बट टना ना पड़े आपको बात समझ आए तभी एग्जाम में अच्छे से लिख पाओगे तो क्या करना है एकएक
करके फिल करता हूं पहले मुझे बात बताओ प्रोड्यूसर की प्रोसेस का नाम प्रोड्यूसर कंज्यूमर की प्रोसेस का नाम कंज्यूमर वाइल
टी वाइल ट्रू ये तो एक स्टैंडर्ड पैटर्न है जो हर बार अब हम फॉलो कर रहे हैं आपके लिए कोई नई बात नहीं है आगे बढ़ता हूं दो
तीन जो यू नो कमेंट स्टेटमेंट है जब गेम शुरू होता है तो प्रोड्यूसर एक आइटम प्रोड्यूस करेगा जिसका कंज्यूमर से कोई
लेना देना नहीं है सिमिलरली कंज्यूमर पूरी प्रोसेस करने के बाद आइटम कंज्यूम करता है अगर प्रोड्यूसर बफर एक्सेस कर पाएगा तो
बीच में कहीं जाके वह बफर में अपने आइटम को ऐड कर देगा और कंज्यूमर अगर एक्सेस कर पाएगा तो बीच में कहीं पे जाके वो बफर्स
उस आइटम को पिक करेगा तो धीरे-धीरे मैं स्ट्रक्चर भरते चलूंगा ताकि एक साथ भरू तो आपको ना लगे क्या हो गया नाउ गोइंग टू द
नेक्स्ट स्टेप क्योंकि हमें पता है कि बफर एक शेयर्ड यू नो सेक्शन है क्रिटिकल सेक्शन है शेयर्ड रिसोर्स है एक बार में
दोनों अटेंप्ट नहीं कर सकते हम पहले से घर से क्या सीख के आए हैं कि जो भी शेयर्ड रिसोर्स होगा वो क्रिटिकल सेक्शन है वहां
सिक्योरिटी होना चाहिए तो मुझे बताओ यह दोनों बातें लिख के मैंने कोई नई बात की है क्या वैसे ही इसका काम है सिक्योरिटी
देना तो जो भी अंदर जाएगा अंदर जाने से पहले वेट करेगा बाहर आते हुए सिग्नल करेगा चाहे फिर वो प्रोड्यूसर हो वो कंज्यूमर हो
मान लीजिए प्रोड्यूस अंदर अंदर जाता है वेट ऑफ एस करता है ये तो वैल्यू हो गई जीरो अब आप मुझे बताओ अगर इस समय कांटेक्ट
स्विच हो गया प्रोड्यूसर अटेंप्ट करेगा अंदर जा पाएगा क्या नहीं जा पाएगा क्योंकि वेट की वैल्यू बताइए क्या है s की वैल्यू
फिलहाल जीरो है इजेंट इट तो अंदर नहीं जा पाएगा यहीं पे वेट करना पड़ेगा फाइनली जब यह बाहर आएगा सिग्नल करेगा वैल्यू वन तब
कंज्यूमर अंदर जा पाएगा तो s बहुत आराम से दोनों का कोऑर्डिनेशन मैनेज कर रहा है अब बात आई ओवरफ्लो और अंडरफ्लो की अगले स्टेप
में इस कहानी को सॉल्व करता हूं तो देखो एक बात समझना प्रोड्यूसर जब कोई एलिमेंट प्रोड्यूस करेगा तो एक बात तो तय है क्या
प्रोड्यूसर जब एलिमेंट प्रोड्यूस करेगा तो जो एमटी सेल्स हैं वो एक कम होंगे और जो फुल सेल्स हैं जो फील्ड है वो एक बढ़ेंगे
मतलब जो हमारा एमटी वाला सेल है वो होगा e स्टैंड्स फॉर एमटी एमटी -1 और जो फील्ड वाला सेल है वो होगा फीड + 1 मानते हो
यहां पर -1 मतलब वेट ऑपरेशन + 1 मतलब सिग्नल ऑपरेशन तो ये तो तय था कि प्रोड्यूसर को दो काम करने हैं उसको e के
ऊपर वेट करना ए के ऊपर सिग्नल करना बट कौन सा पहले करना वो मैं बता रहा हूं अंदर जाते हुए पहले वेट करना है e पे और बाहर
आते हुए यह ये गलत लिख दिया इसको लिखना है सिग्नल बाहर आते हुए सिग्नल करेगा f पे अब
क्योंकि हमने बात समझी तो रटने की कोई बात ही नहीं है सिमिलरली इधर आ जाइए यहां पर भी गड़बड़ लिखा है यस अंदर जाते हुए उल्टा
करेगा ये अंदर जाते हुए वेट करेगा f के ऊपर क्यों क्योंकि कंज्यूम वारा कंज्यूम करेगा तो फील्ड वाले कम होंगे और यहां लिख
दीजिए सिग्नल ये सिग्नल करेगा e के ऊपर सिग्नल वाली यानी कि एमटी वाले बढ़ जाएंगे क्योंकि एलिमेंट कंज्यूम कर रहा है मैं हर
बार पहले वेट क्यों करना चाहता हूं देखिए वेट ही वो ऑपरेशन है जहां पर किसी प्रोसेस को रोका जा सकता है अब इमेजिन करिए
प्रोड्यूसर अगर प्रोड्यूस कर रहा है और दो मिनट के लिए इमेजिन करें कि सारा बफर भरा हुआ है तो इस केस में एमटी वाले क्या
होंगे इस केस में एमटी वाले जीरो होंगे और फिल वाले हो जाएंगे n अब आप मुझे बताइए यह जीरो पे वेट कर पाएगा क्या पहले से आपको
स्टोरी पता जीरो पे वेट कर ही नहीं पाएगा यही गोल-गोल घूमता रहेगा सिमिलरली अगर कंज्यूमर कंज्यूम करे और एमटी वाले सारे
हो और फिल वाला जीरो हो मुझे बताओ f के ऊपर वेट कर पाएगा क्या नहीं कर पाएगा तो ये दो चेंज तो आप कर लेंगे वेट और सिग्नल
वाली बात और यह पूरा पैटर्न अब मेरे ख्याल से आपको समझ आ गया प्रोड्यूसर कंज्यूमर क्या प्रॉब्लम है तीन ओवरफ्लो अंडरफ्लो और
आपस का सिंक्रोनाइजेशन तीनों प्रॉब्लम्स को हमने अच्छे से टैकल कर लिया यह भी समझ लिया प्रोड्यूसर कौन से दो काम करता है
कंज्यूमर कौ से दो काम करता है और क्यों पहले वेट कर र है बाहर सिग्नल कर रहे है क्योंकि वेट पर रोका जा सकता है सिग्नल पर
नहीं रोका जा सकता यस सो दैट इज इतना लिख के आओगे तो कहानी आपकी कंप्लीट हो गई गोइंग टू द नेक्स्ट प्रॉब्लम नाउ वी हैव
रीडर राइटर प्रॉब्लम अब जैसे प्रोड्यूसर कंज्यूमर है ऐसे ही यहां पर रीडर राइटर है तो प्रॉब्लम समझिए पहले हमारे पास एक
शेयर्ड पीस ऑफ टेक्स्ट है है ना कोई शेयर्ड डाटा है इसके ऊपर दो तरह के प्रोसेस काम करते हैं कुछ प्रोसेस राइटर
प्रोसेस है कुछ रीडर अच्छा यहां पे एक बात समझिए प्रोड्यूसर कंज्यूमर में हम मान रहे थे एक ही प्रोड्यूसर है एक ही कंज्यूमर है
यहां पे देयर कैन बी मल्टीपल राइटर्स एंड देयर कैन बी मल्टीपल रीडर्स नाउ एक बात जो बड़ी कॉमन सेंस की है क्या एक बार में
बहुत सारे रीडर रीड ऑपरेशन परफॉर्म कर सकते हैं आई थिंक कर सकते हैं रीडर रीडर का आपस में क्लैश नहीं होता डेटाबेस में
इस बात को बहुत अच्छे से समझते हैं हम तो रीडर रीडर का कोई इशू नहीं है बट क्या एक बार में मल्टीपल राइडर काम कर सकते हैं
नहीं तो तो राइटर का राइटर के साथ भी क्लैश है राइटर राइटर दे इज अ प्रॉब्लम एंड राइटर रीडर देर इज अ प्रॉब्लम तो अब
सोचिए मैं किस तरह का मैकेनिज्म बनाना है शेयर्ड पीस ऑफ टेक्स्ट है अगर राइटर अंदर है राइटर प्रोसेस काम कर रही है कोई राइट
ऑपरेशन परफॉर्म कर रहा है तो उस समय ना तो रीडर अंदर आए ना तो राइटर अंदर आए वो बड़ा स्ट्रिक्ट है लेकिन अगर रीडर अंदर है तो
वी कैन बी लिटल बिट फ्लेक्सिबल उस केस में रीडर अंदर आ सकता है क्योंकि रीडर रीडर दो लोग पढ़ेंगे तो उसका कोई क्लैश नहीं होगा
बट राइटर उस केस में अंदर नहीं आ सकता है ना इतनी बात हमें समझ आती है अब इसके लिए
अगेन हमें सॉल्यूशन लिखना है सॉल्यूशन के लिए सारी पॉइंट मैंने आपको बता दिए क्या-क्या यूज करेंगे एक हम सीमा फोर यूज
करेंगे म्यूट्स म्यूट्स अगेन म्यूचुअल एक्सक्लूजन जिस बात का ध्यान रखिएगा एक टाइम में दो लोग अंदर ना आ जाए और टेक्स
का भी इस्तेमाल आपको बताऊंगा यह वैसे दो रीडर के बीच में दो रीडर को आपस में यू नो को रिलेट करने की कोशिश करेगा राइटर एक और
होगा जो राइटर टू राइटर या राइटर टू रीडर काम करेगा और एक सिंपल इंटी जर वेरिएबल है रीड काउंट ये सीमा फोर नहीं है ये इस बात
को याद करने में मेरे को हेल्प करेगा कि फिलहाल क्रिटिकल सेक्शन में कितने रीडर्स हैं एज मल्टीपल रीडर्स कैन बी देयर तो ये
इस्तेमाल कैसे होंगे किस तरह से होंगे मैं एक-एक करके आपको समझाता हूं तो वही अप्रोच यूज़ कर लेते हैं इन द स्टार्टिंग दो
प्रोसेसर रीडर राइटर जब राइटर क्रिटिकल सेक्शन के अंदर होगा है ना तो वहां पे राइट ऑपरेशन परफॉर्म करेगा और जब रीडर
अंदर होगा तो रीड करेगा गेस करोगे एक मिनट सोच के किसका कोड आसान होगा रीडर का कि राइटर का कई लोग सोचते हैं शायर रीडर का
आसान होगा बट कहानी उल्टी है राइटर का कोड बहुत आसान है उसको टेंशन नहीं है अगर गेट पर नॉक हुआ उसको टेंशन है क्या बाहर रीडर
है कि राइटर है कोई भी है मेरा दुश्मन है क्योंकि राइटर का तो दोनों के साथ क्लैश है तो उसे गेट ओपन नहीं करना है तो यहां
पर ऑब्जर्व करिए इधर लिख र है वेट इधर लिखना सिग्नल तो राइट को हम इनिशिएटिव से अंदर जो भी जाएगा पहले क्या करेगा पहले
राइट को फॉर एग्जांपल वन से कर देगा जीरो फिर क्या कोई दूसरा राइटर अंदर आ पाएगा जी नहीं आ पाएगा जैसे ही ये बाहर आएगा दोबारा
जीरो से इसको कर देगा वन सो दैट इज हाउ ये राइटर यहां पे परफेक्ट तरह से काम करेगा अब मैं रीडर पे बा काम करता हूं रीडर को
धीरे-धीरे आगे लेके चलता है देखिए रीड काउंट क्या है एक सिंपल इंटी जर वेरिएबल है जो काउंट रखता है कितने रीडर मेरे पास
है जब कोई प्रोसेस रीडर अंदर जाएगा तो रीड काउंट प्लस होगा बाहर आएगा रीड काउंट माइनस होगा बहुत कॉमन सेंस बात है
धीरे-धीरे एड ऑन करते चलूंगा कोई कंफ्यूजन नहीं होगा हां सर इतनी बात तो समझ आती है फेयर इनफ अब आप मुझे बताओ ये जो रीड काउंट
है ध्यान से देखना यह रीड काउंट तो शेयर्ड वेरिएबल है ना हां शेयर्ड है बिटवीन द रीडर्स क्योंकि अगर एक से ज्यादा रीडर एक
साथ प्लस प्लस करने की कोशिश करेंगे पहले वाला कोड है याद है इंक्रीमेंट वाला जहां से प्रॉब्लम पढ़ना शुरू किया था हमने
सिंक्रोनाइजेशन प्रॉब्लम हो सकता है तो क्या रीड काउंट को भी सिक्योरिटी चाहिए सिक्योरिटी चाहिए और यहां देखिए पेयर में
सिक्योरिटी आपको नजर आ रही है तो जैसे मैंने बोला था टेक्स जो है उसका राइटर से कोई लेना देना नहीं है मूटे सिंक्रोनाइज
करने में मदद करता है बिटवीन टू रीडर्स ताकि दो रीडर एक बार में रीड काउंट को खराब ना कर दें तो अगर कोई रीडर अंदर आता
है तो पहले टेक्स को वेट करेगा ऑब् वियस टेक्स इज इनिला विद वन रीड काउंट प्लस करेगा एंड देन बिफोर एंटरिंग इन टू
क्रिटिकल सेक्शन दोबारा से सिग्नल कर देगा ताकि बाद और रीडर भी अंदर आ सके सिमिलरली बाहर निकलते हुए रीड काउंट को माइनस करना
चाहिए क्योंकि अब रीडर कम होंगे लेकिन अगेन ब क्रिटिकल सेक्शन है शेयर्ड वेरिएबल है डायरेक्ट टच नहीं करूंगा पहले टेक्स को
वन से जीरो करूंगा फिर रीड काउंट माइनस करूंगा बाहर जाते हुए मैं दोबारा इसको वन कर दूंगा कि बाकी रीडर काम कर सके तो
टेक्स और इसकी सिक्योरिटी रीड काउंट यह पूरा मैकेनिज्म है किस लिए सिर्फ रीडर्स में आद में सिंक्रोनाइज करने के लिए नाउ
गोइंग इन टू द नेक्स्ट स्टेप यह जो राइट ऑपरेशन पर वेट ऑपरेशन करना ये सबको नहीं करना समझाता हूं कैसे और कैसे यहां पर
कंडीशन काम करेगी देखिए एक केस देखिएगा टेक्स इनिला इज विद वन राइट इनिला विद वन रीडर इलाज विद रो पहला रीडर अंदर आता है
जैसे ही आएगा सबसे पहले यह पेयर आपको पता है क्यों हमने लगाया लुक एट दिस पेयर तो टेक्स को इसने किया जीरो रीड काउंट को
इसने किया वन और अब ये चेक कर रहा है इफ रीड काउंट इ इ इक्व हां वो तो वन ही है अगर प्लव करने के बाद भी रीड काउंट वन है
इसका मतलब शायद मैं पहला रीडर हूं और अगर मैं पहला रीडर हूं तो क्या कोई और राइट पे वेट ऑपरेशन परफॉर्म किसी ने किया होगा
नहीं किया होगा मुझे करना है ताकि जब मैं अंदर जाऊं तो रीडर तो अंदर आ सके बट राइटर अंदर ना आए तो अब मैं यहां पर इसको जरो कर
राइटर को सिर्फ यही समझ आता है यस तो मैंने इसको जरो किया बट अंदर जाने से पहले टेक्स को वन कर दूं ताकि राइटर नहीं बट
दूसरे रीडर अंदर आ सके अब सोचिए जब अगला रीडर अंदर आएगा वो फिर टेक्स को मेंटली रो करेगा रीड काउंट को टू करेगा और इस बार
कंडीशन चेक करेगा इफ रीड काउंट इज इक्व इ इक्व टू 1 नहीं रीड काउंट तो टू है टू इज नॉट इक्वल टू 1 कंडीशन फॉल्स वो सीधे आगे
आएगा टेक्स को रो जो हो चुका है उसे दोबारा वन करेगा एंड गो इनसाइड द क्रिटिकल सेक्शन कितना खूबसूरत लिखा हुआ है
सिमिलरली सोचिए जब आखिरी रीडर बाहर आएगा रीड काउंट की वैल्यू हो जाएगी जीरो तो उसको बाहर आने से पहले वेट पे सिग्नल कर
देना चाहिए अदर वाइज इट विल लीड टू डेडलॉक फिर तो कोई आ ही नहीं पाएगा लेकिन अगर बीच में किसी रीडर ने गलती से सिग्नल कर दिया
तो राइटर अंदर आ जाएंगे और गड़बड़ हो जाएगी मेरे ख्याल से पूरा मैकेनिज्म रीडर और राइटर का बहुत खूबसूरत है और बहुत कम
समय में और अच्छे से मैंने समझाने की कोशिश की है फिर वही बात यह पूरा सॉल्यूशन लिखेंगे तो कोई नंबर आपके कटने वाले नहीं
है 10 में से लेट्स सी कितने मिलते हैं कितने यह पूरा टेबल बनाना है पूरा मैकेनिज्म सारी रिसोर्स समझाओ कि टेक्स का
क्या इस्तेमाल है रीड काउंट का क्या इस्तेमाल है वेट का क्या इस्तेमाल है एंड प्रॉब्लम का डेफिनेशन क्या था तो यू आर
गोइंग टू गेट द मार्क्स यस प्रोसीडिंग फॉरवर्ड अगला नंबर आ जाता है डाइनिंग फिलोसोफर का तो यह बड़ी शानदार प्रॉब्लम
है थोड़ी मजाकिया प्रॉब्लम है समझिए एक बार क्या लॉजिक है व्हाट डू वी हैव जैसा आप इस इमेज में देख पा रहे हैं एक सर्कुलर
टेबल हमारे पास है स्टैंडर्ड प्रॉब्लम में डेफिनेशन बुक बाय बुक थोड़ा बहुत इधर-उधर हो सकता है बट द फंडामेंटल आइडिया रिमेंस
द सेम सो दिस इ सर्कुलर टेबल मेरे जो एग्जांपल मैंने लिया इसमें फाइव फिलोसोफर है सेवन हो स नाइन हो सकते है बेसिकली वी
टेक ऑड नंबर ऑफ फिलोसोफर तो हमारे पास कुछ फिलोसोफर बैठे हुए हैं अब ये दो ही काम करते हैं या तो यह खाते हैं आइर दे ईट और
दे थिंक बस दो ही काम करते हैं या तो खाते हैं या तो सोते हैं या तो सोचते हैं यस अब जब भी इनको भूख लगती है तो व्हाट वी से कि
सपोज देर इज अ बाउल ऑफ राइस और यू नो नूडल्स इन बिटवीन द टेबल और इनको खाने के लिए दो फॉक या दो चॉपस्टिक चाहिए है ना हर
किसी के पास अपने इंडिपेंडेंट चॉप स्टिक्स नहीं है सो व्हाट दे हैव इज लाक एवरी बडी हर दो फिलोसोफर के बीच में एकएक चॉपस्टिक
है तो इफ आई नंबर देम दिस इज लाइक फिलोसोफर नंबर रो नंबर वन नंबर टू नंबर थ्री नंबर फोर चॉपस्टिक नंबर जीरो नंबर वन
नंबर टू नंबर थ्री नंबर फोर तो अगर पांच फिलोसोफर है तो पांच ही चॉपस्टिक है अगर फिलोसोफर नंबर टू को खाना है तो उसको
चॉपस्टिक नंबर टू और चॉपस्टिक नंबर थ्री या फॉक नंबर टू फॉक नंबर थ्री पिक करना है खाना एंड देन काम करना है अब अगेन हमें एक
सॉल्यूशन लिखना है विद द हेल्प ऑफ द सीमा फोर्स कि हम इसको सिंक्रोनाइज करें इस पूरी प्रोसेस को ताकि इसमें प्रॉब्लम ना
हो अगर आप इसे एनालाइज करना शुरू करेंगे मैंने पूरा प्रॉब्लम का डेफिनेशन आपको बता दिया सब यहां पे लिखा है अगर आप इसे
एनालाइज करना शुरू करेंगे तो कुछ समय के बाद आपको समझ आएगा कि जो बाउल ऑफ राइस है ना दैट इज नॉट क्रिटिकल सेक्शन क्या एक
बार में दो लोग खा सकते हैं फॉर एग्जांपल अगर एडजेसेंट नहीं है लाइक दिस थ्री नंबर एंड जीरो नंबर फिलोसोफर कैन ट एट द सेम
टाइम वन नंबर फोर नंबर वन नंबर थ्री नंबर आई थिंक किसी भी टाइम पे तीन तो नहीं बट दो फिलोसोफर बड़े आराम से खा सकते हैं तो
ये तो क्रिटिकल सेक्शन नहीं है क्रिटिकल सेक्शन कौन है क्रिटिकल सेक्शन है ये चॉपस्टिक या ये फॉक्स पांच है पांच
क्रिटिकल सेक्शन यहां पे है क्यों एक बार में क्या चार नंबर और तीन नंबर दोनों खाना खा सकते हैं नहीं हमें इस बात का ध्यान
रखना है क्योंकि जो चॉपस्टिक है ये शेयर्ड है क्या एक बार में वन नंबर और टू नंबर खा सकते हैं नहीं क्योंकि हमें इस बात का
ध्यान रखना है कि ये जो चॉपस्टिक नंबर टू है ये शेयर्ड है है ना इसके बीच में सिंक्रोनाइज करना है अब लोग सिंक्रोनाइज
कराते कैसे हैं ये मैंने पता नहीं क्यों इमज मैंने बीच में लगा दिया भाई बहुत संकोच में है पता नहीं खा
पा रहा है नहीं खा पा रहा है फिर मुझे इंडियन चॉप स्टिक भी याद है ये सब ड्रामा है क्या जरूरत है जब आराम से खाना खा सकते
हैं यस चलो जोक्स अ पाड नाउ लेट मी गो टू द आईडिया कैसे इसको सॉल्व करते हैं सोल्यूशन देखिए आपको समझाता हूं तो यहां
पर हम क्या करते हैं हम एक एरे लेते हैं ऑफ सीमा फोर्स मजेदार बात है तो यहां पे लेट मी से इन्होंने कैसे लिया वेट एंड ट
चलो मैं वन से इनिश इइ करता हूं देर इज अ सीमा फोर सीमा फोर का नाम मैं रख देता हूं चॉपस्टिक शॉर्ट में लिख देता हूं इंडेक्स
नंबर 0 1 2 3 4 तो ये सारे के सारे नंबर अलग-अलग चॉपस्टिक को रिप्रेजेंट करते हैं अगर चॉपस्टिक नंबर टू फिलहाल वन है इसका
मतलब चॉपस्टिक नंबर टू जो है वो अभी अवेलेबल है लाइक दिस नंबरिंग कर देता हूं दोबारा
से वो भी अवेलेबल है अब मान लीजिए इट इज वैलिड फॉर एनी फिलोसोफर लेट मी से फिलोसोफर नंबर टू ले लेते हैं फिलोसोफर
नंबर टू अभी तक थिंकिंग कर रहा था उसको खाने का मन किया क्या करना उसको उसको इंडेक्स नंबर टू और 2 + 1 3 टू और थ दोनों
पे वेट ऑपरेशन परफॉर्म करना अब नोटिस करिए जैसे ही ये वेट ऑपरेशन करेगा क्या होगा लॉजिकली फिलोसोफर नंबर टू था ना चॉपस्टिक
नंबर टू मान सकते चॉपस्टिक नंबर थ्री एक तरह से इसके पास आ गई और अब यह बहुत आराम से ईट करेगा बाहर निकलते हुए फिर दोनों को
रिलीज कर रहा है दोनों पे सिग्नल कर रहा है तो अगेन बोथ ऑफ देम आर गोइंग टू बिकम वन ये ये वाला क्या कहानी मैंने लिखी
क्योंकि इंडेक्स है ना राउंडेड है अगर फिलोसोफर नंबर फोर खाएगा तो क्या होगा चॉपस्टिक नंबर फोर दिस विल बी 0 एंड 4 + 1
5 5 डिवाइड बा 5 रिमाइंडर रो तो ये दोबारा घूम के आ जाएगा ये तो जब फोर को खाना तो फोर और जीरो नंबर चॉपस्टिक के थ्रू वो खा
सकता है वैसे पहली बार में देखते हैं तो सॉल्यूशन परफेक्ट लगता है हर किसी को यही काम करना है अपने दोनों चॉपस्टिक उठाने
हैं खाना है फिर दोनों रिलीज कर देने हैं बट इसमें एक प्रॉब्लम है दिस सॉल्यूशन सफर्स फ्रॉम डेड लॉक तो बेसिकली ये
प्रोग्रेस को वायलेट कर देता है कैसे एक सिचुएशन है फिलोसोफर नंबर जीरो ने खाना खाना चालू किया और जैसे ही वो खाना खाने
के बारे में सोचेगा तो पहले चॉपस्टिक नंबर रो उठाता है वन उठाता है उसके बाद अगर उसने चॉपस्टिक नंबर जीरो उठाई और मैंने
उसे वहीं पर कांटेक्ट स्विच कर दिया क्या मैं कर सकता हूं सर फिर वही बात किसी भी प्रोसेस को कभी भी कांटेक्ट स्विच किया जा
सकता है हां कर सकता हूं फिर बोलो अगला नंबर किसका आएगा अगला नंबर आएगा फिलोसोफर नंबर वन का अब वोह क्या करेगा अपने कोड के
हिसाब से वह पहले वन नंबर उठाएगा मान लीजिए उसने वन नंबर उठाया मैंने फिर से उसको कांटेक्ट स्विच कर दिया एंड फॉलोइंग
द सेम आइडिया देयर कुड बी अ सिनेरियो कि एक-एक चॉपस्टिक सारे फिलोसोफर पिक कर लेंगे और यह एक स्टैंडर्ड केस है डेड लॉक
का यहां डेड लॉक लग जाएगा अब कोई भी खा नहीं पाएगा एक-एक चॉपस्टिक सबके पास एंड द सिस्टम सफर्स फ्रॉम डेड लॉक तो यह एक
स्टैंडर्ड सॉल्यूशन है जहां पर हम समझते हैं कि यह सॉल्यूशन वैलिड नहीं है इसको वैलिड बनाने के बहुत सारे अलग-अलग सजेशंस
है जैसे क्या-क्या सजेशंस हो सकते हैं सजेशंस इसको सॉल्व करने के तो पहला सजेशन है कि एक बार में सिर्फ चार फिलोस
फर्स को ही टेबल पर अलाव करो सोचो अगर चार फिलोसोफर होंगे तो हर कोई एकएक उठाएगा फिर भी एक चॉपस्टिक बचेगा वो किसी ना किसी को
मिलेगी जिसको मिलेगी वो रन करेगा रन करेगा रिलीज करेगा डेडलॉक नहीं लगेगा एक दूसरा सॉल्यूशन क्या हो सकता है अलाउ सिक्स
चॉपस्टिक पांच तो है एक एक्स्ट्रा रख दो तो या तो फिलोसोफर एक कम करो या तो चॉपस्टिक एक बढ़ा दो अभी चॉपस्टिक एक
बढ़ाओ ग तो एडिशनल चॉपस्टिक किसी ना किसी को मिलेगी जिसको मिलेगी उसको खाना है रन करना है एग्जीक्यूट करना है अगेन डेड लॉक
नहीं लगेगा बट ये जो दोनों सॉल्यूशन है कि या तो आप एक चॉपस्टिक कम करो या तो फिलोसोफर या तो चॉपस्टिक एक बढ़ा दो या
फिलोसोफर एक कम करो ये थोड़ा सा प्रॉब्लम की डेफिनेशन को चेंज कर रहे हैं तो अगर प्रॉब्लम की डेफिनेशन को चेंज नहीं किया
जाए तो क्या किया जा सकता है अलाव फिलोसोफर टू पिक हर चॉप्स ओनली बोथ द चॉपस्टिक आर अवेलेबल है ना तो एक गेम हो
सकता है कि अगर एक चॉपस्टिक है और दूसरी नहीं है तो पहला भी आप रिलीज करा दो तो रिलीज करा दोगे तो भी डेड लॉक नहीं लगेगा
एक लॉजिक क्या हो सकता है कि यू नो प्रॉब्लम हो रही है कि हर कोई अलग-अलग चॉपस्टिक उठा रहा कोड सबका सेम है बट वो
हर किसी का सिनेरियो अलग है तो हम कुछ ऐसा कर सकते हैं लेट मी से n -1 फिलोस फर जो है वो हर कोई अपनी राइट चॉपस्टिक पहले
उठाएगा एवरीबॉडी विल पिक द राइट चॉपस्टिक फर्स्ट लेकिन जो एंथ फिलोसोफर है वो अपनी लेफ्ट चॉपस्टिक पहले उठाएगा तो देखो इससे
होगा क्या इमेजिन करो आप तो मैं डिवाइड कर रहा हूं n n - व में और वन में तो मान लीजिए ये जो जीरो नंबर है ये पहले अपनी
राइट उठा रहा है ये भी पहले राइट पिक करेगा ये भी पहले राइट पिक करेगा ये भी पहले राइट पिक करेगा बट ये जो फिलॉसफी है
ये अपनी लेफ्ट चॉपस्टिक पहले पिक करेगा तो यानी कि ये जो हमारे पास चॉपस्टिक है ना अब इस पे हुआ क्लैश या तो ये जीरो नंबर
वाले फिलॉसफी या तो फोर वाले को लेकिन किसी एक को को मिलेगी मान लेते हैं कि जीरो वाले फिलोसोफर को मिल गई अब फोर वाले
के साथ प्रॉब्लम क्या है हमने उसको ट्रेन कर दिया कि यार पहले तू लेफ्ट उठा फिर तू राइट उठा सकता है अब जब उसको लेफ्ट
चॉपस्टिक नहीं मिलेगी तो अब क्या वो राइट चॉपस्टिक पिक कर सकता है नहीं कर सकता बेसिकली वो इस कंपटीशन से बाहर हो जाएगा
और ये जो बची हुई चॉपस्टिक है किसी ना किसी को मिलेगी ओबवियसली ये ग्रीन वाले को मिलेगी और जिसको मिलेगी डेड लॉक रिजॉल्व
होगा है ना तो कुछ लोग यहां पे दो तरह से काम करते हैं एक तो हुआ टोटल n है n - 1 एक तरफ रखे वन एक तरफ रखे एक और दूसरा
अप्रोच क्या हो सकता है कि n हमारे पास है ऑड और इवन में डिवाइड कर ले लेट द ऑड नंबर फिलोसोफर पिक द लेफ्ट चॉपस्टिक फर्स्ट और
द इवन नंबर विल पिक द अदर वे राउंड लाइक लाइक द ऑड चॉपस्टिक फर्स्ट तो अगर सब को ई सेम ऑर्डर फॉलो ना करके डिफरेंट ऑर्डर
फॉलो करेंगे तो भी हमारा क्लैश रिजॉल्व हो जाएगा तो यह आमतौर पे सबसे पॉपुलर मेथड होता है कि जो डाइनिंग फिलॉसफी
तरीके से यू नो वैलिडेट कर देता है जो डेड लॉक का प्रॉब्लम था उसको हटा देता है नाउ कमिंग टू नेक्स्ट प्रॉब्लम इज द स्लीपपिंग
बारबर प्रॉब्लम अब ऑलरेडी क्योंकि अभी हम काफी सारे यू नो क्लासिकल प्रॉब्लम डिस्कस कर चुके तो आई थिंक इसमें भी ज्यादा
प्रॉब्लम नहीं होगी पहले आपको डेफिनेशन समझाता हूं सो दिस इज अ बेसिकली सिनेरियो ऑफ अ बार्बर शॉप तो बड़ा मजेदार सिनेरियो
है जहां पर हमारे पास एक बार्बर है अगर बारबर खाली है तो वह सो जाएगा उसके पास अभी कोई काम नहीं है अगर कोई हेयर कट कर
कराने आएगा तो बारबर को वेकअप करेगा बार-बार हेयर कट करेगा यहां पर हमारे पास ए नंबर ऑफ वेटिंग चेयर्स भी हैं तो फॉर
एग्जांपल अगर कोई कस्टमर आता है और बार उस समय बिजी है हेयर कट कर रहा है तो वो कस्टमर एक चेयर ऑक्यूपाइड कर सकता है बट
अगेन जैसा आप देख रहे हैं वेट की भी एक लिमिट है अगर एक ऐसा सिनेरियो है कि कोई कस्टमर आता है जहां पे जितनी भी चेयर्स है
वो सब ऑक्यूपाइड है और बारबर भी ऑक्यूपाइड है तो कस्टमर बाहर चला जाता है अदर वाइज कस्टमर बैठ के वेट करेगा जैसे ही बार-बार
किसी का हेयर कट कंप्लीट करेगा कोई और कस्टमर जो वेट कर रहा होगा उसको उसका हेयर कटिंग होगा तो ये एक पूरा सिनेरियो है और
इसको हमें सिंक्रोनाइज करना है यूजिंग सीमा फोर्स तो जैसा मैं हर केस मैं कर रहा हूं सीधे प्रॉब्लम हमने समझ लिया आपको
सॉल्यूशन के ऊपर लेके चलता हूं बारबर कस्टमर दोनों हमारे पास है है ना पहले क्या-क्या रिसोर्सेस यूज कर रहे हैं एक
बार उसके बारे में जान लेते हैं तो यहां पर एक सीमा फोर है बारबर और बार्बर को इस बार हम उल्टा करेंगे इनिशिएटिव
बल है अगर वन है इसका मतलब बारबर अवेलेबल नहीं है यस देन वी हैव अ काउंटिंग सीमा फॉर कस्टमर जो इनिशिएटिव
में वेट कर कर रहे हैं अभी तो वो हमने कर लिया देन वी हैव अ टेक्स वन ये तो क्रिटिकल सेक्शन है अगेन एक टाइम पे कितने
जैसे वेटिंग एक नंबर होगा जो कि बताएगा वेटिंग कस्टमर कितने हैं तो उसको वेटिंग इज अ शेयर्ड वेरिएबल जैसे पहले रीड काउंट
वाली बात थी ना सेम है तो शेयर्ड वेरिएबल पे एक बार में एक से ज्यादा लोग काम करेंगे तो प्रॉब्लम हो सकता है उसको जो
सिक्योरिटी देगा वो देगा टेक्स तो किसी का भी कोड पहले देख सकते हैं लेट मी टेक द बर्बर वन तो यह देखिए वाइल ट्रू बर्बर
लगातार काम कर रहा है अब जैसे ही बर्बर काम करना ना शुरू करेगा देखिए सबसे पहले वेट करेगा कस्टमर को सोचिए अगर कोई वेटिंग
कस्टमर ही नहीं है तो बार-बार किसी का हेयर कट कर सकता है ओबवियसली नहीं कर सकता तो बहुत अच्छा सिंक्रोनाइजेशन है लेकिन
मान लेते हैं कि कुछ लोग वेट कर रहे हैं अब अगर कुछ लोग वेट कर रहे हैं लेट मी से कि इसका वैल्यू है थ्री यस यह भी यह सीमा
फोर है यह सिंपल वेरिएबल है बट दोनों का नंबर थ्री है तो वेट कर रहा है कस्टमर के लिए तो जैसे ही वेट करेगा मान लीजिए
वैल्यू हमारा हो गया टू सक्सेसफुल वेट ऑपरेशन एंड देयर यू सी यहां फ सिक्योरिटी क्योंकि अब हम एक आदमी का हेयर कट करना
शुरू करेंगे तो जो वेटिंग वाले हैं उनका काउंट एक कम होगा तो यह तो पहले से कम कर दिया बट वेटिंग को टच करने से पहले टेक्स
किया है तो टेक्स की वैल्यू को वन से करेंगे रो और वेट -1 तो जो वैल्यू यहां पर थ्री थी अब देखिए वो वैल्यू भी टू हो
जाएगी और उसके बाद सिग्नल कर रहा है बारबर को यस तो एक तरीके से मान लीजिए हेयर कट का प्रोसेस स्टार्ट कर दिया इनिशिएटिव
कर रहा है दोबारा टेक्स को ताकि इन इन बिटवीन अगर कोई और कस्टमर आए तो वो आ सके तो ये वैल्यू इसने वन कर दिया एंड लेट मी
से यहां पर हेयर कट बिगिन हो गया यस मान रहे कि हेयर कट चल रहा है कांटेक्ट स्विच होता है थोड़ा ध्यान देते हैं कस्टमर पे
अब क्योंकि उसने हेयर कट करने से पहले म्यूट्स कर दिया है सिग्नल को तो सिग्नल को सॉरी सिग्नल किया है टेक्स को तो अब
यहां पे कस्टमर आया उसने वैल्यू टेक्स की वन थी उसको जीरो किया अंदर गया चेक किया क्या वेटिंग n से कम है कि नहीं बिकॉज n
इज द मैक्सिमम काउंट कम है तो ही मैं आगे जा जा सकता हूं वरना था ना अगर सारे के सारे चेयर ऑक्यूपाइड है यहीं से बाहर हो
जाओ तो नहीं सर वेटिंग मान लेते हैं n से कम है लेट मी से वी हैव n नंबर ऑफ चेयर्स है ना तो वेटिंग का वैल्यू हमारा टू ही है
हां वेटिंग कम है अंदर गए वेटिंग प्लस प्लस तो अगेन वेटिंग दोबारा हमारा हो जाएगा थ्री क्योंकि एक और कस्टमर आया है
फेयर इनफ फिर सिग्नल करेंगे कस्टमर को वो भी काउंट टू था इसको भी उठा के हमने थ्री कर दिया दोनों बातें बिल्कुल सिंपल है मेक
सेंस और अब क्योंकि वेटिंग पे काम कर चुके हैं तो टेक्स को दोबारा वन कर देंगे ताकि अगेन कोई और अगर कस्टमर है तो काम कर सके
एंड देन दे यू सी वी आर गोइंग टू वेट द बार्बर अब बार्बर जो है उसका काउंट अभी हमारा वन है तो जैसे ही अभी ये हेयर कट
कंप्लीट होगा इसको हम वेट करेंगे और फिलहाल वैल्यू क्यों कि वन है तो वन को जीरो किया जा सकता है एंड देन वी गेट अवर
हेयर कट डन यस अगर वेटिंग बाहर ज्यादा होती मान लीजिए वेटिंग ऑलरेडी n पे जा चुकी होती तो हम यहीं से सिग्नल करते
टेक्स को यानी कि जो वन जीरो किया था उसको वन करते और बाहर चले जाते तो एक तरह का सिमिलर टाइप ऑफ़ सिनेरियो है
वेदर प्रोड्यूसर कंज्यूमर रीडर राइटर डाइनिंग फिलोसोफर और स्लीपिंग बार्बर हालांकि दिस इज नॉट दैट इंपॉर्टेंट बट इस
सब में से कोई ना कोई एक प्रॉब्लम तो पक्का आएगा तो व्हाट यू कैन डू इज दो-तीन बार कोड लिख के देखोगे इसकी मैथ साथ में
समझ लोगे तो फिर रटने की जरूरत भी नहीं पड़ेगी बात आपको ऐसे समझ आने लगेगी यस फेयर इनफ अब बात करते हैं हार्डवेयर
सॉल्यूशन की देखिए अभी जितने भी सॉल्यूशन हमने किए ना सिंक्रनाइजेशन के ये बेसिकली सॉफ्टवेयर सॉल्यूशन है सॉफ्टवेयर मतलब हम
कोई कोड लिख के चीजों को मैनेज कर रहे हैं बट क्या हार्डवेयर लेवल पर भी सिंक्रोनाइजेशन प्रॉब्लम को हैंडल किया जा
सकता है हां किया जा सकता है जैसे एक तो मैं डिटेल में जा भी नहीं रहा विच इज लाइक डिसेबल इंटरप्ट अगर आपका भोकाल इतना है यू
गो इनसाइड क्रिटिकल सेक्शन एंड देन यू जस्ट डिसेबल द इंटरप्ट कि अब कोई आपको इंटरप्ट कर ही नहीं सकता मैं पूरे इस
चैप्टर में एक बार बार-बार बोल रहा था ना क्या किसी भी प्रोसेस को कोई भी प्रोसेस कभी भी कांटेक्ट स्विच कर सकती है इन जनरल
वी से कि हां कर सकती है बट यहां पर मान रहे है कि नहीं कर सकती अब सोचिए अगर इंटरप्ट ही नहीं कर सकती तो अभी सोचो
इसमें फिर क्या आप करोगे क्या मैं करूंगा तो देन इट इज गोइंग टू वर्क फाइन और डिसेबल इंटरप्ट करो क्रिटिकल सेक्शन एंजॉय
करो बाहर आते हुए फिर से इनेबल कर दो तो यह एक अप्रोच हो सकती है एक दूसरा बहुत अच्छा मैकेनिज्म है जिसे बोलते हैं टेस्ट
एंड सेट वो कैसे काम करता है उस परे आपको क्लेरिटी देता हूं चार लाइन का छोटा सा कोड है वैसे इसमें पॉइंटर यूज हो रहे हैं
बट ट्रस्ट मी आप एक बार ऑब्जर्व करोगे आपको मजा आ जाएगा बहुत मुश्किल नहीं है मैं समझाऊ आपको पूरी बात एक कहानी समझो
टेस्ट एन सेट की इमेजिन करते हैं कि मेरे पास एक लॉक वेरिएबल है अभी मैं कोड की बात नहीं कर रहा एक बात आपको समझाता हूं मेरे
पास एक लॉग वेरिएबल है एंड लेट मी से लॉ की वैल्यू अगर ज़ीरो है तो लॉ फ्री है वरना वन है तो लॉग ऑक्यूपाइड है तो कोई
प्रोसेस आएगा और वो आके चेक करेगा इफ लॉग इ इ इ 0 इजंस ज़ीरो है वेल एंड गुड मैं क्रिटिकल सेक्शन के अंदर जाऊंगा सबसे पहले
लॉक में वन असाइन करूंगा ताकि किसी और को प्रॉब्लम ना हो आई विल एंजॉय माय क्रिटिकल सेक्शन और बाहर आते हुए नोटिस करिए लॉग को
दोबारा ज़ीरो करूंगा कितना सिंपल सा तीन लाइन का कोड है पूरी प्रोसेस कंप्लीट है कोई प्रोसेस आएगा चेक करेगा एंड दिस विल
गो ऑन प्रॉब्लम क्या है इसके अंदर इसको बोलते हैं टेस्ट एंड सेट करना हमने यहां पे पहले टेस्ट किया कि लॉक खाली है कि
नहीं लॉक खाली है तो अंदर गए लॉक एक्वायर किया क्रिटिकल सेक्शन एंजॉय किया बाहर आते हुए अनलॉक किया प्रॉब्लम इसके अंदर कब
आएगी वो ध्यान से देखिएगा मान लीजिए पहला प्रोसेस आता है लेट मी नेम दैट प्रोसेस p1 उसने पहले चेक किया लॉग की वैल्यू रो है
कि नहीं इधर अलग से मेंशन कर लेता हूं लेट मी से कि लॉग की वैल्यू रो है तो कोई प्रॉब्लम होनी नहीं चाहिए लॉक की वैल्यू
जीरो है प्रोसेस अंदर गया अब प्रोसेस लॉक = 1 करने वाला था टेस्ट कर चुका था सेट करने वाला था लेकिन किसी दूसरे प्रोसेस ने
मान लीजिए लेट मी से प्रोसेस नंबर p2 ने p1 को कांटेक्ट स्विच कर दिया अब सोचो क्या होगा जैसे ही कांटेक्ट स्विच हुआ तब
तक क्या लॉग की वैल्यू वन की जा चुकी थी नहीं की थी ओ माय गॉड p2 अंदर आया p2 ने चेक किया लॉग की वैल्यू अभी भी जीरो है p2
अंदर गया उसने लॉग की वैल्यू वन की और p2 p1 से पहले पहुंच गया क्रिटिकल सेक्शन के अंदर और आई थिंक आप समझ चुके होंगे कि
कैसे यहां पर ऑलरेडी म्यूचुअल एक्सक्लूजन वायलेट हो चुका है p1 को जब कंट्रोल वापस मिलेगा तो वो तो ऑलरेडी अंदर आ चुका है वो
क्या करेगा वो वन को कट करके दोबारा वन लिखेगा उसको लग रहा है लॉग की वैल्यू अभी भी ज़ीरो ही है और वो भी अंदर जाके p2 को
कर देगा पी से धप्पा धप्पा करेगा म्यूचुअल एक्सक्लूजन क्लियर कट वायलेट होता नजर आ रहा है क्योंकि एक ही टाइम पे दो प्रोसेस
क्रिटिकल सेक्शन के अंदर है सो दैट इज अ प्रॉब्लम बिहाइंड टेस्ट एंड सेट बेसिकली टेस्ट एंड सेट का ये मतलब होना चाहिए पहले
मैं टेस्ट करूंगा फिर मैं सेट करूंगा प्रॉब्लम क्या है ध्यान से सोचिए प्रॉब्लम यह है कि कोई तीसरा कोई दूसरा प्रोसेस आके
मुझे टेस्ट और सेट करने के बीच में कांटेक्ट स्विच कर रहा है अगर कोई प्रोसेस मुझे कांटेक्ट स्विच ना करे तो सॉल्यूशन
बढ़िया काम करेगा और वो कैसे करेगा इसी के लिए ये एक एग्जांपल यहां पर लिख के दिखाया है एक-एक प्रोसेस कंप्लीट करता हूं थोड़ा
सा इसमें यूज होगा पॉइंटर का बट आपको पॉइंटर आता है कि नहीं आता है प्रोग्रामिंग में आपकी क्या कैपेसिटी है
उस बात का इस क्वेश्चन से कोई लेना देना नहीं है तो बिल्कुल भी मत घबराइए यस मैं शुरू करता हूं देखिए हुआ क्या जैसे आमतौर
पे हम इंटरसेक्शन लिखते हैं वैसे ही इंटरसेक्शन है वाइल बाद में लगाया सेमीकलन इसका मतलब ट्रैप है वाइल टेस्ट एंड सेट और
क्या कर रहा है लॉग कोई वेरिएबल है उसका एड्रेस पास कर रहा है अब लॉग की कहानी आप जानते हैं तो लॉग मैं एक वेरिएबल बना लेता
हूं लेट मी टेक लॉक और यहां पे रो व ना बोल के आई थिंक ट्रू फॉल्स में लिखा है कोई दिक्कत नहीं है तो लॉक अगर फॉल्स है
तो मान लेते हैं कि अभी क्रिटिकल सेक्शन फ्री है लॉक फ्री है और जैसे कोई लॉक एक्वायर करेगा उसको उठा के ट्रू कर देगा
फेयर इनफ इतनी बात तो समझ आती है अब होगा क्या देखिए इसने एड्रेस पास किया वाइल टेस्ट एंड सेट में नाउ दिस इज अ फंक्शन
टेस्ट एंड सेट जहां पर एड्रेस आया एक पॉइंटर टारगेट में तो टारगेट का मतलब आप समझ रहे हो पॉइंटर का मतलब शॉर्ट में लिख
लेता हूं तो देर इज अ पॉइंटर टारगेट व्हिच पॉइंट्स टू लॉक चलिए यहां तक बात समझ आ गई अब क्या कह रहा है एक बुलियन वेरिएबल इसने
बनाया आरवी आरवी लेट मी से स्टैंड्स फॉर रिटर्न वैल्यू तो एक अलग से वेरिएबल बना लेता हूं आवी और उसमें क्या सेम कर रहा है
स्टार टारगेट तो टारगेट नहीं वही पॉइंटर वाली बात डी रेफरेंसिंग उसका वैल्यू जिसको ये पॉइंट कर रहा है तो लॉग का वैल्यू क्या
है फाइ ए फॉल्स तो यहां पे स्टार्ट टारगेट की मदद से क्लियर कट यहां पर हमने फॉल्स सेव कर लिया तो बेसिकली इस बार मैंने अभी
सेट नहीं किया ना ही टेस्ट किया मैंने उठा के सिर्फ वैल्यू को एक जगह कॉपी कर लिया और फिर यहीं बैठ के देखिए स्टार टारगेट
में रख रहा है ट्रू लॉग को मैंने टच ही नहीं किया लेकिन टारगेट प बैठ के स्टार टारगेट में ट्रू तो यहां पर इसका मतलब है
बिना पढ़े अभी हमने सिर्फ ल्ड वैल्यू सेव की है बिना पढ़े उसको ओवरराइट करके ट्रू कर दिया वाह भाई वाह अब कह रहा है रिटर्न
कर दो रिटर्न वैल्यू तो रिटर्न वैल्यू हमारे पास फॉल्स है अब बोलो वाइल में फॉल्स जाएगा तो क्या होगा लूप में फॉल
जाएगा तो कंडीशन वायलेट हो जाएगी आप लूप से बाहर आ जाएंगे और प्रोसेस लेट मी से यह p1 प्रोसेस है p1 बड़े आराम से पहुंचा
क्रिटिकल सेक्शन में मतलब तो समझो इस बात का अगर लॉग पहले से फॉल्स था सोचना इस बात को लॉग पहले से फॉल्स था तो कोई दिक्कत
नहीं होनी चाहिए लॉग ट्रू कर दिया मुझे क्रिटिकल सेक्शन में एंट्री मिल लीजिए मुझे क्रिटिकल सेक्शन में एंट्री मिल गई
बट मजे की बात क्या है पूरा पैटर्न ऑब्जर्व करें यहां मैंने पहले टेस्ट किया कि सेट किया यहां पहले मैंने सेट कर दिया
उसके बाद जाके टेस्ट किया पर सर अगर वैल्यू पहले से ट्रू होती करके देख लेते हैं p1 क्रिटिकल सेक्शन में है लेट मी से
कोई नया प्रोसेस आया जिसका नाम p2 प्रॉब्लम होनी चाहिए कायदे से तो p2 ने भी दोबारा कॉल किया टेस्ट एंड सेट और फिर से
ये पूरी कहानी चलेगी एड्रेस पास हुआ स्टार टारगेट इसने इसको पॉइंट फाइंड करना स्टार्ट किया इस बार बोलो रिटर्न वैल्यू
में क्या आएगा क्योंकि वैल्यू यहां पर ऑलरेडी ट्रू है इस बार रिटर्न वैल्यू में ट्रू आएगा स्टार टारगेट में ट्रू तो मैं
कुछ नहीं करूंगा ऑलरेडी ट्रू है ट्रू को ओवरराइट करके फिर से मैंने ट्रू लिख दिया एंड देन रिटर्न वैल्यू बट बोलो इस बार
क्या रिटर्न होगा सर इस बार ट्रू रिटर्न होगा क्योंकि वैल्यू पहले से ट्रू है और वाइल में अगर ट्रू बना रहेगा तो बोलो यहीं
पे वेट करूंगा बिजी वेट करूंगा आगे जाऊंगा सर यहीं पे गोलगोल घूमता रहूंगा तो p2 को क्रिटिकल सेक्शन में एंट्री मिलेगी कि
नहीं मिलेगी नहीं मिलेगी अब इसको आखिरी बार इंक्लूड कर देता हूं ऐसे मैं जाता हूं और बिना पढ़े जो भी लिखा है मेरे को फर्क
नहीं पड़ता उसको ट्रू कर देता हूं अगर वैल्यू पहले से फॉल्स है तो तो मेरा फायदा हुआ ना सर फायदा क्यों हुआ क्योंकि अब वो
वैल्यू हो गई ट्रू मेक्स सेंस मेरे को कंट्रोल मिल गया बाद में जाके मैंने एंट्री की लेकिन अगर वो वैल्यू पहले से
ट्रू है तो किसी का क्या नुकसान मैंने ट्रू को उठा के ट्रू ही रख दिया और मैं तो यहीं पे बिजी वेट कर रहा हूं अंदर तो जा
नहीं रहा सो दैट इज आईडिया ऑफ टेस्ट एंड सेट तो एक्चुअली इसका नाम टेस्ट एंड सेट है बट ये रियलिटी में क्या है ये सेट एंड
टेस्ट है सेट पहले कर रहे बाद में जाके टेस्ट करते हैं तो आई होप ये अप्रोच आपको समझ आई होगी और गेम क्या है कि जो पूरा
फंक्शनैलिटी है जो मैंने आपको पॉइंटर की मदद से बताया जो कॉम्प्लेक्शन होता है सिस्क कंप्यूटर खासकर जो होता है
कॉम्लेक्स कॉम्प्लेक्शन सेट फॉर्मेट कंप्लीट इंस्ट्रक्शन सेट फॉर्मेट वो इसको एटॉमिकली एग्जीक्यूट करते एक ऐसा
इंस्ट्रक्शन होना चाहिए कि बीच में मुझे कोई कांटेक्ट स्विच ना करे बिकॉज फिर वही टेस्ट एंड सेट की कांटेक्ट स्विच की
प्रॉब्लम है बीच में किसने कांटेक्ट स्विच कर दिया तो प्रॉब्लम होगा तो अगर मैं एटॉमिकली इसको रन करूं तो ये ये भी एक
सॉल्यूशन हो सकता है क्रिटिकल सेक्शन को अच्छे से हैंडल करने का सो आई होप अभी यह पूरी कहानी आपको समझ आई होगी टू प्रोसेस
सॉल्यूशन से लेके सीमा फोर क्लासिकल प्रॉब्लम तक और हार्डवेयर सॉल्यूशन तक ये सारे पॉइंट काइंड ऑफ हमने बहुत अच्छे से
स्टडी कर लिए एंड नाउ आई थिंक वी आर वेरी मच रेडी टू द लास्ट फेज ऑफ प्रोसेस मैनेजमेंट व्हिच इज डेडलॉक तो चलिए अभी
बात करते हैं डेडलॉक के बारे में डेडलॉक एक ऐसा सिनेरियो है जो पूरी कंप्यूटर साइंस में शब्द आप कई बार सुनेंगे बट
ट्रस्ट मी नॉट इवन डीबीएमएस ऑपरेटिंग सिस्टम ही ऐसा सब्जेक्ट है जहां पे आपको इसको डिटेल में पढ़ने का मौका मिलेगा तो
डेडलॉक का मतलब क्या है अगर इफ आई इफ आई गो बाय डेफिनेशन फिर एक छोटा सा एग्जांपल आपको समझाता हूं इन अ मल्टी प्रोग्रामिंग
एनवायरमेंट सेवरल प्रोसेस मे कंपीट फॉर फाइट नंबर ऑफ रिसोर्सेस ये बात तो ठीक है बहुत सारी प्रोसेसेस होंगी और बहुत सारे
रिसोर्सेस होंगे और प्रोसेस फाइट कर रही होंगी कि यार मेरे को रिसोर्स मिले ठीक है नाउ अब प्रोसेस रिक्वेस्ट अ रिसोर्स एंड
फिर रिसोर्स इज नॉट अवेलेबल एट द टाइम द प्रोसेस एंटर्स अ वेटिंग स्टेट ये बात भी समझ आती है
मैंने फॉर एग्जांपल यहां देखिए मान लीजिए दो प्रोसेस है p1 और p2 दो रिसोर्स r1 r2 फिलहाल मान लेते हैं कि प्रोसेस p1 को
दोनों रिसोर्स चाहिए और जैसे ही उसने रिक्वेस्ट किया r1 रिसोर्स जो है वो p1 को लोकेट हो गया लेकिन इसी टाइम पे p2 ने r2
रिसोर्स एक्वायर कर लिया यस अच्छा दोनों प्रोसेस को दोनों रिसोर्स चाहिए तो अब होगा क्या अगर मैं इसे डिफरेंट तरह से
मार्क करूं नाउ p1 विल बी वेटिंग फॉर रिसोर्स r2 एंड p2 विल बी वेटिंग फॉर रिसोर्स r1 दोनों वेट कर रहे हैं दोनों के
पास थोड़ा-थोड़ा आईडिया भी है तो अब हुआ क्या p1 वेटिंग में चला गया p1 से पूछ रहा भाई एग्जीक्यूट क्यों नहीं कर रहा p1 कह
रहा कैसे करूं क्योंकि मेरे को जो रिसोर्स चाहिए r2 व मेरे पास नहीं है हालांकि कुछ मैंने होल्ड भी करके रख ली है अब आप p2 से
पूछेंगे भाई आप रन कर लो p2 कहेगा मैं भी कैसे करूं मेरे को जो रिसोर्स चाहिए r1 वो मेरे पास नहीं है r2 मैंने एक्वायर कर लिए
बट r1 में क्या हो जब तक मैं वेटिंग में हूं जब तक मुझे r1 नहीं मिलेगा मैं आगे एग्जीक्यूट नहीं कर सकता दोनों यही बोल
रहे हैं नाउ सम टाइम्स वेटिंग प्रोसेस नेवर अगेन एबल टू चेंज द स्टेट बिकॉज़ द रिसोर्स इट हैज रिक्वेस्टेड इज होल्ड बाय
अनदर वेटिंग प्रोसेस एंड दिस सिनेरियो इज नोन एज डेड लॉग बात समझ आ रही है मैं वेट कर रहा हूं किसके लिए एक ऐसे प्रोसेस p2
के लिए जो कि काइंड ऑफ खुद वेट कर रहा है किसके लिए मेरे लिए बिकॉज़ अल्टीमेटली p1 देखने में लग रहा r2 के लिए वेट कर रहा है
बट एक्चुअली वो p2 के लिए वेट कर रहा है क्योंकि r2 p2 के पास है p2 r1 के लिए वेट कर रहा है बट एक्चुअली वो भी p1 के लिए
वेट कर रहा है क्योंकि r1 p1 के पास है सो सेट ऑफ प्रोसेस इज इन डेडलॉक स्टेट व्हेन एवरी प्रोसेस इन द स्टेट इज वेटिंग फॉर एन
इवेंट दैट कैन बी कॉज ओनली बाय अनदर प्रोसेस इन द सेट तो पढ़ने में थोड़ी बढ़िया लग रही है डेफिनेशन आईडिया क्या है
व सारी प्रोसेस मिला के डेडलॉक बना रही है कब जब प्रोसेस किसी ऐसे इवेंट के लिए वेट कर रहा हो जो वो प्रोसेस करे जो खुद
वेटिंग स्टेट में तो यह तो वेट कभी पूरा होगा नहीं तो यह फाइना इट स्टार हुआ कि इनफाइनों मैं बोल रहा हूं यहां देर नहीं
अंधेर है जब अंधेर हो तो मान लेना कि हां डेड लॉक लग गया तो डेड लॉक की बेसिक सिचुएशन आपको समझ आई अब जैसे देखिए
प्रैक्टिकल एग्जांपल देखिए इस कार से इन दोनों कार से बोलेंगे चल क्यों नहीं रहे बोलेगा यह चलेगा तो मैं चलू इन दोनों कार
से पूछोगे चल क्यों नहीं रहे बोलेगा यह कार अगर रास्ता दे ये दोनों कार तो मैं चलू इस कार से पूछोगे बोलेगा ये कार एंड
देन यू से देर इज अ साइकिल हां तो अल्टीमेटली ये सब के सब वेटिंग में है यह एक ऐसे इवेंट के लिए वेट कर रहे हैं जो
इनडायरेक्टली खुद आपके लिए वेट कर रहा है तो य लग गया डेड लॉक और ट्रैफिक तो बहुत पॉपुलर एग्जांपल है डेड लॉक का रियल लाइफ
में और बहुत सारे सिनेरियो हो सकते हैं जैसे मैंने एक एग्जांपल सोचने की कोशिश की इधर हमारी गवर्नमेंट ऑफ इंडिया इधर है
सिटीजन गवर्नमेंट क्या बोलती है गवर्नमेंट बोलती है कि हमें सिटीजन से टैक्स चाहिए है ना जब यह हमको प्रॉपर तरह से ईमानदारी
से टैक्स देंगे तो बदले में हम इनको सर्विसेस देंगे अब सिटीजंस क्या शिकायत करेंगे हमें सर्विस नहीं मिल रही गट क्या
शिकायत करेगी हमें टैक्स नहीं मिल रहा और दोनों एक दूसरे पे यू नो आरोप लगाते रहेंगे सो दिस इज अ काइंड ऑफ अ डेडलॉक
सिचुएशन और देख लेते हैं लुक एट दिस दिस इज एटम बम अब देखिए कितनी मजेदार बात है मान लीजिए कोई बड़ा बम है न्यूक्लियर बम
है जैसे जैसे हमने बड़े-बड़े वेपन सिस्टम्स बनाए ना दुनिया में तो लोगों को लग रहा था लड़ाई ज्यादा होगी बट एक्चुअली
उसके बाद लड़ाई हुई कि नहीं हुई नहीं बिकॉज एक तरह का डेडलॉक सिचुएशन है सबको पता है कि अगर इसके पास एटम बम है है ना
फॉर एग्जांपल एपल नॉर्थ कोरिया के पास भी एटम बम है तो अमेरिका को पता है अगर हमने नॉर्थ कोरिया को कुछ किया तो वो हम पे एटम
बम कर देगा इसलिए कोई कुछ कर नहीं रहा सो दिस इज आल्सो काइंड ऑफ अ डेड लॉक तो डेड लॉक का एक बेसिक अंडरस्टैंडिंग आई थिंक
आपको समझ आ गया डेड लॉक होता क्या है डेफिनेशन आप देख चुके एग्जाम में मस्त से लिख के आएंगे अब हमें ओबवियसली डेड लॉक
हटाना है डेड लॉक ऑपरेटिंग सिस्टम के लिए कंप्यूटर के लिए कोई बहुत अच्छा सिनेरियो नहीं है डेड लॉक हटाएंगे कैसे डेड लॉक
हटाने के लिए पहले ये समझना पड़ेगा कि डेड लॉक लगता क्यों है जब तक डेड लॉक यू नो समझेगा नहीं तब तक उसको हटाओ ग स तो यहां
पर पहले हम क्या स्टडी करते हैं अगेन दिस इज अ वेरी इंपोर्टेंट क्वेश्चन फॉर सेमेस्टर एग्जाम नेसेसरी कंडीशंस फॉर डेड
लॉक तो हमारे पास चार नेसेसरी कंडीशन इसको सीक्वेंस में याद कर लेना हाथ में टैटू करा लेना क्या-क्या हमारे पास है म्यूचुअल
एक्सक्लूजन होल्ड एंड वेट नो परमिशन एंड सर्कुलर वेट मैं रिपीट कर रहा हूं म्यूचुअल एक्सक्लूजन होल्ड एंड वेट नो
परमिशन सर्कुलर वेट कोई एक नहीं जब किसी सिस्टम में ये चारों कंडीशन एक साथ अकर करती हैं तो डेडलॉक लगता है तो पहले हम
क्या करना वाले पहले हम इन चारों कंडीशंस को समझने वाले हैं और फिर आगे जाकर समझेंगे कि ऐसा क्या करें कि ये चारों
कंडीशन एक साथ अगर ना करें तो डेड लॉक भी नहीं लगेगा है ना तो डेड लॉक ना लगे वो करने के लिए समझने के लिए वो इंप्लीमेंट
करने के लिए पहले हम ये समझ रहे कि डेड लॉक लगता कैसे तो सबसे पहला जो हमारा कंडीशन है व है म्यूचुअल एक्सक्लूजन सिंपल
भाषा में समझा देता हूं नोट सारा यहां पर मैंने लिख के रखा है एग्जाम में आपको क्या लिख के आना है देखो लड़ाई होने के लिए
पहले लड़ाई का एक कारण होना जरूरी है ना तो हम हमारे पास एक ऐसा रिसोर्स होना चाहिए लेट मी कॉल इट r1 जो कि म्यूचुअल
एक्सक्लूसिव फैशन में ये सीमा फोर वाले म्यूचुअल एक्सक्लूजन है वो अलग बात है अलग बात है म्यूचुअल एक्सक्लूसिव फैशन में ही
यूज होता हो कहने का मतलब क्या है अगर एक रिसोर्स है देखिए जैसे यहां पर मैंने प्रिंटर का एग्जांपल लिया मुझे बताइए कि
एक टाइम पे एक प्रिंटर को दो या तीन या चार लोग यूज कर सकते हैं क्या प्रैक्टिकली कैसे करेंगे एक टाइम प तो एक ही कर सकता
है बिकॉज फिजिकल नेचर उसका ऐसा है तो सपोज इफ समबे यूजिंग सम वायरलेस नेटवर्क तो अभी इन दोनों को क्या करना पड़ेगा वेट करना
पड़ेगा तब जब यह काम कंप्लीट हो जाएगा तब आगे बढ़ेगा अब मान लीजिए रेडियो है क्या हो सकता है यह तीनों लोग एक ही टाइम पे
रेडियो सुनना चाहते हो सुन सकते हैं रेडियो इज़ अ शेरेबल रिसोर्स तो उसमें कभी डेड लॉक लगेगा नहीं तो याद रखिएगा डेड लॉक
लगने के लिए एक कारण होना जरूरी है वह कारण क्या है मेरे पास कम से कम एक ऐसा रिसोर्स हो जो कि म्यूचुअल एक्सक्लूसिव
फैशन में यूज़ होता हो म्यूचुअल एक्सक्लूसिव मतलब एक बार में एक अगर ऐसा है तो डेड लॉक लग सकता है मैं नहीं कह रहा
हूं लगेगा तो लग सकता है बट अगर ये रिसोर्स नहीं है तो तो लगेगा ही नहीं बात तय हो गई समझ आती है बात आगे बढ़ी अगला
क्या है होल्ड एंड वेट अच्छा ये कमाल की सिचुएशन है एक एग्जांपल रिलेट करता हूं मान लीजिए आप गए किसी पार्टी के अंदर अब
पार्टी में आपको खाना है खाना इसीलिए आप गए हैं खाना खाने के लिए दो रिसोर्स आपको चाहिए एक प्लेट चाहिए एक स्पून चाहिए मैं
वो वाला केस इमेजिन नहीं कर रहा कि बिना इसके आप कैसे खाएंगे वो तो जबरदस्त हो जाएगा खैर दो रिसोर्स चाहिए अब मान लीजिए
आपको प्लेट तो मिला आपको स्पून नहीं मिली अब आप क्या करेंगे एक तरीका तो यह प्लेट भी वहां पर रखी हुई है और आप ढूंढ रहे हैं
स्पून की जब स्पून मिलेगी तभी आके प्लेट भी लूंगा वरना कोई मतलब नहीं है लेकिन मुझे बताइए ऐसा करने में एक ऑब्स यू नो एक
एक आईडिया है कि क्या हो सकता है इन द मीन वाइल आपको स्पून मिले आपकी प्लेट भी गायब हो जाए तो एक फंडामेंटल सिनेरियो क्या है
एक बेसिक बिहेवियर क्या है कि आप इस प्लेट को अपने हाथ में रखेंगे आप इसको होल्ड करेंगे और उसके बाद जाके रिमेनिंग रिसोर्स
के लिए वेट करेंगे इजेंट इट और हम मान के चलते हैं ऑपरेटिंग सिस्टम में जितनी भी प्रोसेस है सबका यही बिहेवियर है जिसको
बोलते हैं होल्ड एंड वेट तो जैसा हमने वहां देखा था ना अगर किसी प्रोसेस p1 को दो रिसोर्स चाहिए सपोज ली r1 एंड r2 और
मान लेता हूं कि r1 अभी अवेलेबल है तो p1 क्या करेगा p1 r1 को होल्ड करेगा उसके बाद r2 को सर्च करेगा होल्ड एंड वेट है ना p1
का आर्गुमेंट क्या है वच व्हिच मेक्स सेंस कि यार अगर मैंने इसको भी होल्ड नहीं किया ना तो मैं तो स्टार्वेशन में चला जाऊंगा
पता नहीं ऐसा कब होगा कि सारी रिसोर्स एक साथ मिलेंगी हालांकि ऐसा करने से डेड लॉक लगता है बट ये पॉइंट आपको समझना है तो
होल्ड एंड वेट की यू नो कंडीशन क्या कहती है प्रोसेस मस्ट बी होल्डिंग एटलीस्ट वन रिसोर्स एंड वेटिंग फॉर वेटिंग टू एक्वायर
एडिशनल रिसोर्सेस दैट आर नॉट दैट आर करेंटली हेल्ड बाय अदर प्रोसेस तो जो मिले भागते भूत की लंगोटी मिली जो मिले उसको
होल्ड करो उसके बाद आगे के लिए वेट करना है दैट इज होल्ड एंड वेट नेक्स्ट इज नो प्रीमन
इसका क्या मतलब है यहां देखिए दो रेसलर आपको नजर आ रहे हैं हालांकि आपको लगेगा कि यार बड़ी ना इल्लीगल सी इनवैलिड फाइट है
बिकॉज यह सुमो रेसलर काफी भारी नजर आ रहा है और यह तो एक बच्चा है हालांकि मैं आपको बता दूं सुमो रेसलिंग एक ऐसा स्पोर्ट है
जहां पे वेट कैटेगरी होती नहीं है तो ऑफिशियल इट्स अ लीगल फाइट बिकॉज आपको अगर जीतना तो आप भी अपना वेट बढ़ा लो
आर्गुमेंट ये है हालांकि इसमें जीतेगा यह बच्चा ही बिकॉज ये इसी का बच्चा है तो ये अपने बे को ट्रेन कर रहा है वो अलग बात है
चलो मैं आपको आईडिया समझाता हूं नो परमिशन क्या कहता है इन अ सिस्टम जब तक हम अलग से मेंशन नहीं करेंगे क्या कोई प्रोसेस किसी
दूसरे प्रोसेस का रिसोर्स फोर्सफुली प्रिंट कर सकता है क्या नहीं कर सकता सर बिकॉज़ आप समझिए ना सिनेरियो याद है सबसे
बेसिक एग्जांपल दो प्रोसेस है मेरे पास p1 p2 दो रिसोर्स है मेरे पास r1 r2 r1 p1 के पास है r2 p2 के पास है और अब हम बचे हुए
रिसोर्स के लिए क्या कर रहे हैं अब हम बचे हुए रिसोर्स के लिए वेट कर रहे हैं अगर फोर्सफुल प्रिमिस अलाउड हो अगर कोई
प्रोसेस किसी दूसरे प्रोसेस के रिसोर्स को फोर्सफुली प्रिंट करे तो कभी लड़ाई होगी सर फिर तो कभी क्लैश होगा ही नहीं वो
लड़के अपना मामला सेटल कर लेंगे तो नो प्रशन क्या कहता है हम किसी दूसरे प्रोसेस के रिसोर्स को फोर्सफुली प्रिम नहीं कर
सकते जब तक कि वो उसको वॉलेटर रिलीज ना कर दे तो परमिशन वाला आईडिया नहीं है है ना तो म्यूचुअल एक्सक्लूजन बात समझ आ गई
होल्ड एंड वेट समझ आ गया नो प्रशन समझ आ गया क्या इन तीनों कंडीशन से डेडलॉक लग जाएगा नहीं नहीं मैंने बोला चारों कंडीशन
जब एक टाइम पे एक साथ अगर होंगी तो डेड लॉक लगेगा और चौथ सबसे इंपॉर्टेंट कंडीशन है सर्कुलर वेट मैं एक बहुत सिंपल सा
सिनेरियो दिखा के आपको समझाता हूं मजा आ जाएगा मान लीजिए तीन प्रोसेस है लेट मी से p1 एंड p2 और ये एक तरह का बेसिक सा ग्राफ
है जो बता रहा है कौन किसके लिए वेट कर रहा है इसको बोलते हैं वेट फॉर ग्राफ तो लेट मी से इस सिनेरियो का मतलब है राइट
नाउ p1 इज वेटिंग फॉर p2 p न इज वेटिंग फॉर p1 एंड p1 इज वेटिंग फॉर p2 और p2 से फिलहाल कोई आउटगोइंग एज
नहीं है तो मेरे को समझ आ रहा है कि p2 शायद अभी किसी के लिए वेट नहीं कर रहा अब आईडिया बताइए क्या यहां पर म्यूचुअल
एक्सक्लूजन है सर 100% है क्योंकि अगर म्यूचुअल एक्सक्लूजन ना होता तो फिर p नॉ p1 के लिए या p1 p2 के लिए वेट क्यों करता
तब तो सारी रिसोर्स शेरेबल होती और एक टाइम पे एक से ज्यादा प्रोसेस रिसोर्स यूज कर पाते पॉइंट टू बी टेकन सेकंड होल्ड एंड
वेट क्या हो सकता है p0 और p1 ने कुछ रिसोर्स होल्ड भी करके रखी और तब एडिशनल रिसोर्स के लिए वेट कर रहे हूं हां
बिल्कुल हो सकता है कि सर कुछ रिसोर्स इनके पास हो अगेन दैट मेक्स सेंस कमिंग टू थर्ड पॉइंट क्या यहां पे नो प्रीमन भी है
हां क्योंकि अगर प्रीमन अलाउड होता तो अब तक वेट थोड़ी करते यार अब तक p नॉ p1 का या p1 p2 के रिसोर्स को फोर्सफुली प्रिंट
कर चुका होता हां या ना तीनों कंडीशन है पर क्या डेड लॉक है आई डोंट थिंक सो बिकॉज़ p2 किसी के लिए वेट नहीं कर रहा
कुछ समय के बाद p2 एग्जीक्यूट होगा रिसोर्स रिलीज करेगा वो रिसोर्स p1 को मिलेगा फिर p1 रन करेगा रिसोर्स रिलीज
करेगा वो रिसोर्स p0 को मिलेगा और कहानी खत्म हो जाएगी लेकिन सर अगर ऐसा हो जाए कि p2 फिर से घूम के p
न के लिए वेट करें फिर वही बात सर्कुलर वेट अब यह प्रॉब्लम कभी सॉल्व होने वाली नहीं बिकॉज़ हर कोई एक दूसरे के लिए ही
वेट कर रहा है तो आखिरी कंडीशन है सर्कुलर वेट ध्यान रखना है जब तक सर्कुलर वेट भी नहीं होगा तब तक भी डेड लॉक नहीं लगेगा तो
चारों कंडीशन आई थिंक हमने समझ ली है और बड़ा इंटरेस्टिंग सिनेरियो है याद रखिएगा यह इतना लिख दिया 10 में से आठ न नंबर
मिलेगा ही मिलेगा म्यूचुअल एक्सक्लूजन होल्ड एंड विट ो प्रशन सर्कुलर वेट जब ये चारों कंडीशन नेसेसरी है ना जब ये चारों
कंडीशन एक साथ अगर करती है तो डेट लॉक लगता है अब हमें करना क्या प्रॉब्लम तो समझ गए सर हमें करना है ये अब हमें डेड
लॉक की हैंडलिंग मेथड समझने है हमें समझना है कि ऐसा क्या करें कि डेड लॉक ना लगे अब ऐसा करने की बेसिकली चार अप्रोचेबिलिटी
सिस्टम डिजाइन करो कि डेड लॉक लगे ही ना लगना ही नहीं चाहिए नेक्स्ट इज अवॉइडेंस मैं धीरे-धीरे पार्शियल डिफरेंस से समझाऊं
अवॉइडेंस इतना एग्रेसिव नहीं है जितना एग्रेसिव प्रिवेंशन अवॉइडेंस कहता है रन टाइम पे मैनेज कर सकते हैं क्या लगने हम
भी नहीं देंगे लेकिन इतने स्ट्रिक्ट नहीं होंगे जितना कि प्रिवेंशन होगा नेक्स्ट इज डिटेक्शन वो कहता है टेंशन क्या भाई पहले
लग जाने दो अभी पहले से टेंशन नहीं लेते ये बहुत ही लिबल है कह रहा पहले लग जाने दो अगर लगा तो रिकवर कर लेंगे सो दैट इज
डिटेक्शन एंड रिकवरी एंड फोर्थ क्या है इग्नोर हैंस यह ध्यान में है आत्मा यू नो अजर अमर है यह वो वाले सिद्धांत पर काम कर
रहा है कह रहा है डेडलॉक क्या होता है मन के मानो तो डेड लॉक है मन से नहीं मानो तो डेड लॉक नहीं है तो अगर मैं इसे इग्नोर ही
कर दूं प्रॉब्लम को तो फिर प्रॉब्लम सॉल्व करने की जरूरत नहीं है थोड़ा जीब भी लगता है बट ये बहुत इंपॉर्टेंट आईडिया किसी
प्रॉब्लम को सॉल्व करने का इस पे भी आगे डिटेल में बात करेंगे यस तो अब पहले सबसे पहले आपको समझाता हूं प्रिवेंशन अप्रोच
कैसे काम करता है तो चलिए सबसे पहले बात करेंगे प्रिवेंशन के बारे में बहुत बार आपने सुना होगा प्रिवेंट इज बेटर देन
क्योर है ना तो अगर पहले से रोका जा सकता प्रॉब्लम को तो सॉल्व कर लेना चाहिए और मेरे ख्याल से पोलियो से बड़ा एग्जांपल
क्या हो सकता है आजकल हालांकि मुझे पता नहीं नए लोग कितना जानते हैं बट पोलियो वैक्सीन पोलियो एक बहुत बड़ी प्रॉब्लम थी
और इंडिया जैसे इतने बड़े देश में पोलियो काफी लोगों को हो रहा था तो गवर्नमेंट ने क्या किया वैक्सीनेशन शुरू किया होने का
इंतजार नहीं किया बिकॉज एक बार अगर किसी को पोलियो हो गया तो फिर गया फिर उसका कोई सॉल्यूशन नहीं है तो इतने सारे लोगों को
वैक्सीनेशन दी और बिकॉज ऑफ दिस ओनली नाउ इंडिया इज प्रैक्टिकली अ पोलियो फ्री नेशन है ना तो प्रॉब्लम अगर बहुत सीवियर नेचर
का और बार-बार हो रहा है तो बेटर है कि उस प्रॉब्लम को पहले ही रिमूव कर दिया जाए अब क्या यह सॉल्यूशन डेड लॉक पे लगाया जा
सकता है हां दोबारा सोचते हैं एक बार डेड लॉक कब लगता है जब चार कंडीशन एक साथ हो है ना कौन-कौन सी नो प्रीमन सॉरी सबसे
पहले म्यूचुअल एक्सक्लूजन होना चाहिए देन होल्ड एंड वेट होना चाहिए नो परमिशन सर्कुलर वेट एक कुर्सी है जिसके चार पाए
हैं अगर उसमें से एक लेग भी तोड़ दिया जाए तो डेडलॉक बैठ पा पाएगा क्या नहीं डेड लॉक गिर जाएगा तो चलिए वही शुरू करते हैं सबसे
पहला जो हमारा कंडीशन था म्यूचुअल एक्सक्लूजन था क्या म्यूचुअल एक्सक्लूजन कंडीशन को वायलेट किया जा सकता है हटाया
जा सकता है बहुत सोचेंगे तो समझ आएगा नहीं क्यों क्योंकि म्यूचुअल एक्सक्लूजन जो है ना वो दरअसल किसी भी रिसोर्स का फिजिकल
नेचर है अब जैसे मान लीजिए प्रिंटर है प्रिंटर कहता है भाई मैं एक बार में एक ही पेज प्रिंट कर सकता हूं तो या तो ये भाई
साहब करेंगे ये मैडम करें ये करेंगे तीनों का मैं एक साथ तो नहीं कर सकता अब मैं इसमें कोई भी मैनेजमेंट लगा लू यहां तो हम
बेसिकली सॉफ्टवेयर सॉल्यूशन लिख रहे हैं ना मैं कोई भी सॉल्यूशन लगा लूं मैं प्रिंटर को शेरेबल बना पाऊंगा क्या एक
टाइम पे तो नहीं हो सकता ना सर एक के बाद दूसरा दूसरे के बाद तीसरा करा सकते हैं तो इसका मतलब हम कितना भी दिमाग क्यों ना
लगाएं बट रिसोर्स अगर ऐसे नेचर का है जो कि म्यूचुअल एक्सक्लूसिव फैशन में यूज होता है तो मैं कुछ भी करके उसको शेरेबल
नहीं बना सकता तो इसका मतलब थोड़ा अजीब है बट क्या आप म्यूचुअल एक्सक्लूजन को प्रिवेंशन के अंदर वायलेट कर सकते हैं
नहीं कर सकते कोई बात नहीं अभी तीन पाए और बचे हैं अगला कोशिश करते हैं होल्ड एंड वेट इस पर बहुत सारी
अप्रोचेबल किसी रिसोर्स को होल्ड करके बैठ जाएगा और उसके बाद एडिशनल रिसोर्स के लिए वेट करेगा चलिए इस कंडीशन को वायलेट करते
हैं पहला एक आइडिया कंजरवेटिव अप्रोच जहां पर हम क्या बोलते हैं याद है ये वाला एग्जांपल कि प्रोसेस p1 कह रहा है कि यार
r1 तो मैंने होल्ड कर ली है r2 के लिए अभी मैं वेट कर रहा हूं और मैंने गेम चालू कर दिया प्रॉब्लम हो गया हम बोलेंगे नहीं
प्रोसेस इज अलाउड टू रन इफ एंड ओनली इफ इट हैज अक्वायर्ड ऑल द रिसोर्स सोर्सेस तो बेटा जितने रिसोर्स चाहिए पहले ले ले r1
लिया r2 चाहिए तो r2 भी जब आप एक्वायर कर लोगे तभी आप एग्जीक्यूशन चालू करोगे वरना r1 भी वापस ले लेंगे या तो ऑल या तो नन तो
ये इसलिए इसका नाम है कंजरवेटिव थोड़ी पुरानी बात है कि जब तक सारी रिसोर्स नहीं मिलेंगी तब तक रन करने नहीं देंगे बट कम
से कम रन टाइम प प्रॉब्लम नहीं आएगी तब होगा क्या r1 के बाद r2 के लिए ट्राई करेगा अगर r2 मिला तो बढ़िया बट अगर नहीं
मिला तो अब r1 को भी रिलीज करना पड़ेगा वो किसी और को मिलेगा तो अल्टीमेटली डेड लॉक नहीं लगेगा तो होल्ड एंड वड को वायलेट
किया जा सकता है बट इस सॉल्यूशन की कॉस्टिंग थोड़ी ज्यादा है एक प्रैक्टिकल सॉल्यूशन भी है वो क्या है अल्टरनेटिव
प्रोटोकॉल यह क्या कहता है कंक्लूजन यह है यह कहता है आपको जो रिसोर्स चाहिए आप सारे मत लो ठीक है आपको r1 चाहिए ना भी आप r1
लो और रन करना स्टार्ट करो ऐसा भी तो हो सकता है ना कि सारे रिसोर्स एक टाइम पे नहीं चाहिए मान लीजिए यह सीपीयू है यह
प्रिंटर है प्रोसेस कहता है पहले मेरे को एक घंटा कुछ कंप्यूटेशन करना है बाद में जो रिजल्ट आएगा उसको मेरे को प्रिंट कराना
है अब आप बोल रहे हो कि प्रिंट पहले से होल्ड करके रख एक घंटा कोई सेंस नहीं है कोई और आदमी यूज कर लेगा तो लॉजिक क्या
कहता है यहां पे कहता है जो रिसोर्स आपको चाहिए आप उसे एक्वायर करो काम करना चालू करो यस लेकिन उसके बाद किस बात का ध्यान
रखना है जब भी आप कोई दूसरा रिसोर्स के लिए रिक्वेस्ट करोगे पहले आपको जो रिसोर्स अभी आपको लोकेटेड है पहले आपको वो भी
रिलीज करनी पड़ेंगी जब वो रिलीज करोगे देन ओनली यू कैन हैव अ फ्रेश रिक्वेस्ट बताओ बात समझ आती है क्या तो जो रिसोर्स है वो
रिलीज करो तभी एडिशनल रिक्वेस्ट कर सकोगे अब होगा क्या जब यह रिलीज करोगे r1 रिलीज करोगे और r2 मांगोगे अब दो चीज होंगी या
तो r1 r2 दोनों आपको मिल जाएगा या तो हो सकता है r1 भी चला जाए कि r2 तो मिला नहीं जैसे ही r1 रिलीज किया वो कोई और ले गया
स्टार्वेशन हो सकता है बट कम सेकम सिस्टम में तो डेड लॉक नहीं लगेगा क्योंकि यह r1 किसी और को मिलेगा जो मिलेगा वो रन करेगा
रन करेगा रिसोर्स रिलीज करेगा रिलीज करेगा फिर आपका नंबर आ जाएगा यस ना कमिंग टू द लास्ट सॉल्यूशन व इज कॉल्ड टाइम वेट वेट
टाइम आउटस इसका क्या मतलब मतलब है आप r1 होल्ड कर लो देन यू कैन वेट फॉर r2 बट यह जो होल्ड है ना सर ये
इनफाइनों अगर आपने रिसोर्स एक्वायर कर लिया तो ठीक है वरना फिर आपको रिलीज करना पड़ेगा फिर वही बात है डरो मत जब आप रिलीज
करोगे तो किसी और को मिलेगा जब वो रन करेगा तो फिर बाद में वो रिलीज करेगा तो आपको मिल जाएगा तो वेट के ऊपर एक मैक्सिमम
बाउंड अगर हम लगा दें कि इतने टाइम के अंदर या तो प्रॉब्लम सॉल्व करो वरना ये कहानी ऐसी च लेी तो भी आई थिंक ये
प्रॉब्लम हमारी सॉल्व हो जाएगी यस तो दैट इज हाउ वी कैन रिमूव होल्डन विट अलग-अलग अप्रोचेबल को सॉल्व किया जा सकता है इसमें
से एक भी आपने किया तो एक ऐसा सिस्टम बनेगा जिसमें कभी डेड लॉक नहीं लगेगा कमिंग टू द नेक्स्ट सॉल्यूशन नो प्रीमन अब
इसका क्या मतलब है सर कोई भी प्रोसेस किसी दूसरे प्रोसेस की रिसोर्स को फोर्सफुली प्रिंट नहीं कर सकता तो क्या करें कर लो
प्रिंट खत्म हो गई बात तो अब होगा क्या मैंने स्टेप बाय स्टेप फैशन में लिखा है हम अगर किसी ने कोई रिसोर्स रिक्वेस्ट
किया हम चेक करेंगे अवेलेबल है कि नहीं अगर अवेलेबल है लोकेट कर देंगे बात खत्म अगर अवेलेबल नहीं है तो क्या करना है अब
सिर्फ वेट नहीं करेंगे दो-तीन सिनेरियो लिखता हूं एक केस हो सकता है कि हमने उसको एलोकेट किया हुआ है लेकिन एक ऐसी प्रोसेस
को एलोकेट किया है जो खुद किसी और के लिए वेट कर रही है जो कि डेड लॉक का सिनेरियो है तो उस केस में हम अलाव कर देते हैं कि
चलो आप फोर्सफुली उसका रिसोर्स प्रिंट कर सकते हो बिकॉज हमें पता है भला तो उसका भी नहीं होना वो भी वेट ही कर रहा है तो आपने
उसका रिसोर्स प्रिंट कर लिया उसके बाद यूज़ किया यूज़ करने के बाद आप रिलीज करेंगे तो उसका भी नंबर आ जाएगा लेकिन अब
यहां पे एक पॉइंट होगा कि हर कोई दूसरे का रिसोर्स छीन रहा होगा वो कह रहा मैं तेरा छीन लेता हूं तो यहां पर एक चीज का ध्यान
रखना चाहिए वो है प्रायोरिटी तो उस हिसाब से हम देखेंगे कि हाई प्रायोरिटी प्रोसेस लो प्रायोरिटी प्रोसेस का वेटिंग प्रोसेस
का रिसोर्स प्रिंट कर सकता है बट वाइज वर्सा ना हो कि लो प्रायोरिटी हाई प्रायोरिटी का रिसोर्स प्रिंट कर ले इट्स
लाइक कि आपको कहीं जल्दी में जाना है तो आपने पीएमओ को फोन कर दिया कि मोदी जी अभी रुको थोड़ा मेरे को एक गाड़ी भेजो मेरे को
कहीं जल्दी जाना है समथिंग लाइक दिस ये नहीं होना चाहिए नाउ कमिंग टू द नेक्स्ट पॉइंट अगर आप वेटिंग में है आपको जो
रिसोर्स चाहिए वो किसी ऐसे आदमी के पास है जो खुद रनिंग में है तो पहले तो इट इज नॉट एडवाइजेबल कि रनिंग प्रोसेस का रिसोर्स
प्रिंट किया जाए बट अगेन एक पॉइंट हो सकता है फिर वही बात है प्रायोरिटी इफ यू आर अ वेरी हाई प्रायोरिटी प्रोसेस तो ये भी
अलाव किया जा सकता है कि रनिंग प्रोसेस को रोक दिया जाए उसका रिसोर्स प्रिंट कर लिया जाए और तब आपको रिसोर्स एलोकेट करके आपको
पहले रन कराया जाए डिपेंडिंग ऑन द प्रायोरिटी बट मरल स्टोरी कि यस नो प्रिम कहता था रिसोर्स प्रिम नहीं किए जा सकते
हम कहते रिसोर्स प्रिम कर सकते हो और इस तरह से भी डेडलॉक हमारा सॉल्व हो जाएगा यस नाउ कमिंग टू फुल एंड फाइनल सॉल्यूशन
सर्कुलर वेट ये बड़े कमाल का सॉल्यूशन है इसको कैसे वायलेट करते हैं कई बार बच्चों को समझ नहीं आता अ हर स्लाइड प मैं पूरा
थ्योरी लिख के रखा हूं तो यू कैन टेक अ स्क्रीनशॉट नोट डाउन ईच एंड एवरी पॉइंट राइट देम नाउ कमिंग हियर मान लीजिए हमने
क्या सिनेरियो देखा था एक रिसोर्स है r1 एक रि सोर्स है r2 दो प्रोसेस हमारे पास थे p1 और p2 और प्रॉब्लम क्या है कि दोनों
ने एक-एक रिसोर्स एक्वायर कर लिया अच्छा इधर मैंने रिसोर्स बना दिया चलो ठीक है तो लेट मी से ये रिसोर्स p1 के पास है ये
रिसोर्स p2 के पास है और अब दोनों प्रोसेस एडिशनल रिसोर्स के लिए वेट कर रहे हैं तो हम एक काम करते हैं प्रॉब्लम ये हुआ कि p1
ने तो r1 लिया इन द मीन वाइल मौके का फायदा उठाया मौके पे चौका मारा और p2 ने r2 ले लिया इनका ऑर्डर सेम कर दो ना ताकि
प्रॉब्लम ना हो ऑर्डर सेम कर दो सर इसका क्या मतलब है इसका मतलब यह है कि अगर दोनों प्रोसेस को
दोनों रिसोर्स चाहिए तो बोलो भाई पहले r1 ही लो उसके बाद r2 लेना क्लैश होना चाहिए अब होगा क्या देखो r1 या तो p1 को मिलेगा
या तो p2 को हमने दोनों को बता दिया अगर आपको r1 r2 चाहिए लेट मी से यू कैन रिक्वेस्ट फॉर द रिसोर्स ओनली इन द
इंक्रीजिंग नंबर पहले r1 लोगे तभी r2 लोगे जब तक r1 नहीं लोगे तब तक r2 नहीं ले सकते अब मेरे को तो नहीं पता r1 किसको मिलेगा
बट किसी एक को मिलेगा ना दो को तो नहीं मिल सकता मान लो r1 मिल गया p2 को अब r1 अगर p2 को मिला तो p1 r2 पे तब तक नहीं
जाएगा जब तक उसे r1 नहीं मिल रहा r1 उसे मिला नहीं तो अब बहुत आराम से r2 भी किसको मिलेगा p2 को मिलेगा डेड लॉक रिजॉल्व हो
गया सर्कुलर वेट को वायलेट कर देना है तो कंक्लूजन बोलूं जितने भी रिसोर्सेस है लेट मी से आई हैव 100 नंबर ऑफ रिसोर्सेस यू
नंबर ईच एंड एवरी रिसोर्स और हर प्रोसेस को जो जो नंबर चाहिए मान लीजिए कोई प्रोसेस है प्रोसेस नंबर प्रोसेस नंबर 32
कह रहा मेरे को रिसोर्स नंबर टू चाहिए रिसोर्स नंबर 12 चाहिए रिसोर्स नंबर 17 चाहिए रिसोर्स नंबर 23 चाहिए हम कह रहे सब
कुछ देंगे बट ऑर्डर में पहले वन लोगे फिर टू लोगे फिर 17 लोगे फिर 23 लोगे समथिंग लाइक दिस जो ऑर्डर आपने मेंशन किया है उसी
ऑर्डर में रिक्वेस्ट एलोकेट करेंगे और मैं आपको समझा पा रहा हूं अगर ऑर्डर एक पैटर्न में चलेगा तो इट एक्चुअली बिकम अ ड
डायरेक्ट अ साइक्लिक ग्राफ इसमें साइकिल बन ही नहीं सकती और साइकिल बनेगी नहीं तो डेड लॉक लगेगा नहीं तो चार में से
एक्सक्लूजन तो काम नहीं किया लेकिन बाकी तीन कंडीशन है ना याद करते रहिए होल्ड एंड वेट नो परमिशन सर्कुलर वेट इन सबसे डेड
लॉक रिजॉल्व किया जाता है और अगर रिजॉल्व इन तरीके से हम करते हैं उसको बोलते हैं प्रिवेंशन अप्रोच प्रिवेंशन का प्रॉब्लम
क्या है धीरे-धीरे समय के साथ हमें समझता है प्रिवेंशन ना कुछ इस तरह के रेगुलेशन लगा देता है बेसिकली कि यार इसकी कॉस्टिंग
बहुत ज्यादा है अब आप बोल रहे हो एक नंबरिंग करना इसमें कितना दिमाग लगाना पड़ेगा एल्गोरिथम इंप्लीमेंट कैसे होगा आप
बोल रहे हो कि फॉर एग्जांपल फोर्सफुल प्रशन कर लो रिसोर्स का इसकी कॉस्टिंग बहुत ज्यादा है आप बोल रहे हो होल्ड एंड
वेट अलाउ नहीं करेंगे या सारे रि सोर्स पहले एक्वायर करो यहां पे बेसिकली कंक्रेंस बहुत वीक हो जाएगी बिकॉज़ लोग
ऐसी ऐसे रिसोर्स होल्ड करके बैठे होंगे जो इस्तेमाल नहीं कर रहे हैं तो एक एग्जांपल क्या है कोविड का टाइम था जब कोविड आया
आया था आपको याद होगा स्टार्टिंग में गवर्नमेंट ने टोटल लॉकडाउन लगा दिया करते भी क्या मैं नहीं कह रहा गलत था उस समय
समझ ही नहीं आ रहा था लेकिन टोटल लॉकडाउन एक सॉल्यूशन तो था लेकिन इसकी कॉस्टिंग बहुत ज्यादा थी एकदम आप कर्फ्यू लगा देंगे
तो 10 15 20 दिन तो चला लिया हमने फिर हमको समझ आया लोगों को खाना भी देना जरूरत का सामान देना है मेडिकल प्रॉब्लम्स है
कैसे प्रॉब्लम सॉल्व होगी तो हमें समझ आया यार प्रिवेंशन सॉल्यूशन तो काम कर रहा है बट इसका कॉस्टिंग बहुत ज्यादा है थोड़ा
लिबरे होते हैं प्रॉब्लम भी इतनी सीरियस नहीं लग रही रिलेटिवली कि सब मर जाएंगे ऐसा नहीं लग रहा लेट्स गो फॉर अवॉइडेंस
कर्फ्यू रिलीज कर देते और कुछ समय बाद लोगों को खुद समझ आ गया कि भाई बचना है ये वो लोग हैं जिनके पास शायद मास्क भी नहीं
है बट दे आर यूजिंग देयर हैकी रुमाल कुछ भी यूज करके मैनेज कर रहा है क्यों पता है भाई मर जाओगे यस और नो ध्यान नहीं रखोगे
तो सो अवॉइडेंस इज एन आईडिया व्हिच इज नॉट दैट एक्सट्रीम लाइक प्रिवेंशन थोड़ा लिबरल है और रन टाइम पर प्रॉब्लम मैनेज करने की
कोशिश करता है जहां पर एक बहुत इंपॉर्टेंट एल्गोरिथम हम पढ़ना है बैंकर्स तो कैसे काम करता है अवॉइडेंस चलिए देखते हैं तो
चलिए अभी बात करते हैं अवॉइडेंस के बारे में और जैसा हमने समझा कि अवॉइडेंस उतना रिस्ट्रिक्टिव नहीं है जितना
रिस्ट्रिक्टिव प्रिवेंशन था कैसे काम करते हैं देखते हैं यहां देखिए एक बैंकर्स वाला यू नो आईडिया डिस्कस करता हूं बिकॉज
एक्चुअली एल्गोरिथम का नाम ही बैंकर्स एल्गोरिथम है क्या दिखाना चाह रहा हूं देखो जैसे देश को चलाने के लिए एक हिसाब
किताब रखने की जरूरत है है ना और फाइनेंस मिनिस्ट्री पूरे साल का बजट लेकर यहां पर नजर आ रही है इसका मतलब क्या देखिए देश की
कुछ कमाई है कुछ खर्चा है अगर कमाई बहुत ज्यादा हो और खर्चा बिल्कुल ना हो तो पैसा वेस्ट होगा बिकॉज हम उसे डेवलपमेंट के काम
में हेल्थ में डिफेंस में जगह-जगह यूज करना चाहिए अगर अगले साल और ज्यादा पैसा कमाना चाहते हैं अगर कमाई बहुत कम है और
खर्चा बहुत ज्यादा कर दिया तो भी हम डूबने वाले हैं तो चाहे व हमारा अपना घर हो आप सबके हमारे घरों में भी एक हिसाब किताब तो
रखा जाता है ना कितना खर्चा कर रहे हैं कैसे मैनेज करेंगे कुछ इमरजेंसी होगी तो उस समय कौन सा फंड काम आएगा हर कोई सोच के
चलता है उसी तरह देश भी सोच के चलता है अपना हिसाब किताब रखता है यही आईडिया अगर हम सिस्टम में यूज करें पूरा हिसाब किताब
रखें एक टाइम पे कितनी प्रोसेस मना किसी को नहीं कर रहे एक टाइम पे कितनी प्रोसेस है टोटल कितने रिसोर्स हैं कौन सी प्रोसेस
कितने रिसोर्स यूज कर सकती है कितने कर चुकी है क्या उसकी डिमांड हो गई अगर टाइम प कुछ और मांगेगी हम मैनेज कर पाएंगे नहीं
कर पाएंगे और यह सारा हिसाब किताब हम रखना शुरू कर दें तो इस पूरी अप्रोच को बोलते हैं बैंकर्स एल्गोरिथम या अवॉइडेंस मेथड
तो ये मेरे ख्याल से इसकी बैकग्राउंड मैंने आपको समझा दी है कि टोटल मैनेजमेंट करना अब करते कैसे देखिए छोटा सा मैं
आईडिया समझाता हूं क्योंकि पूरा हिसाब किताब रखना है तो यहां पर बहुत सारे डाटा स्ट्रक्चर्स या इंफॉर्मेशन हम मेंटेन करनी
पड़ती है एक मैट्रिक्स अच्छा मैट्रिक्स के अलग-अलग नाम हो सकते हैं तो घबराइए मत डिमांड कह ले नीड कह ले आप समझ जाएंगे तो
पहले एक मैट्रिक्स है जिसको बोलते हैं मैक्सिमम नीड मैट्रिक्स या मैक्स डिमांड मैट्रिक्स जब भी कोई प्रोसेस आएगा मान
लीजिए इस सिस्टम के अंदर तीन तरह की रिसोर्सेस हैं ए e और जी है ना ई e ए और जी तो मान लीजिए यहां पर लिखा हुआ है 3 2
और 7 फॉर एग्जांपल तो प्रोसेस p न कह रहा है किसी भी इंस्टेंस पे मैं e का मैक्सिमम थ्री रिसोर्स मांग सकता हूं f का मैक्सिमम
टू रिसोर्स मांग सकता हूं g का मैक्सिमम सेवन रिसोर्स मांग सकता हूं समथिंग लाइक दिस तो ये एक मैट्रिक्स पहले जब भी
प्रोसेस सिस्टम एंटर करेगी अपनी मैक्सिमम डिमांड हमें बताएगी पॉइंट नंबर वन पॉइंट नंबर टू किसी इंस्टेंस पे हम उसको क्या दे
चुके हैं ये भी एक किताब में लिख के रखेंगे मान लीजिए यहां पर लिखा है 112 क्या मतलब हुआ इस बात का कि प्रोसेस p नॉ
को e टाइप का एक रिसोर्स ऑलरेडी दिया जा चुका है f टाइप का भी एक रिसोर्स दे चुके हैं और g टाइप के दो रिसोर्स दे चुके हैं
अब ये दोनों एनालिसिस से हम क्या निकाल सकते हैं करंट डिमांड निकाल सकते हैं या करंट नीड निकाल सकते हैं तो तीन चाहिए थी
एक दे चुका हूं अभी कितनी डिमांड बची है दो दो चाहिए था एक दे चुका हूं अभी कितना डिमांड बचा है वन सेवन चाहिए था टू दे
चुका हूं अभी कितना डिमांड बचा है फाइव तो इस तरह से ये करंट नीड निकाल सकते हैं सिस्टम मैक्स जब गेम शुरू हुआ तो हमारे
पास क्या था मान लीजिए सिस्टम कह रहा है मेरे पास तो तीनों के 1010 रिसोर्स थे फॉर एग्जांपल और मैं क्या-क्या लोकेट कर चुका
हूं तो वो कह रहा है फिलहाल अगर देखें तो यही है लोकेशन तो यही है इसको माइनस कर दीजिए तो 10 था एक दे चुका हूं मेरे पास
भी कितना बचा हुआ है नाइन 10 था वन दे चुका हूं मेरे पास कितना बचा हुआ है नाइन 10 था टू दे चुका हूं मेरे पास कितना बचा
है एट तो ये आपको एक आईडिया समझ आया होगा प्रोसेस से इंफॉर्मेशन लेंगे रन टाइम पे पूरा हिसाब किताब मैनेज करेंगे और फिर
देखेंगे किसी भी सिनेरियो पे हम डेड लॉक में है कि नहीं है आईडिया क्या है स्पेसिफिकली रन कैसे करते हैं देखिए एक
छोटा सा डेटा सेट मैंने बनाया है और एल्गोरिथम को स्टेप बाय स्टेप भी आपको रन करके दिखा दूंगा बट बेसिक आईडिया यही
समझिए बैंक का तो यहां पर आप देख रहे हैं एक सिस्टम है जिसका सिस्टम के पास टोटल कितनी रिसोर्सेस है सिस्टम मैक्स आपको नजर
आ रहा है हर प्रोसेस का मैक्स डिमांड एलोकेशन मेरे पास है अब अगर मैक्स डिमांड और एलोकेशन आपके पास है तो आप क्या निकाल
सकते हैं करंट नीड निकाल सकते हैं चलिए मेरी मदद करिए माइनस करके बताइए तो 431 मैक्स डिमांड था 101 ऑलरेडी एलोकेटेड है
तो कितना बचा आई थिंक 4 - 1 इज लाइक थ्री या मैं आई थिंक मैंने बना के रखा है कि नहीं बना के रखा ओके 4 - 1 इज 3 3 - 0 इज
3 एंड 1 - 1 इज 0 देन 2 - 1 विल बी 1 आई थिंक दिस इज़ ज़ीरो एंड दिस इज़ टू एंड देन दिस इज़ अगेन ज़ीरो एंड दिस इज थ्री
एंड दिस इज़ आल्सो ज़ीरो जो करंट नीड होगी एंड देन 5 - 2 सो दिस इज़ आई थिंक गोइंग टू बी थ्री दिस इज़ दिस रिमेंस फोर एंड
दिस रिमेंस वन ये इन प्रोसेस का करंट डिमांड है हम क्या-क्या लोकेट कर चुके हैं e टाइप का 1 1 1 3 ंड 2 5 टोटल मेरे पास 8
था तो कितना बचा है थ्री f का सिर्फ एक ही एलोकेट किया चार मेरे पास था टोटल यहां भी कितना बचा है थ्री एंड आई थिंक जी तो पूरा
सिक्स का सिक्स एलोकेट कर चुका हूं मेरे पास कितना बचा है जीरो अब कोई आपसे पूछेगा दिस इज द सिनेरियो दो-तीन वैल्यू हमसे
कैलकुलेट करा ली एग्जामिनर ने अब पूछेगा बताओ सिस्टम डेड लॉक में है सेफ है एनसेफ है क्या मतलब होता है समझाता हूं तो
ओबवियसली जब आप डिमांड पूरी करने की कोशिश करेंगे पहले किसको ढूंढेंगे पहले उसको ढूंढिए जिसकी डिमांड सबसे कम है या जिसकी
मैं मैनेज कर कर सकता हूं फॉर एग्जांपल मेरे को समझ आ रहा है आप ध्यान से देखो p नॉ की करंट नीड में मैनेज कर सकता हूं p1
की नहीं कर पाऊंगा क्योंकि उसको जी का दो रिसोर्स चाहिए मेरे पास नहीं है है ना p2 की भी मैं कर सकता हूं आई थिंक यस मैं कर
सकता हूं p2 की करंट नीट फिलहाल मैनेज कर लूंगा यस एंड p3 की भी नहीं कर पाऊंगा क्योंकि उसको जी का वन चाहिए f का फोर
चाहिए मेरे पास नहीं है तो कोई भी प्रोसेस उठा लो जिसका डिमांड हम सेटिस्फाई कर सकते हैं p नो का कर सकते हैं ना ठीक है मान
लेते p नॉ हमने एग्जीक्यूट कर दिया अब हुआ क्या आप समझिए यह रिसोर्स मैंने इसको एलोकेट कर दी जैसे ही एलोकेट की इसका
लोकेशन और बढ़ गया इसकी करंट नीट जीरो हो गई और रन करने में चला गया अब होगा क्या क्योंकि मैं आपको ये समझा पा रहा हूं कि
मैं इसे रन कर पा रहा हूं बहुत सारी मैट्रिक्स चेंज करने में समझ आगा तो क्या आप ये मानते हो कि मैंने इसको रन कर दिया
और रन जब ये होके एग्जीक्यूट होके कंप्लीट हो जाएगा टर्मिनेट हो जाएगा तो अपना करंट एलोकेशन भी मुझे वापस करेगा तो मेरे पास
जो कि है 330 यह जब मेरे को वापस मिल जाएगा 10 तो अब मेरे पास कितना हो गया मेरे पास हो गया
फोर मेरे पास हो गया ्र मेरे पास हो गया वन जैसे जैसे प्रोसेस एग्जीक्यूट होते जाएंगे बाहर जाते जाएंगे मेरी ताकत बढ़ती
जाएगी क्योंकि जैसे वो बाहर जाएंगे उनका करंट लोकेशन मुझे मिलता जाएगा यस और मैं कहीं मार्क कर लेता हूं मैंने पी नो को रन
कर लिया अब बताइए किसकिस को रन कर सकता हूं अभी भी मेरे ख्याल से इधर नहीं कर सकता इधर नहीं कर सकता एक ही ऑप्शन बचा प2
कर सकता हूं तो प नो के बाद मैं को रन करने जाता हूं जो मैंने आपको समझाया मैं प्रूफ कर पा रहा हूं कि मैं p न की डिमांड
सेटिस्फाई कर सकता हूं तो मैं मान रहा हूं कि मैंने उसे रन कर दिया और रन कर दिया तो उसका एलोकेशन वापस मैं ले लूंगा व्हिच इज
लाइक 103 अब जैसे ही मैंने उसका करंट एलोकेशन वापस लिया बताइए मेरे पास क्या आ गया मेरे
पास आ गया फोर मेरे पास आ गया थ्र और यह हो गया फाइव अब तो मेरे को लग रहा है कि मैं किसी को भी मैनेज कर सकता हूं नहीं
अभी भी p3 को नहीं कर पाऊंगा बट हां p1 को जरूर मैनेज कर सकते हैं तो अब देखिए जब p1 को मैनेज करने जाएंगे तो यह इसका करंट
लोकेशन है मैं इसको सेटिस्फाई कर सकता हूं जी हां करंट नीड को और ऐसा है तो उसका लोकेशन मुझे वापस मिलेगा व्हिच इज लाइक 1
1 एंड 2 अब यह सम करेंगे तो बोलिए क्या हो जाएगा नाउ दिस विल बिकम 6स एंड 4 एंड 6 646 पे फाइनली आखिरी भी डिमांड पूरी हो
जाएगी इसका लोकेशन मुझे वापस मिलेगा और वह क्या है वो है 200 तोब मेरे पास हो जाएगा कितना 8 4 एंड 6 और जैसे बिजनेसमैन
को अपना हिसाब मिलाता है जरा देखिए सिस्टम की मैक्स डिमांड जो जिससे गेम शुरू किया था वही वापस आया कि नहीं आ आ गया 8486
सुबह किताब में था शाम को हिसाब लेगाया वापस आया किस सीक्वेंस में मैंने रन कर दिया मैंने p नॉ p2 p1 और सबसे बाद में p3
एक सीक्वेंस निकाला जिसमें रन किया तो अब बैंकर्स एल्गोरिथम के हिसाब से पूरी एजीक्यू ये जो आपने रन किया यही बैंकर्स
एल्गोरिथम है इसमें घबराने की बात नहीं है तो बताइए क्या सिस्टम डेडलॉक में है कि नहीं जी नहीं मेरे पास सबूत है इसको बोलते
हैं सेफ सीक्वेंस मुझसे बोलो क्या बोलते हैं सेफ सीक्वेंस मेरे पास ये सीक्वेंस है जिस सीक्वेंस में रन करने पर मैं आपको नजर
दिखा के समझा पा रहा हूं कि मैं हर किसी की डिमांड सेटिस्फाई कर सकता हूं और सिस्टम डेडलॉक में नहीं जाएगा कम टू दिस
थिंग नाउ हम बोलते हैं सिस्टम दो आइडियाज हो सकते हैं एक होता है सेफ एक होता है अनसेफ अगर मैं सेफ सीक्वेंस मेरे पास है
तो मैं कहलाता हूं सेफ स्टेट में और अगर मैं सेफ स्टेट में हूं तो डेडलॉक लगने का 0 पर चांस है कुछ लोग को लगता है अवॉइडेंस
वीकर है इसलिए शायद कभी-कभी लग सकता है नहीं लग सकता अवॉइडेंस में भी नहीं लग सकता देखो ना 0 पर चांस है ऊपर हालांकि
अगर आप देखोगे अगर मुझे कोई सेफ सीक्वेंस ना मिलती फॉर एग्जांपल लास्ट केस में देखो अगर मुझे कोई सेफ सीक्वेंस ना मिलती इसका
मतलब यह है कि डेड लॉक लग गया नहीं मैं तो वर्स केस एनालाइज कर रहा हूं बट इसका मतलब ये जरूर है कि डेड लॉक लग सकता है तो
अनसेफ होने का ध्यान से देख लीजिए अनसेफ होने का यह मतलब नहीं है कि डेड लॉक लग गया अनसेफ होने का मतलब है दैट देयर इज अ
पॉसिबिलिटी ऑफ डेड लॉक है ना तो सेफ सीक्वेंस क्या होती है सेफ स्टेट क्या है अनसेफ स्टेट क्या है यह पूरी बात हमने
यहां पर ऑब्जर्व कर ली है यही जो पूरा आईडिया हमने देखा अब यहां देखिए उसको स्टैंडर्ड तरह से रिप्रेजेंट कर रहा हूं
एग्जाम में कोई आपसे पूछेगा अवेलेबल मैट्रिक्स जो करंट मेरे पास अवेलेबल है मैक्सिमम नीड या मैक्सिमम डिमांड जो
प्रोसेस बताता है क्या-क्या डटा स्ट्रक्चर चाहिए देन एलोकेशन कितना हम लोकेट कर चुके एंड देन अगेन नीड से एलोकेशन माइनस करेंगे
मैक्सिमम से एलोकेशन माइनस करेंगे तो आपको करंट नीड मिल जाएगा अब अगेन एल्गोरिथम रन कैसे करता है वही पूरा प्रोसेस जो हमने
ऑब्जर्व किया बस नाम थोड़े से बदल देते हैं यहां पे जो वर्क है अवेलेबल जो हमारी मैट्रिक्स हुआ करती थी ना उसका नाम इसने
वर्क रख दिया यह नीड है यह फिनिश है स्टार्टिंग में फिनिश के केस में हर किसी को हम फॉल्स फॉल्स फॉल्स करेंगे ट्रू करते
जाएंगे अब क्या करेंगे बताओ यह नीड है यह अवेलेबल है क्या करोगे आप देखोगे क्या कोई नीड ऐसा है क्या जो अवेलेबल से कम है जब
गेम स्टार्ट होगा क्या कोई नीड ऐसा है जो अवेलेबल पहली बात तो प्रोसेस अभी एग्जीक्यू हुई ना हो फॉल्स हो क्या कोई
नीड ऐसा है जो वर्क से कम है फॉर एग्जांपल मेरे को पहले ही नजर आ रहा है जी इसका जो नीड है वो वर्क से कम है अब वर्थ से कम
होगा तो क्या होगा बोलो फिर वही कहानी मैं मान लूंगा कि मैंने इसको एग्जीक्यूट कर दिया और इसका जो एलोकेटेड होगा वो मुझे
मिल जाएगा तो मेरा क्या हो जाएगा मेरा वर्क हो जाएगा वर्क प्लस एलोकेशन और ये जो भी प्रोसेस मैंने रन किया मान लीजिए p नॉ
रन किया तो वहां पर मैं लिख दूंगा ट्रू यस अच्छा ये ना यहां पर प्रोसेस होना चाहिए सो दिस इज लाइक p न p1 p2 लाइक दिस जो भी
प्रोसेस रन किया वहां ट्रू कर दूंगा तो पूरी प्रोसेस सेम है बस लाइक दिस एज अ एल्गोरिथम के थ्रू उसने लिख के बता दिया
तो आई थिंक बैंकर्स एल्गोरिथम या सेफ्टी एल्गोरिथम कोई लिखने के लिए बोल दे विद एग्जांपल तो एक दो कोई छोटा सा केस बना लो
मैंने तो फिर भी चार प्रोसेस का बनाया तीन प्रोसेस का केस बनाओ ये एल्गोरिथम दो बार लिख के देख लो स्टेप बाय स्टेप चार लाइन
है कोई बहुत महान बात नहीं है सॉल्व कर सकते हो यस अच्छा एक इसी के अंदर आईडिया है अवॉइडेंस के अंदर रिसोर्स एलोकेशन
ग्राफ अगर बैंकर्स के पूरे डाटा को एक ग्राफ में रिप्रेजेंट किया जाए तो क्या सेम इंफॉर्मेशन कन्वे की जा सकती है हां
हालांकि इतना पॉपुलर नहीं है बट आईडिया आपको पता होना चाहिए फॉर एग्जांपल देखिए यहां पर आपको समझ आ रहा है एक
रिसोर्स टाइप है r1 जिसके पास दो रिसोर्स है दो कॉपीज है यह बोलते हैं एलोकेशन एज जहां पर क्लियर कट नजर आ रहा है कि यह जो
रिसोर्स है पहले वाला यह p1 को फिलहाल एलोकेटेड है और यह जो रिसोर्स है दूसरा यह प नॉट को एलोकेटेड है अगर प्रोसेस से
रिसोर्स पच जाती है उसको बोलते हैं रिक्वेस्ट एज यह भी समझ आ रहा है कि एलोकेशन के बाद भी एक रिसोर्स ऑलरेडी
एलोकेटेड है p1 कह रहा है मेरे को एक रिसोर्स और चाहिए समथिंग लाइक दिस है ना तो अगर रिसोर्स से प्रोसेस की तरफ ज गया
दिस इज कॉल्ड एलोकेशन और प्रोसेस से रिसोर्स की तरफ एज गया दिस इज कॉल्ड रिक्वेस्ट एज है ना यह सिनेरियो एक सिस्टम
का स्नैपशॉट बता रहा अब आपको जज करना है कि सिस्टम डेड लॉक में है कि नहीं जैसे मेरे को नजर आ रहा है यह r3 ी का कॉपी भी
एलोकेटेड नहीं है तो यह जो रिक्वेस्ट है क्या इस रिक्वेस्ट को मैं लोकेट कर सकता हूं क्या हां कर सकता हूं और देखो अब प2
से कोई आउटगोइंग ए तो है नहीं तो p2 का मतलब रनिंग स्टेट में रनिंग स्टेट में तो p2 बाहर जाएगा ये दोनों रिसोर्स रिलीज हो
जाएंगी अब देखिए जैसे ही दोनों रिसोर्स रिलीज होंगी मेरे ख्याल से पी नॉ रनिंग में जा सकता है बिकॉज नाउ दैट विल बिकम एन
एलोकेशन और ये रिक्वेस्ट भी एलोकेशन हो सकता है जैसे ही p नो बाहर गया वो भी रिसोर्स रिलीज करेगा अब किसका पहले नंबर
लेंगे r1 को अ इसको p को रन कर सकता है बिकॉज़ यह रिलीज हुआ तो एक रिसोर्स यह वाला जो है यह तो ऑलरेडी डन है यह जैसे ही
रिलीज होगा p न का ये एलोकेशन बन जाएगा इधर तो p1 एग्जीक्यूट होगा और सबसे लास्ट में जब सभी खत्म हो गए तो p3 भी हो जाएगा
तो लाइक दिस स्टेप बाय स्टेप आप ऑब्जर्व करके देख सकते हो कि जो रिसोर्स एलोकेशन ग्राफ है इसका मतलब मैंने आपको समझा दिया
और इसको देख के भी पूछा जा सकता है या समझाया जा सकता है कि बताओ डेडलॉक सिस्टम में डेडलॉक अ सिस्टम डेडलॉक में है कि
नहीं है है ना दिस इज एन आईडिया अच्छा यहां पर एक छोटा सा पॉइंट है जैसे यहां देखिए यह जो रिसोर्स एलोकेशन ग्राफिक्स
में एक साइकिल आपको नजर आ रही है इफ यू सी दिस ना देर इज अ साइकल अच्छा नोट्स सब कुछ मैंने मेंशन किया है यू कैन नोट देम डाउन
बाय पॉजियर टेक अ स्क्रीनशॉट एग्जाम पॉइंट ऑफ व्यू से बाकी समझ आपको आ गया होगा तो यह देखिए एक साइकिल है बट मुझे बताओ क्या
फिलहाल सिस्टम डेड लॉक में है एक्चुअली नहीं क्योंकि p2 इज इन रनिंग स्टेट वह बाहर जाएगा p4 इज आल्सो इन रनिंग स्टेट और
जैसे ये दोनों बाहर जाएंगे यह जो p3 का रिक्वेस्ट है यह लोकेशन बन जाएगा और यह जो p1 का रिक्वेस्ट है यह भी एलोकेशन बन
जाएगा अब p1 और p3 भी बाहर चले जाएंगे तो कुछ लोग ऐसा पूछते हैं रिसोर्स एलोकेशन ग्राफ में अगर साइकिल होती है डज इट मीन
दैट देर इज अ डेड लॉक आंसर इज नो सो प्रेजेंस ऑफ अ साइकिल अगर वहां पे साइकिल मिलती है इसका मतलब डेड लॉक हो सकता बट हो
जरूरी नहीं है तो वी से इट इज नेसेसरी बट नॉट सफिशिएंट साइकिल नहीं होगी तो डेड लॉक हो होगा क्या साइकिल नहीं होगी तो डेड लॉक
नहीं होगा यह तो तय है बट अगर साइकिल है तो डेड लॉक हो जरूरी नहीं है तो इट इज़ नेसेसरी बट नॉट अ सफिशिएंट कंडीशन तो हो
सकता है डेडलॉक हो हालांकि इसमें एक एक्सेप्शन है एक्सेप्शन क्या है अगर आपके पास रिसोर्स सिर्फ एक टाइप का है है ना
जैसे मैंने देखिए दोनों पॉइंट लिखे हैं साइकिल इंड रिसोर्स एलोकेशन ग्राफ इज़ नेसेसरी बट नॉट सफिशिएंट कंडीशन बट इफ
एवरी रिसोर्स हैव ओनली वन रिसोर्स टाइप यानी कि जैसे यहां पर ना r1 के पास दो रिसोर्स है अगर सिर्फ एक हो तो हर रिसोर्स
के पास अगर एक-एक कॉपी हो उस केस में द प्रेजेंस ऑफ अ साइकिल इज नेसेसरी एज वेल एज सफिशिएंट कंडीशन वैसे आई डोंट थिंक
सेमेस्टर एग्जाम में जरूरत है इस बात की लेकिन एक बेसिक आईडिया आपको समझ आना चाहिए तो आई थिंक ना अवॉइडेंस का पूरा अप्रोच
आपको समझ आया अब नेक्स्ट अप्रोच हमारा क्या है डिटेक्शन एंड रिकवरी अब ये क्या है ये थोड़ा सा और लेजी अप्रोच है
प्रॉब्लम क्या है अवॉइडेंस में भी रन टाइम पे बार-बार यह पूरा एल्गोरिथम आपको चलाक देखना पड़ेगा इसका अपना खर्चा है सारी
बुक्स मैनेज करनी पड़ती है उसकी कॉस्टिंग है तो एक सॉल्यूशन क्या हो सकता है ना अपन बुक्स मेंटेन कर रहे हैं कोई दिक्कत नहीं
किसके पास क्या कहानी बट चेक नहीं कर रहे जो जितना मांग रहा है देते जाते हैं रन टाइम प अगर बाद में कहीं प्रॉब्लम आती है
देन वी कैन रन दैट एल्गोरिथम टू फिगर इट आउट कि डेड लॉक लग गया क्या हर डिसीजन पे किसी ने कितना रिसोर्स मांगा एलोकेट कर दो
कोई दिक्कत नहीं बस बुक्स में मैनेज करते चलो ऐसा अप्रोच यूज करते हैं कहता है डिटेक्शन तो अगर डिटेक्शन हुआ पहली बात तो
मैं रन टाइम प मैनेज नहीं कर रहा मेरा काम आसान हो गया किताब है मेरे पास बट मैं एक एक वैल्यू एलोकेट करने से पहले चेक नहीं
कर रहा मैं बैंकर में सेफ्टी एल्गोरिथम या मैं बैंकर्स एल्गोरिदम रन नहीं कर रहा रन कब करूंगा जब प्रॉब्लम होगा अब अगर
डिटेक्ट कर लिया तो क्या करूंगा दो अप्रोचेबिलिटी बहुत ज्यादा बहुत नुकसान होगा एक तरीका हो
सकता है प्रोसेस को एक-एक करके किल करो एक प्रोसेस किल किया फिर एक और तब तक करते जाओ जब तक डेड लॉक हट ना जाए है ना यह
आईडिया है कंसंट्रेट करता है प्रोसेस प रिलेटिवली थोड़ा आसान है बट थोड़ा इनएफिशिएंट होगा क्योंकि लॉस ज्यादा होगा
एक हो सकता है कि यार डेड लॉक एक्चुअली सोचेंगे तो प्रोसेस की वजह से नहीं है रिसोर्स की वजह से है तो क्यों ना एक काम
करें कोई विक्टिम सेलेक्ट करो उसका रोल बैक करो रोल बैक मतलब होता है ना चेक पॉइंट्स होते हैं डेड लॉग डीबीएमएस में हम
पढ़ते हैं थोड़ा रोल बैक करोगे तो इन बिटवीन टाइम में इसने जितने रिसोर्स एक्वायर किए होंगे वो रिलीज हो जाएंगे फिर
थोड़ा और रोल बैक करो फिर थोड़ा और रोल बैक करो कंप्लीट या पार्शल रोलबैक करते जाओ जब तक वो रिसोर्स रिलीज ना हो जाए
जिनकी वजह से डेड लॉक लगा है अगर एक प्रोसेस को कंप्लीट रोलबैक करने के बाद भी रिसोर्स रिलीज नहीं हो पा रहे सफिशिएंट तो
एक और करो फिर एक और करो तो टू आइडियाज आइ दर यू किल प्रोसेस और यू प्रिवेंट और यू प्रीम रिसोर्सेस दो अप्रोचेबल रिजॉल्व
कराया जा सकता है दोनों के अपने फायदे अपने नुकसान होंगे दोनों ही अप्रोच में यह देखना थोड़ा साय यनो इंपॉर्टेंट है कि
किसको प्रिंट करना है या किसको किल करना है विक्टिम क्योंकि कोई अच्छा प्रोसेस आप किल करेंगे तो वर्क लॉस ज्यादा होगा बट
अगेन आई डोंट थिंक इसमें बहुत ज्यादा इन्वेस्टिगेट करने की जरूरत है आ इतना आया तो बैंकर्स के बाद आप इतनी बात समझा देंगे
तो दैट इज मोर देन सफिशिएंट नाउ कमिंग टू द लास्ट आइडिया व्हिच इज लाइक ऑस्ट्रिच अप्रोच या इग्नोर हैंस अब ये क्या कह रहा
है हां तो ऑस्ट्रिच की एक स्टोरी होती है आई थिंक वैसे रियलिटी में ऐसा नहीं है बट आईडिया क्या है कि जब कोई ऑस्ट्रिच को
पकड़ने के लिए आता ऑस्ट्रिच को लगता है कि भाई ऑस्ट्रिच मतलब शुतुरमुर्ग है ना लगता है कि अब कोई सॉल्यूशन नहीं है मैं कुछ कर
नहीं पाऊंगा तो वो क्या करता है वो अपना सर रेत में धंसा लेता है आंख बंद कर लेता है अब ऐसा करने से ऑस्ट्रिच को क्या लगेगा
कि जैसे मानो शिकारी चला गया लेकिन शिकारी गया नहीं वो आके उसको पकड़ लेगा बट बाद में आप बैठ के सोचेंगे ऑस्ट्रिच के पास
ऑप्शन क्या था जाना तो उसे था ही था पकड़ा तो वो गया था अब कम से कम तसल्ली से पकड़ा गया है है ना तो यहां पर एक आईडिया ये है
जिसको हम बोलते हैं इग्नोर हैंस कभी-कभी हम ये समझते कि डेडलॉक इतना सीवियर प्रॉब्लम होता भी नहीं है जितना हम
थोरेट्स हो सकते हैं रियल टाइम ऑपरेटिंग सिस्टम है एयर ट्रैफिक कंट्रोलिंग है जहां जान माल का बहुत खतरा है वहां मैं मान
सकता हूं कि डेड लॉक नहीं लगना चाहिए बट किसी के पर्सनल कंप्यूटर में अगर डेड लॉक लग भी गया तो क्या बड़ी बात हो गई स्विच
ऑफ करके स्विच ऑन कर लेंगे मैनुअल रिकवरी कर लेंगे इजेंट इट कॉस्ट क्या है डेडलॉक हैंडलिंग के लिए जो मॉड्यूल लिखना पड़ेगा
वो मॉड्यूल काफी हैवी है जो ऑपरेटिंग सिस्टम में मेन मेमोरी में जगह लेगा दूसरा बार-बार वो रन करेगा सिस्टम को स्लो करेगा
तो आईडिया ये है क्या ये प्रॉब्लम इतनी वर्थ इड भी है जिसको सॉल्व किया जाए सो मोस्ट ऑफ द ऑपरेटिंग सिस्टम जब पर्सनल
कंप्यूटर्स की बात कर रहे हैं चाहे वो मैक है चाहे यू नो प मैनेज किया जाए उससे सिस्टम और स्लो हो
जाएगा दिस इज एन आईडिया लेकिन मैं बोल रहा हूं एक्सेप्शन क्या है रियल टाइम सिस्टम्स है या कुछ सिस्टम इतने इंपॉर्टेंट है जहां
पर हम चाहते हैं देर इज अ 0 पर देर शुड बी 0 पर चांस ऑफ हैविंग अ डेड लॉक तो वहां पर जो दो अप्रोच हमने पढ़ी आइर यू कैन गो फॉर
तीन अप्रोच बल्की आप प्रिवेंशन अवॉइडेंस या डिटेक्शन रिकवरी तीनों में जा सकते हैं बट इग्नोर हैंस भी एक ऑप्शन है और रियल
लाइफ में भी मैं थोड़ा सा पॉइंट ऐड कर देता हूं इससे सीखने को मिलता है एवरी प्रॉब्लम डू नॉट डिव र्व टू बी सॉल्वड अगर
प्रॉब्लम ट्रिविया है तो उसको सॉल्व मत करिए पहले उसको सॉल्व करिए जो ज्यादा इंपॉर्टेंट प्रॉब्लम है तो बेटर काम कर
पाएंगे नाउ विद दिस डिस्कशन आई थिंक दे इज द एंड ऑफ प्रोसेस मैनेजमेंट 50 पर से ज्यादा काम हमने कंप्लीट कर लिया आई थिंक
60 टू 65 पर नाउ वि विल बी आई डिस्कसिंग द आई अच्छा फॉर कमांड रहता है फॉर कमांड थोड़ा सा प्रोसेस मैनेजमेंट का ही हिस्सा
है एंड देन वी विल गो एंड वी विल डिस्कस मेमोरी मैनेजमेंट इन डिटेल तो प्रोसेस मैनेजमेंट के लास्ट में जल्दी से एक बार
बात करते हैं फॉर कमांड और थ्रेडिंग की बहुत इंपॉर्टेंट कांसेप्ट है और कहीं ना कहीं आपको यहां से क्वेश्चन देखने को
मिलता है और जहां तक मुझे समझ आता है बच्चे कई बार डेफिनेशन रट लेते हैं बट क्लियर अंडरस्टैंडिंग नहीं समझ आ रही होती
तो छोटा सा बहुत कम टाइम लूंगा लेकिन पूरा लॉजिक क्लियर होगा जो भी क्वेश्चन आएगा सॉल्व करके आएंगे आप आईडिया समझिए क्या है
रिक्वायरमेंट के हिसाब से समझाता हूं पहले बात करते हैं फॉक कमांड की इन नंबर ऑफ एप्लीकेशंस स्पेशली दोज वेर वर्क इज ऑफ
रिपीटेड नेचर लाइक वेब ब्राउजर विद एवरी क्लाइंट वी हैव टू रन सिमिलर कोड एंड हैव टू क्रिएट अ सेपरेट प्रोसेस एवरी टाइम फॉर
सर्विंग ए न्यू रिक्वेस्ट एग्जांपल कोट कर रहे हैं मान लीजिए कोई बैंकिंग सर्वर है हम जो भी जाके यू नो लिखेगा
www.sbi.in मान लीजिए यू नो बैंकिंग पोर्टल पर्सनल बैंकिंग के लिए ओपन हो जाएगा एक ही कोड है हर यूजर के लिए सेम
प्रोसेस जनरेट होना है आप उसमें अपना लॉगिन आईडी अपना पासवर्ड डालेंगे ओटीपी आएगा ओटीपी एंटर करेंगे कैप्चा एंटर
करेंगे हो जाएगा लेकिन आप ऑपरेटिंग सिस्टम के बिहाव से सोचिए एक ही कोड है हर बार वही कोड रन होना है एक सेपरेट प्रोसेस जन
रेट होगी और ऑपरेटिंग सिस्टम का जो लोड है मान लीजिए अगर एक टाइम प 10000 20000 या 1 लाख लोग एसबीआई का नेट बैंकिंग ऐप यूज कर
रहे हैं तो सेपरेट सेपरेट प्रोसेस क्रिएट होती जाएगी जिससे कहीं ना कहीं ऑपरेटिंग सिस्टम का लोड बढ़ता है हर बार सेम काम हर
बार सेम काम करना पड़ रहा है नाउ क्या एक बेटर सॉल्यूशन नहीं है कि अगर हमारे पास कोई ऐसा शॉर्टकट कमांड हो जैसे एक प्रोसेस
हमारा चल रहा है हम एक सिंगल फंक्शन कॉल करें एक सिंगल कमांड कॉल करें और उस प्रोसेस का एकदम झट से पूरा कॉपी जनरेट हो
जाए ऑपरेटिंग सिस्टम को स्टेप बाय स्टेप फैशन में पूरा का पूरा प्रोसेस एकदम फिर से जनरेट ना करना पड़े आईडिया सूटेबल है
और उसी शॉर्टकट कमांड का नाम है फॉक कमांड तो क्या लिखता हूं इट इट मस्ट बी अ बेटर सॉल्यूशन देन इंस्टेड ऑफ क्रिएटिंग अ न्यू
प्रोसेस एवरी टाइम फ्रॉम स्क्रैच स्टेप बाय स्टेप ऐसा नहीं बटन दबाया प्रोसेस बन गया बहुत सारी चीजें उसमें होती है तो वो
सारा काम एक साथ ना करते हुए कोई एक ऐसा शॉर्टकट कमांड हमारे पास हो यूजिंग व्हिच हम पूरा का पूरा प्रोसेस फिर से क्रिएट कर
ले एग्जांपल देखिए फॉर कमांड काम कैसे करता है ये हमने प्रोसेस मैनेजमेंट में बात की थी एक प्रोसेस है जिसमें कोड है
स्टैटिक डाटा है स्टैक जो हमारा एक्टिवेशन रिकॉर्डर हीट जो हमारा डायनेमिक मेमोरी एलोकेशन है ये पूरा एक इमेज है अब फॉक
कमांड क्या करेगा जैसे ही आप फॉक कॉल करते हो इस पूरे के पूरे इमेज को उठा के बिल्कुल एक रिप्लिकेट करके एक नया कॉपी
बना देगा हालांकि एकदम सेम कॉपी नहीं बनाना था क्यों मान लीजिए कोई यूजर है उसका नेट बैंकिंग ऐप चल रहा है आप सेम
कॉपी बनाएंगे तो सारी डिटेल कॉपी हो जाएगी वो नहीं करनी थी बट कोई बात नहीं प्रोग्रामर लेवल पे जाके कुछ डिटेल्स में
चेंज कर सकता हूं बट होगा ये मेमोरी में लेट मी से नाउ दिस बिकम पैरेंट एंड दिस बिकम चाइल्ड एक बिल्कुल सेम कॉपी फॉक
कमांड जनरेट कर लेगा चेंजेज बहुत मैन्यूट होते हैं बिकॉज ज्यादातर टेक्स्ट तो सेम ही होता है वो चेंजेज हम बाद में जाके अलग
से मैनेज कर लेंगे तो देखिए यहां क्या लिखता हूं यर फॉक कमांड इज अ सिस्टम कमांड अभी अभी ओस की ही कमांड है यूजिंग व्हिच द
एंटायस ऑफ अ प्रोसेस कैन बी कॉपीडब्ल्यूबी फ टू कंप्लीट द क्रिएशन ऑफ अ न्यू प्रोसेस विथ स्पीड अब यहां पर सबसे बड़ा एडवांटेज
ऑपरेटिंग सिस्टम को क्या मिल रहा है उसको ये सारा काम स्टेप बाय स्टेप तरीके से नहीं करना पड़ रहा अच्छा एक प्रॉब्लम में
क्या बता रहा हूं एकदम सेम कॉपी जनरेट हो जाएगी जो कि शायद हमें नहीं करनी थी आफ्टर क्रिएटिंग अ प्रोसेस वी मस्ट हैव अ
मैकेनिज्म टू आइडेंटिफिकेशन पहचान है कि हम किसके बारे में बात कर रहे हैं चाइल्ड प्रोसेस के वन
रिटर्न कर रहा है तो पैरेंट प्रोसेस के बारे में बात कर रहे हैं तो अगर जीरो रिटर्न हुआ तो जो भी चाइड प्रोसेस है आप
उसमें जाके एप्रोप्राइटिंग फार्मूला अगर कोई आपसे पूछ ले तो काम करता
है 2 की पावर n - 1 तो अगर आप फॉर एग्जांपल फोर नंबर ऑफ टाइम्स फोर कमांड यूज करेंगे तो कितने कॉपी जनरेट होंगे 2
रेट पावर 4 -1 16 -1 15 चाइल्ड प्रोसेस क्रिएट होंगे एडवांटेज जो भी हमने समझा वही यहां पर एडवांटेज ए यू कैन सी इट इज
रिलेटिवली इजी टू क्रिएट एंड मैनेज सिमिलर टाइप ऑफ प्रोसेस ऑफ रिपिटेटिव नेचर विद द हेल्प ऑफ अ फॉर कमांड डिसएडवांटेज क्या है
डिसएडवांटेज बोलते हैं फरदर स्कोप ऑफ इंप्रूवमेंट देखो यह तो मानना पड़ेगा कि फॉर कमांड के थ्रू यह सारा काम करना कुछ
हद तक तो आसान हो गया है वरना हर बार ऑपरेटिंग सिस्टम को एकदम स्क्रैच से काम करना पड़ता था इसमें कोई डाउट नहीं है मैं
मानता हूं बट स्टिल क्या क्योंकि ये सिस्टम कमांड है कर्नल मोड यूजर मोड वाला बात याद है तो कंट्रोल पहले ओस के हाथ में
जाता है वो फॉर कमांड एग्जीक्यूट करता है तब जाके प्रोसेस जनरेट होती है दूसरा भले ही स्पीड से हुई बट प्रोसेस तो जनरेट हुई
सिस्टम में जितनी प्रोसेस होंगी उन सबका पीसी भी होगा उन सबका मेमोरी रिक्वायरमेंट होगा रिसोर्स रिक्वायरमेंट होगा वो सब भी
उसको हैंडल करना पड़ रहा है तो जो ऑपरेटिंग सिस्टम का बर्डन है वो मानते हैं कि थोड़ा कम जरूर हुआ है और ऑपरेटिंग
सिस्टम का बर्डन कंप्लीट नहीं हुआ है इसको अगर और अच्छे से स्पीड से सॉल्व करना है उसका सलूशन है थ्रेड तोब आपको स्टोरी
कनेक्ट करनी है कुछ लोग रिलेट नहीं कर पाते फर्क और थ्रेड दरअसल थ्रेड एक तरीके से फर्क प ही इंप्रूवमेंट है और
स्टार्टिंग में थ्रेडिंग का कांसेप्ट नहीं था धीरे धीरे हमने समय के साथ समझा कांसेप्ट क्या है सुनिए ध्यान से देखिए
आपने सुना होगा थ्रेड इ लाइटवेट प्रोसेस य डेफिनेशन सबको याद है इसका एटली मतलब क्या वो सीखना है अब यहां पर य हमारे सिंगल
प्रोसेस है ये हमारा थ्रेड है ये सिंगल एक थ्रेड मतलब एक प्रोसेस है अब देखिए जब हमें सेम कोड हमारा सेम है बस हमें
मल्टीपल कॉपी जनरेट करनी है वही ब्राउजर वाला एग्जांपल हो नेट बैंकिंग वाला तो यहां पर जो हमारा डेटा सेक्शन है जो हमारी
फाइल्स है जो हमारा कोड है वो तो एकदम सेम है बस हमारा जो एक्टिवेशन रिकॉर्ड है जो हमारे रजिस्टर्स की वैल्यू है जो हमारा यू
नो स्टैक कंटेंट है वो डिफरेंट है तो हम क्या कर रहे हैं अब माइंड यू ध्यान से समझिए प्रोसेस एक ही है एक ही प्रोसेस के
अंदर हम इंटरनली तीन डिफरेंट थ्रेड्स या तीन डिफरेंट एग्जीक्यूशन या एक्टिवेशन रिकॉर्ड मेंटेन कर रहे हैं और अब आज के
बाद हम इनको प्रोसेस कह के नहीं हम इनको थ्रेड कह के बुलाएंगे मान लीजिए प्रोसेस का नाम है p1 तो उसका नाम हो जाएगा थ्रेड
t11 थ t12 313 दैट इज व्हाई वी कॉल इट अ लाइट वेट प्रोसेस वई क्या इन सबके पास अपना पीसीबी है नहीं प्रोसेस ये एक ही है
इसके पास एक ही पीसीबी है सोचिए इस बात को क्या इन सबके पास अपना कोड अपना डाटा अपना फाइल है नहीं वो सब कॉमन है मुझे सेम चीज
की चार बार कॉपी जनरेट भी नहीं करनी पड़ी बड़ा एडवांटेज है यार लेकिन हां एक्टिवेशन रिकॉर्ड सबका अलग-अलग है अब अगर मैं आपको
दो मिनट बोलूं और सोचूं ध्यान से सोचिए एडवांटेज क्या है आपने जब एक नया थ्रेड बनाया क्या ओस को परेशान किया नहीं क्या
ओस को पता भी लगा नहीं क्या आपने कोई सिस्टम कॉल किया क्या यू नो कंप्यूटर जो है वो यूजर मोड से कर्नल मोड में ज्ञा
नहीं ये सब आप अपने लेवल पे मैनेज कर रहे हो ऑपरेटिंग सिस्टम के पास एक ही प्रोसेस और वो उसे ही हैंडल कर रहा है अगर मुझे एक
सेट से दूसरे सेट प जाना है तो क्या ये कांटेक्ट स्विच कहलाएगा नहीं क्योंकि वो इसके हिसाब से तो सेम ही प्रोसेस रन हो
रही है यह सारा मैनेजमेंट लोकली अपने लेवल पे हम कर रहे हैं तो अब आप सोचिए यहां पर सच में ऑपरेटिंग सिस्टम के लिए बड़ा रिलीफ
है बिकॉज एज अ प्रोसेस हर थ्रेड उससे बात नहीं कर रहा प्रोसेस अपने लेवल पे रिसोर्सेस मैनेज कर रहा और सारी हैंडलिंग
चल रही है ये आईडिया है थ्रेडिंग का तो थ्रेडिंग बेसिकली हमने क्यों लिया एक तरह से मल्टीपल प्रोसेस ही है लेकिन जो यू नो
जो लोड है ऑपरेटिंग सिस्टम का वो यहां पर बहुत कम हो जाता है तो देखिए मैं क्या लिखता हूं अ थ्रेड इज अ बेसिक यूनिट ऑफ
सीपीय यूटिलाइजेशन कंसिस्टिंग ऑफ प्रोग्राम कंप्यूटर ये सब हमारे पास है ट्रेडिशनल प्रोसेस को हम बोलते हैं हैवी
वेट बट यहां पर इंडिविजुअल थ्रेड्स को हम क्या बोलेंगे इट्स अ लाइट वेट बिकॉज इन सबके पास अपना पीसीबी नहीं है बाकी जो
कॉमन पार्ट है कॉमन है बाकी डिफरेंट पार्ट अलग है अब इसमें दो-तीन अंडरस्टैंडिंग है अंडरस्टैंडिंग क्या है दो शब्द आपने सुने
होंगे एक होता है यूजर लेवल थ्रेड एक होता है कर्नल लेवल थ्रेड पॉइंट समझिए जैसे मैं मैपिंग के हिसाब से समझाता हूं जो सबसे
सिंपल मैपिंग है दैट इ कॉल्ड मेनी टू वन मैपिंग इसका मतलब यूजर के हिसाब से बहुत सारे थ्रेड्स हैं ये सारे थ्रेड यूजर ने
अपने लेवल में बनाए हुए हैं बट जो हमने अभी समझा डिफॉल्ट कर्नल के हिसाब से आप देखेंगे सिर्फ एक ही थ्रेड है एक ही
प्रोसेस है तो क्या ये एडवांटेजेस है काफी हद तक कर्नल के लिए एडवांटेजेस है क्योंकि लोड बहुत कम है है ना कर्नल को बाकी चीजें
मैनेज नहीं कर रही जो प्रोसेस है वो अपने लेवल पे सारी चीजें मैनेज कर रहा है बट इसकी कुछ प्रॉब्लम भी है मान लीजिए
ऑपरेटिंग सिस्टम की जो मशीन है इट हैज मल्टी प्रोसेसिंग आर्किटेक्चर मेरे पास चार प्रोसेसर है लेकिन क्या मैं चार थ्रेड
चार प्रोसेसर पे रन कर पाऊंगा नहीं क्योंकि ओस को तो इसके बारे में पता ही नहीं है ओस को लग रहा है एक ही प्रोसेस है
तो बताओ कैसे रन करेगा अगर इसमें से थ्रेड नंबर टू जो है वो कोई इल्लीगल काम करते हुए पकड़ा गया ओस ने उसको ट्रैप कर लिया
यस उसे किल कर दिया बट ओ किसको ट्रैप करेगा ओ को तो पता ही नहीं मैं थ्रेड को ट्रैप कर रहा हूं ओ अनजाने में पूरी
प्रोसेस को ट्रफ कर लेगा जिससे बाकी थ्रेड भी परेशान हो जाएंगे कभी-कभी हो सकता है किसी इंडिविजुअल थ्रेड की रिसोर्स
रिक्वायरमेंट ज्यादा हो क्या वो यह बात अपने लेवल पे ऑपरेटिंग सिस्टम को कर्नल को बता पा रहा है नहीं क् कर्नल के हिसाब से
इंडिविजुअल प्रोसेस है और वो तो प्रोसेस को रिसोर्स एलोकेट कर रहा है अब ये प्रोसेस के ऊपर है कि वो इंटरनल इन
थ्रेड्स को कैसे मैनेज करें तो हम ये जरूर मान र है कि ऑपरेटिंग सिस्टम का लोड कम हुआ है लेकिन कुछ डिसएडवांटेजेस भी यहां
पर हमारे पास आ गए हैं अब इनको कैसे इंप्रूव किया जा सकता है एक बिल्कुल डिफरेंट आईडिया हो सकता है इंस्टेड ऑफ
मेनी टू वन हियर वी कैन हैव वन टू वन मॉडल इन वन टू वन मॉडल देखिए ऑब्जर्वेशन क्या है यहां पर बेसिकली आप देख रहे हो फॉर
एवरी यूजर लेवल थ्रेड वी हैव अ कर्नल लेवल थ्रेड और इन्हीं को बोलते हैं कर्नल लेवल थ्रेड आईडिया क्या है यहां पर कर्नल को
मान लेते कि इंडिविजुअल हर एक थ्रेड के बारे में पता है और हमारे 95 से लेकर विंडोज एक्स तक जितने वेरिएंट्स है सब यही
वाला वेरिएंट थे अब ऐसा करना क्या एडवांटेज है जैसे ही थ्रेड के बारे में कर्नल को पता लगा अब क्या मल्टी
प्रोसेसिंग मशीन में हर एक प्रोसेसर पे शेड्यूल कर सकता है हां इस बार क्या इंडिविजुअल थ्रेड को रिसोर्स एलोकेट कर
सकता है हां क्या इस बार ऑपरेटिंग सिस्टम पूरे प्रोसेस को ट्रैप करेगा या उसी थ्रेड को ट्रैप करेगा जो गड़बड़ कर रहा है सर
उसी को ट्रैप करेगा जो गड़बड़ कर रहा है तो जो एडवांटेजेस थे वापस आ जाते हैं लेकिन प्रॉब्लम क्या है फिर दोबारा कर्नल
का लोड बढ़ गया भई ये सारी व्यवस्था करी क्यों गई थी इसलिए तो करी गई थी कि ऑपरेटिंग सिस्टम को इंडिविजुअल लेवल पिन
थ्रेड्स को मैनेज ना करना पड़े बट ये चेंजेज हमने किए हमें काइंड ऑफ फिर से ये सारा काम करना पड़ रहा है तो अब तीसरा और
आखिरी तरीका हो सकता है बीच का रा लाइक मेनी टू वन जहां पर मेनी टू मेनी बहुत सारे यूजर लेवल है बहुत सारे करने लेवल है
डिपेंडिंग ऑन द रिक्वायरमेंट हम डिवाइड करते हैं उदाहरण के लिए मान लेते हैं ये दो प्रोसेस है इनके लिए एक सिंगल थ्रेड
हमने बनाया लेकिन ये इंपॉर्टेंट थ्रेड है इसके लिए एक कर्नल लेवल थ्रेड ये भी इंपॉर्टेंट यूजर लेवल थ्रेड है इसके लिए
भी एक कर्नल लेवल थ्रेड नाउ आर यू गेटिंग दिस आइ दिया अगर यह दो यूजर लेवल थ्रेड इतने इंपॉर्टेंट नहीं है इनका आपस में
इतना क्लैश नहीं है तो ओएस कोशिश करेगा इनको सिंगल लेवल में एक कर्नल थ्रेड में मैनेज करने की बट अगर ये अपने आप में इतने
कॉम्प्लेक्शन लेवल थ्रेड में मैनेज करना पॉसिबल नहीं है तब हम इनको इंडिविजुअल लेवल पे मैनेज कर सकते हैं तो फर्किंग और
थ्रेडिंग का पूरा आईडिया ये तीनों मॉडल्स एडवांटेज डिसएडवांटेज मेरे ख्याल से इतने लिमिटेड टाइम में लगभग लगभग सारी चीज
मैंने कवर कर ली है तो कोई भी यहां से बेसिक क्वेश्चन आता है आई थिंक यू आर इन द रेडी टू आंसर दैट क्वेश्चन नाउ फाइनली वीी
आर रेडी फॉर प्रोसेस मैनेजमेंट द सेकंड हाफ ऑफ द ऑपरेटिंग सिस्टम तो चलिए अभी बात स्टार्ट करते हैं मेमोरी मैनेजमेंट के
बारे में अब मेमोरी मैनेजमेंट में सबसे पहले आ जाती है मेमोरी हिरर की इसका क्या मतलब है देखिए ये पैरामेट टाइप स्ट्रक्चर
बड़ा इंपॉर्टेंट है एग्जाम पॉइंट ऑफ व्यू से इन जनरल अंडरस्टैंडिंग के लिए भी हमें समझना पड़ेगा कि कंप्यूटर में मेमोरी
इंपॉर्टेंट तो है बट कोई एक तरह की मेमोरी नहीं होती हमारे पास ऑप्टिकल डिस्क मैग्नेटिक डिस्क या जिसको हम सेकेंडरी
मेमोरी वर्चुअल मेमोरी कहते हैं वो है देन हमारे पास मेन मेमोरी है हमारे पास कैश है हमारे पास रजिस्टर्स है और ये तीनों
आइडियाज देखिए मैंने यहां प रिप्रेजेंट किए हैं जैसे जैसे इस पिरामिड में हम ऊपर से नीचे जाते हैं हमारी जो कैपेसिटी है
मेमोरी की वो बढ़ती है तो हार्ड डिस्क आमतौर पर 512gb या 1 टेराबाइट या 2 टेराबाइट हार्ड
डिस्क होती है ऊपर की तरफ जाएंगे तो मेन मेमोरी छोटा होगा कैश उससे भी छोटा होगा रजिस्टर्स तो बहुत ही कम होते है तो
कैपेसिटी ऊपर से नीचे जाते हुए बढ़ती है नीचे से ऊपर आते हुए कम होती है पर यूनिट कॉस्ट ये भी इंपॉर्टेंट है कितनी महंगी है
ओबवियसली डिजायरेबल बात है कि हमें चाहिए का मेमोरी सस्ती हो तो पर यूनिट कॉस्ट के हिसाब से देखेंगे तो जैसे जैसे अगेन यू गो
डाउन इन द पिरामिड तो हार्ड डिस्क रिलेटिवली पर यूनिट कॉस्ट के हिसाब से देखेंगे तो 1gb या 1 एब बहुत सस्ता होता
है जबकि कैश में मेन मेमोरी में रजिस्टर्स में तो बहुत ही महंगा होगा तो वहां भी समझ आता है कि नीचे की तरफ जाने में फायदा बट
अगेन सबसे इंपॉर्टेंट है टाइम हार्ड डिस्क या सेकेंडरी मेमोरी या मेन मेमोरी रिलेटिवली स्लो होते हैं रजिस्टर्स है कैश
है वो बहुत फास्ट होते हैं अब क्या करें दो क्राइटेरियास कह रहे हैं कि नीचे की तरफ जाए एक क्राइटेरिया कह रहा है कि ऊपर
जाओ बट वो अकेला इन दोनों पर भारी भी है क्योंकि बात टाइम की है तो क्या यूज करें हम रजिस्टर यूज करें या हम मैग्नेटिक यूज
करें कंक्लूजन होना चाहिए कि हमें दोनों यूज करना चाहिए यहां पे अच्छा और बुरे की बात नहीं है हर इन सभी टाइप की मेमोरी के
ना अपने फायदे भी और अपने नुकसान भी है लेट मी गिव यू एन एनालॉजी ये देखिए मैं मोड्स ऑफ ट्रांसपोर्टेशन की बात करर हू तो
देखिए तीन आइडियाज है हमारे पास साइकिल है कार है और एयर बस है एरोप्लेन है मैं आपसे पूछूं बताओ कौन सा अच्छा कौन सा खराब है
अजीब बात है ये बिकॉज घर के बहुत पास जाना है यू नो थोड़ा बहुत घूमना है तो साइकिल मेक्स सेंस अगर 100 200 किलोमीटर तक आपको
ट्रेवल करना है तो कार बहुत सेंसिबल हो सकती है वहां ना साइकिल काम आएगी नाना प्लेन कैम आएगा बट आपको यूएस जाना है दो
4000 ट्रेवल करना है दिल्ली से बम्बे जाना है तो मे भी एरोप्लेन सूटेबल है तो कौन सा अच्छा कौन सा खराब है सर तीनों यूज करने
चाहिए बस पॉइंट यह है कि आप किस समय किसको चूज कर रहे हैं सेम आईडिया मेमोरी पर एप्लीकेबल है अब मैं दूसरी एनालॉजी लगा
रहा हूं च इ वेरी इंटरेस्टिंग और पूरा पैटर्न जब आप ध्यान से देखेंगे ना तो आपको मजा आ जाएगा एनालॉजी के अंदर ध्यान से
देखिएगा पूरा कंप्यूटर कैसे काम करता है समझ आएगा यह आईडिया आपको कंप्यूटर आर्किटेक्चर में भी हेल्पफुल होगा और
ऑपरेटिंग सिस्टम में भी लॉजिक देखिएगा सीपी अरेंजमेंट कुछ इस तरह से है सीपीयू जो बटर जनरेट करेगा बल्कि पहले मैं
एक एनालॉजी करता हूं सपोज करिए देर यू सी देर इज अ कस्टमर जिसको कार खरीदनी है अब जब कस्टमर कार खरीदने जाता है तो कस्टमर
के पास कितने ऑप्शन होते हैं मेरे ख्याल से वो सारे के सारे ऑप्शंस है जो फैक्ट्री में बन रहे हैं कौन सा कलर कौन सा वेरिएंट
यू नो ट्रांसमिशन ऑटोमेटिक है या मैनुअल है फ्यूल कौन सा है सीएनजी है पेट्रोल है डीजल है और टॉप वेरिएंट है बेस वेरिएंट है
सारे के सारे परम्यूटेशन कॉमिनेशन आप बना लो तो बनेगी 100 200 तरह की गाड़ियां है ना एक ही कंपनी के अंदर ज्यादा भी बन सकती
है वो सब की सब यहां पर होती है लेकिन जो कस्टमर है क्या कस्टमर फैक्ट्री में जाता है मुझे बताओ नहीं कस्टमर जाता है शोरूम
में शोरूम में कंपनी कौन सी कार रखेगी ओबवियसली धीरे-धीरे काम करने कंपनी को समझ आ जाता है कि किस खास तरह के कौन से मॉडल
सबसे ज्यादा बिकते हैं या कौन से अलग-अलग वेरिएंट सबसे ज्यादा देखे जाते हैं वो आपको मिल जाएंगे शोरूम के अंदर बोलो हां
या ना अगर बन शोरूम में नहीं मिले तो जाहिर सी बात है शोरूम में हम बहुत सारी गाड़ियां रख भी नहीं सकते आमतौर पे शोरूम
से 510 किलोमीटर दूर जहां थोड़ी सस्ती जमीन मिलती है वहां पर एक गो डाउन होता है जहां पर 100 200 300 गाड़ियां होती है
कभी-कभी आप बोलते हैं नहीं मेरे को यही चीज चाहिए तो बोला जाता है सर एक घंटा रुकिए मंगा देते हैं या आप गो डाउन चले
जाइए और अगर आपको कोई ऐसा एक्सट्रीम वेरिएट चाहिए जो भी अवेलेबल ही नहीं है गाड़ी वेटिंग में है तो फिर आपसे ये नहीं
बोलेंगे कि आप 2000 किमी फैक्ट्री जाओ आपसे बोलेंगे आप वेट करो हम फैक्ट्री से गाड़ी गो डाउन में लाएंगे फिर जिस दिन
डिलीवरी होगी आपको शोरूम में लाकर डिलीवर करेंगे बिल्कुल जैसे ये कार कंपनी मैनेज करती है ना ऐसे ही हम मेमोरी मैनेज करते
हैं ऑपरेटिंग सिस्टम रियलिटी में जब एड्रेस जनरेट करता है सो सेकेंडरी मेमोरी लॉजिकल मेमोरी वर्चुअल मेमोरी ऑक्जिलियम
मैंने सारे नाम लिख दिए इसके लिए ही करता है यस लेकिन यहां तक अगर जाएंगे तो बहुत स्लो हो जाएगा टाइम बहुत ज्यादा लगेगा तो
हम क्या करते हैं इसमें जो डाटा इंपॉर्टेंट होता है वो डाटा पहले से मेन मेमोरी के अंदर रखते हैं यहां पे कैसे पता
लगता है यूज केस से पता लग जाता है इधर कैसे पता लगता है कि कौन इंपॉर्टेंट है इधर भी यूज केस ही लगता है आगे आपको
बताऊंगा लोकेलिटी ऑफ रेफरेंस जो डाटा लगातार इस्तेमाल हो रहा होता है हमें समझ आता है कि यार ये डाटा इस्तेमाल में इसको
यहां पे रख लेना चाहिए अगेन यहां पर क्या ऑपरेटिंग सिस्टम जा सकता है क्या सीपीयू मेन ममरी तक जा सकता है जा सकता है बट
अगेन इट इज नॉट एडवाइजेबल कि आप गो डाउन जाके कार लेके आओ इसमें भी जो डाटा ज्यादा इंपॉर्टेंट होता है जो अभी यूज हो रहा है
उसको उठा के कैश में रख लेते हैं जैसे गो डाउन की कुछ इंपोर्टेंट कार्ड उठा के शोरूम में रख लेते हैं तब होगा क्या स्टेप
नंबर वन में सीपीयू या ऑपरेटिंग सिस्टम जो भी बोल लीजिए जाता सबसे पहले ट्राई करता है कैश में सर्च करने का अगर कैश में डाटा
मिल गया तो बहुत बढ़िया है अगर नहीं मिला जो कि कुछ केस में होगा नहीं मिलेगा तो आप जाएंगे मेन मेमोरी के पास लेट मी से दैट
इज स्टेप नंबर टू अगर यहां डाटा मिलता है तो भी बढ़िया अगर यहां डाटा नहीं मिला तो अब हम सेकेंडरी के पास नहीं जाएंगे बहुत
स्लो होगा सिस्टम कुछ समय के लिए रुकेगा जो डाटा आपको को चाहिए उसको सेकेंडरी से फैच करेंगे फिर आप डेटा एक्सेस करेंगे और
फिर एग्जीक्यूशन कंटिन्यू करेंगे इस सारे प्रोसेस सीखेंगे भी उस डाटा को यहां प अगर जरूरत होगी तो कैश में भी कॉपी करके
रखेंगे क्योंकि पहली बार आपने मांगा था बट अगली बार मांगेंगे तो प्रॉब्लम ना हो सेम जिस फिलॉसफी ये करता है दैट इज हाउ द
एंटायस की वर्क्स एंड दैट इज हाउ इन द लंगर रन हमें जो टाइम है हमें जो स्पेस है हमें जो कॉस्ट एवरेज मिल रही होती है
क्योंकि 90 पर केस में आइजर मेन मेमोरी और कैश मेमोरी हिट यही डाटा मिल जाता तो एक्सेस टाइम भी फास्ट होता है लेकिन बड़ा
डाटा मैं यहां पर होल्ड कर पा रहा हूं तो मेरी जो कॉस्टिंग है वो भी कम हो जाती है है ना तो ये पूरा सिस्टम हेडरिक का है अगर
हम सारी चीजों को सही तरीके से इस्तेमाल करें रेशो के अंदर तो कंप्यूटर परफेक्ट काम कर रहा होता है अच्छा जो मैं आपसे
आईडिया बोल रहा था लोकैलिटी ऑफ रेफरेंस ये वही आईडिया है कि कंप्यूटर जब एग्जीक्यूट करता है तो डटा हम रैंडम कहीं से भी कुछ
भी नहीं मांग रहे होते सो आईडिया क्या है रेफरेंस टू मेमोरी एट गिवन इंटरवल ऑफ टाइम टेंड्स टू कन्फाइंड विद अ फ्यू लोकलाइज्ड
एरिया इन द मेमोरी दिस फिनोमिना इज नोन एज लोकैलिटी ऑफ रेफरेंस एग्जीक्यूशन के दौरान ऐसा नहीं है सेकेंडरी से कुछ भी मांग रहे
होते हैं अब मान लीजिए कोई प्रोसेस एग्जीक्यूट कर रही है तो आसपास का ही कुछ डाटा बार-बार काम आएगा इसी को फैच करके रख
लेते हैं जैसे कार के केस में मैंने आपको बताया कुछ गाड़ियां फैशन में होंगी जो ज्यादा बिक गगी कुछ कलर फैशन में होंगे जो
ज्यादा बिकेंगे सीख लेते हैं हम धीरे-धीरे क्या बिजनेसमैन को बताने की जरूरत है जो शोरूम चला रहा होता है कि कौन सी चीज बाहर
शोकेस में रखनी है उसको पता है कौन सी चीज ज्यादा बिकेगी उसको पता है किस चीज को पहले से ऑर्डर करके रखना है यही सारा गेम
है इसके भी दो वेरिएंट है स्पेशल लोकैलिटी और टेंपोरल लोकेलिटी द यूज़ ऑफ डेटा एलिमेंट इन द नियर बाय लोकेशन अगर मैं
यहां से डाटा मांग रहा हूं तो इस बात की इन जनरल पॉसिबिलिटी ज्यादा है कि इसके आसपास का डाटा भी मैं फ्यूचर में मांग
सकता हूं उसको पहले से लोड करके रख लो दैट इज कॉल्ड स्पेशियल लोकैलिटी टेंपोरल लोकैलिटी टेंपोरल लोकैलिटी रेफर्स टू द
यूज़ ऑफ स्पेसिफिक डाटा और रिसोर्स विद इन अ रिलेट मल ड्यूरेशन ऑफ टाइम अगर कोई डाटा भी इस्तेमाल हुआ है आगे बात करूंगा फिजिकल
लोकेशन छोड़ दो तो इस बात की उम्मीद है कि फ्यूचर में भी इस्तेमाल होगा क्योंकि अभी वो यूज़ केस में बचा हुआ है एल आरयू लीस्ट
रिसेंटली यूज एल्गोरिथम बाद में इसी फिलॉसफी के ऊपर काम करता है है ना तो मेमोरी यरार की लोकैलिटी ऑफ रेफरेंस ये सब
किस प्रिंसिपल पे किस तरह से काम करता है आई थिंक इसका एक बेसिक अंडरस्टैंडिंग आपका डेवलप हुआ होगा अब ऑपरेटिंग सिस्टम की
क्या-क्या ड्यूटीज है और वो कैसे परफॉर्म करेगा आगे देखते हैं सो नाउ वी नो व्हाट इज बेसिक अंडरस्टैंडिंग ऑफ मेमोरी रार की
एंड हाउ दैट वर्क्स अभी बात करता ऑपरेटिंग सिस्टम की क्या-क्या मेजर रिस्पांसिबिलिटीज है जो आगे मेमोरी
मैनेजमेंट में हम पढ़ेंगे सल को वन बाय वन पहला जो एक बड़ी इंपॉर्टेंट ड्यूटी है वो है एड्रेस ट्रांसलेशन तो देखिए सीपीयू जो
जनरेट करेगा वो हमेशा करेगा लॉजिकल एडस लॉजिकल एड्रेस फॉर सेकेंडरी मेमोरी जो हमने पढ़ा वच इज लास्ट जो फैक्ट्री है कार
बनाने वाली वो बट वो हमें पहले कहां सर्च करना है वो हमें पहले सर्च करना है मेन मेमोरी में उससे भी पहले सर्च करना ना है
कैश में तो मेन मेमोरी में जो एड्रेस काम करता है दैट इज कॉल्ड फिजिकल एड्रेस तो लॉजिकल एड्रेस को फिजिकल एड्रेस में
ट्रांसलेट करना आसान भाषा में बोलूं तो जो एड्रेस जनरेट हुआ है सेकेंडरी मेमोरी के लिए उसको कन्वर्ट करना ताकि हम मेन मेमोरी
में पहले सर्च करेंगे कर सके दैट इज कॉल्ड फिजिकल एड्रेस तो लॉजिकल टू फिजिकल कन्वर्जन करना इज द रिस्पांसिबिलिटी ऑफ
ऑपरेटिंग सिस्टम अच्छा एक बात यहां पर क्लियर कर दूं वैसे पूरी मेमोरी रार की हमारे पास है बट एज फार एज ऑपरेटिंग
सिस्टम इज कंसर्न वी डू नॉट स्टडी कैश हम कैश स्टडी नहीं करते यहां पर जो हमारा प्राइमरी कंसर्न है वो मेन और सेकेंडरी
मेमरी इनका जो रिलेशनशिप है वो है जब हम कंप्यूटर आर्किटेक्चर पढ़ेंगे उसकी भी एक वन शॉर्ट वीडियो आएगी तो वहां पर आप
देखेंगे मैं इन दोनों का रिलेशन यानी कि कैश का और मेन मेमोरी का रिलेशन आपस में स्टडी करूंगा तो वहां पे हम पहली दो
मेमोरी प कंसंट्रेट करते हैं ओ में हम लास्ट मेमोरी प कंसंट्रेट करते हैं यानी कि मेन प और सेकेंडरी प तो ये करना देन
एलोकेशन एंड डी एलोकेशन इतनी सारी प्रोसेस है जैसे हमने सीपीयू की बात की जैसे हमने रिसोर्सेस की बात की अ इतनी सारी प्रोसेस
होंगी कौन से प्रोसेस को कौन सा स्पेस देना है एलोकेट करना है डी एलोकेट करना है कितना देना है उसका हिसाब किताब रखना ये
सारी के सारी रिस्पांसिबिलिटी होगी ऑपरेटिंग सिस्टम की ये देखिए एलोकेशन डिएलोकेशन और साथ-साथ ट्रैकिंग वो बड़ी
इंपॉर्टेंट है ना वरना कैसे पता लगेगा कितना रिसोर्स एलोकेट कर चुके कितना हमारे पास है तो सारा काम इज द रिस्पांसिबिलिटी
ऑफ़ द ऑपरेटिंग सिस्टम एंड द लास्ट वन इज मेमोरी प्रोटेक्शन इस बात का भी साथ-साथ ध्यान रखना है कि कोई भी इल्लीगल एक्सेस
ना हो यानी के यू नो इट्स वेरी इंपोर्टेंट जो प्रोसेस आप प्रोसेस के पास जो मेमोरी स्पेस है जो उसकी लेजिटिमेसी
कर पाए एक प्रोसेस दूसरे प्रोसेस का या कोई प्रोसेस ऑपरेटिंग सिस्टम का कोड एक्सेस ना कर पाए तो इस चीज का भी ख्याल
कौन रखेगा ऑपरेटिंग सिस्टम रखेगा ये चार पांच मेजर रिस्पांसिबिलिटीज है अब बात करता हूं कि
अप्रोचेबल फिलहाल मेन मेमोरी का कर रहे हैं दो इंपॉर्टेंट आइडिया है जैसा आप देख पा रहे हैं कंटीन्यूअस और नॉन कंटीन्यूअस
इसको ऐसे भी समझिए विथ टाइम अगर हम देखें स्टार्टिंग में जब हमने काम करना शुरू किया था कंप्यूटर्स में मैं बात कर रहा
हूं 50 की 60 की 70 की इवन 80 की तो मोस्ट ऑफ द कंप्यूटर जो होते थे मेमोरी को वो हम कंटीन्यूअस फैशन में हैंडल करते थे
कंटीन्यूअस का मतलब क्या समझाऊं बेसिकली एक साथ लेकन एरे तो पूरी प्रोसेस एक साथ होगी प्रोसेस के टुकड़े नहीं करेंगे उसके
कुछ इश्यूज थे कुछ प्रॉब्लम्स थे जिस वजह से जैसे-जैसे कंप्यूटर कॉम्प्लेक्टेड मांड बढ़ती गई
हमने धीरे-धीरे कंटीन्यूअस से नॉन कंटीन्यूअस पे स्विच किया जहां पर जिसको आजकल हम बोलते हैं पेजिंग नाम आपने सुना
होगा या सेगमेंटेशन जहां पे नॉन कंटस फैशन में लाइक अ लिंक लिस्ट प्रोसेस के आप टुकड़े कर सकते हैं अलग-अलग टुकड़े
अलग-अलग जगह होल्ड कर सकते हैं तो ये दो आइडियाज है लेकिन आप जानते हैं हमारा सिलेबस इसी तरह से चलता है कि थोड़ा सा
हिस्टोरिकल पॉइंट ऑफ व्यू भी हम पढ़ते हैं ताकि हमें प्रॉब्लम समझ आए फिर उसका सॉल्यूशन समझ आए ताकि आजकल हम क्या काम कर
रहे हैं उसको आप अच्छे से रिलेट कर पाओ और फ्यूचर में उसमें इंप्रूवमेंट कर पाओ यस तो पहले अब हम डिस्कशन स्टार्ट करते हैं
कंटीन्यूअस एलोकेशन तो कंटीन्यूअस एलोकेशन के दो मायने हैं दोनों बातें बड़ी इंपॉर्टेंट है ध्यान दीजिए वी नो दैट
व्हेन अ प्रोसेस इ रिक्वायर्ड टू बी एग्जीक्यूटेड मस्ट बी लोडेड इन टू मेमोरी बाय द पॉलिसी इस इंप्लीमेंटेशन के दो
आइडियाज है पहला मस्ट बी लोडेड इन टू मेन मेमोरी कंप्लीट फॉर एग्जीक्यूशन देखिए ये तो आपको समझ आ गया कि क्या सीपीयू
डायरेक्ट सेकेंडरी को एक्सेस करता है नहीं करता जो चीज रन करनी हो उसको पहले कहां लोड करेंगे मेन मेमोरी में प्रोसेस को
पार्शियल लोड नहीं कर सकते उसका कुछ हिस्सा नहीं ला सकते कंटीन्यूअस एलोकेशन कहता है प्रोसेस को कंप्लीट लोड करना
पड़ेगा एंड दैट टू उसको भी एक साथ रखना पड़ेगा ऐसा नहीं मेन मेमोरी में भी आपने उसको टुकड़े-टुकड़े करके अलग-अलग कंटस है
ना भाई तो पूरा लोड करेंगे और एक साथ रखेंगे ये दो लॉजिक हमेशा काम करेंगे इसके बिना हम एडजस्ट नहीं करेंगे है ना ये बात
हुई कंटीन्यूअस की अब पहले कंटीन्यूअस को डिटेल में स्टडी करेंगे नॉन कंटीन्यूअस की बात नहीं करें
अब जैसे मैंने आपसे बोला दो प्रॉब्लम है एक है मेमोरी एलोकेशन और दूसरा एड्रेस ट्रांसलेशन तो एड्रेस ट्रांसलेशन सबसे
पहले देख लेते बड़ा इंपोर्टेंट डायग्राम है यूनिवर्सिटीज में सेमेस्टर्स में कई बार पूछा जाता है एड्रेस ट्रांसलेशन कैसे
होगा पूरा थ्योरी यहां पर मैंने लिख के रखा है पहले आईडिया आपको समझाता हूं देखिए कोई भी प्रोसेस हमारे पास है मैं मान
लीजिए दिस इज मेन मेमोरी एंड और इसके पीछे कहीं पे है सेकेंडरी मेमोरी और मान लीजिए सेकेंडरी मेमोरी का ये कोई एड्रेस है है
ना ये कोई प्रोसेस है जो एग्जीक्यूट करना है अब जैसे मैंने आपसे बताया कि जो भी प्रोसेस एग्जीक्यूट करना है क्या पहले
पूरी की पूरी प्रोसेस को लोड करना होगा मेन मेमोरी में जी हां तो मान लीजिए ये पूरी की पूरी प्रोसेस मेन मेमोरी में हमने
लोड कर ली तो इसमें अच्छी बात क्या है क्योंकि जब भी प्रोसेस लोड होगी कंपलीटली लोड होगी कंटीन्यूअस एलोकेशन जब भी
प्रोसेस लोड होगी एक साथ रखी जाएगी मेन मेमोरी के अंदर तो यहां पे चीजों को मैनेज करना बड़ा आसान होगा एड्रेस ट्रांसलेशन
फॉर एग्जांपल मान लेते हैं यहां पर है हमारी इंस्ट्रक्शन नंबर जीरो और यहां पर है इंस्ट्रक्शन नंबर 99 है ना तो सीपी जो
एड्रेस जनरेट करेगा वो 0 से 99 तक करेगा तो सबसे पहले मैं क्या करूंगा फॉर द प्रोटेक्शन मैं यहां पर लिमिट सेट करके
रखूंगा फॉर एग्जांपल मेरा जो लिमिट है टोटल रो से 99 तक कितना हुआ 100 हुआ ना मेरा लिमिट 100 है सो दैट जब भी लॉजिकल
लेटर जनरेट हो अगर मान लीजिए सीबी बोले मेरे को तो 115 चाहिए क्या 115 100 से कम है नहीं 100 से कम तो नहीं है इसका मतलब
इल्लीगल एक्सेस करना चाह रहा है कोई दूसरी लोकेशन एक्सेस करना चाह रहा है जो कंट्रोल में नहीं है अगर यह फेल हुआ इसको यहीं पर
ट्रैप कर लेंगे है ना मान लेते हैं कि फिलहाल ट्रैप वाली बात नहीं है इसने बोला मेरे को 15 चाहिए 15 इज लेस देन 100 तो हम
आगे मैपिंग अलाउ करेंगे अब देखेंगे रीलोकेशन वैल्यू हो सकता है यह जो प्रोसेस है जब हमने इसे मेन मेमोरी में रखा जो बेस
एड्रेस होता है ना लेट मी से मेन मेमोरी में इसका बेस एड्रेस है 1200 अब आपको क्या चाहिए 15 चाहिए अगर अगर रो 1200 पे है तो
क्या होगा इधर से मैं 1200 लूंगा ना दिस विल बिकम द वैल्यू ऑफ द रीलोकेशन रजिस्टर इधर से मिलेगा 15 एंड 1215 विल बिकम 1215
और ये जो आपके इंस्ट्रक्शन है वो इधर कहीं नजर आएगी और जाके आप एक्सेस कर लेे कितना सिंपल है अबे एरे की तरह हुआ ना जैसे एरे
का अगर मैं आपको बेस एड्रेस बताऊ और इंडेक्स बताऊं आप एक्सेस नहीं कर सकते कर सकते हैं बहुत आसान है उसी तरह ये है आपको
बस ये देखना है कि जो आपकी प्रोसेस है वो मेन मेमोरी में कहां पे रखी उसका बेस एड्रेस क्या है बेस एड्रेस विल बिकम द
लोकेशन रजिस्टर लॉजिकल एड्रेस विल टेल मी द इंडेक्स दोनों को मैं सम करूंगा मुझे एड्रेस मिलेगा जाके एक्सेस कर लूंगा तो
बिकॉज़ ऑफ दिस कंकर्स पॉलिसी एड्रेस ट्रांसलेशन बहुत सिंपल है बहुत आसान है बहुत फास्ट है स्ट्रेट फॉरवर्ड है हम
चीजों को सीधे से एक्सेस कर लेते हैं तो यह 110 पर हम मान के चलेंगे हमारा एडवांटेज हुआ अब बात हुई स्पेस एलोकेशन की
दो ड्यूटी थे ना एड्रेस ट्रांसलेशन स्पेस एलोकेशन अब बात करते स्पेस एलोकेशन स्पेस एलोकेशन कंटीन्यूअस स्पेस एलोकेशन अभी हम
पढ़ रहे हैं इसमें भी अंदर दो पॉलिसीज होती हैं एक पॉलिसी होती है वेरिएबल साइज पार्टीशनिंग एक पॉलिसी होती है फिक्स साइज
पार्टीशनिंग मैं एग्जांपल लॉजिक से आपको बताता हूं बड़ी मजेदार बात है व्हाट इज वेरिएबल साइज पार्टीशनिंग देखिए इसमें
हमारा अप्रोच ये है कि एक मेमोरी है मैं उसको एज अ सिंगल चंक एज अ सिंगल होल ट्रीट करूंगा मैं अपने से पहले से कोई पार्टीशन
नहीं कर रहा और जब जैसा डिमांड आता जाएगा एग्जैक्ट उतने पोशन काट के देता जाऊंगा फॉर एग्जांपल मेरे पास लेट मी से ये स्पेस
है टोटल 100 यूनिट्स का कोई प्रॉब्लम नहीं है किसी ने आ बोला प्रोसेस है सर 30 यूनिट चाहिए अब ये सभी खाली है तो मैंने 30
यूनिट्स लिया और उठा के एलोकेट कर दिया मैंने पूरा 100 नहीं किया 30 किया फिर से किसी ने आके बोलेगा मेरे को 15 चाहिए अभी
आगे मेरे को नजर आ रहा है ये 15 का एक दूसरा हिस्सा बनाया यह लोकेट कर दिया किसी ने आके बोला मेरे को 20 चाहिए अभी भी
स्पेस है एक 20 का हिस्सा एलोकेट कर दिया फिर हो सकता है 15 वाला कहीं चला जाए मतलब खाली हो जाए एमटी हो जाए फिर कुछ एलोकेट
करा कुछ समय के बाद इस तरह का सिनेरियो आपको यहां पे नजर आएगा जैसे ये एक स्पेस है इसको पहले हमने डिजाइन नहीं किया है ना
होता है ना हर शहर में इस तरह की जगह होती है कुछ पुराने इलाके होता है कोई वेल मैनेज्ड प्लान नहीं है जहां जिसका मन है
ऐसे बनाते जा रहा है दिस काइंड ऑफ मैनेजमेंट इज कॉल्ड वेरिएबल साइज पार्टीशनिंग जहां पे सिस्टम पहले से आपको
डिक्टेट नहीं करेगा आपकी मोरल पुलिसिंग नहीं करेगा अपने हिसाब से आप बनाते जाओ जो खाली है चला जाएगा और कुछ समय के बाद
हालांकि ऐसे ही मेमोरी लगी जैसे ये आपको घर नजर आ रहे है बात समझ आती है मैं पढ़ूं एक बार इन दिस पॉलिसी इन द स्टार्टिंग वी
ट्रीट द मेमोरी एज अ होल और अ सिंगल चंक व्हेन एवर प्रोसेस रिक्वेस्ट फॉर सम स्पेस एगजैक्टली द सेम स्पेस इज एलोकेटेड इफ
पॉसिबल द रिमेनिंग कैन बी यूज्ड अगेन बच्चे को दोबारा इस्तेमाल कर लेंगे सिंपल एक लॉजिक हो सकता है कि नहीं इसमें हम
थोड़ा सा दिमाग लगाएंगे हम इसे थोड़ा सा मैनेज करेंगे कैसे मैनेज करेंगे विद द आइडिया ऑफ फिक्स साइज पार्टीशनिंग सो हियर
मैं एक एग्जांपल ले रहा हूं रेस्टोरेंट का सोचो रेस्टोरेंट का एग्जांपल कैसे काम करता है कि आपने गए होंगे किसी रेस्टोरेंट
में खाना खाते फाइन डाइन जहां पर आप देखेंगे जो रेस्टोरेंट का मालिक है ये जो स्टाफ है जो मैनेजमेंट है उनको अंदाजा है
कि लगभग कितने क्लाइंट आते हैं किस तरह के आते हैं तो देयर शुड बी सम बिगर टेबल्स अगर कोई पूरी फैमिली आती है तो दे शुड बी
कंफर्टेबल दो लोग हैं चार लोग हैं छोटी टीम है वो है कुछ कपल्स अगर आते हैं उनके मैनेजमेंट का पूरी व्यवस्था होनी चाहिए तो
यहां पर उन्होंने अपने हिसाब से इसको पार्टीशन कर दिया जैसे कोई सोसाइटी बनाता है ू बीएच के थी बीएच के वन बीएच के फोर
बीएच के अलग-अलग साइज के प्लॉट्स पहले से काट के रखते हैं ना कोई आके बोले कि मेरे को कंटीन्यूअस यानी कंटीन्यूअस नहीं
मिलेगा हमने अपने हिसाब से पार्टीशन कर दिया है या आप सिस्टम में ड्राइव नहीं बना लेते सी ड्राइव डी ड्राइव ई ड्राइव दैट इज
कॉल्ड नथिंग बट द फिक्स साइज पार्टीशनिंग तो जहां पर हम अपनी अंडरस्टैंडिंग के हिसाब से
पहले से पार्टीशन बना के चीजों को मैनेज करें दिस इज कॉल्ड फिक्स साइज पार्टीशनिंग जहां पे हम यू नो छोड़ दे उस बात को
डिमांड और सप्लाई के हिसाब से चीजों को मैनेज होने दे दैट इज कॉल्ड वेरिएबल साइज पार्टीशनिंग इसमें ये बात आपको ध्यान रखनी
है अगर मान लीजिए किसी फैमिली के अंदर नाइन मेंबर्स है मैंने 10 लोग वाली टेबल दी अब ये खाली है यह किसी और को नहीं दे
सकते कि मैं पूरा ही पार्टीशन एलोकेट करूंगा मैं इसको डिवाइड नहीं कर सकता जो गया वो गया आठ है को सात फैमिली की सात
मेंबर की फैमिली आई तो मैं मैं ये एलोकेट कर दूंगा अ ये स्पेस खाली हो गया सर ये इसमें प्रॉब्लम है बचाएगा कुछ स्पेस आगे
बताऊंगा इसको किस नाम से बुलाते हैं लेकिन यहां पर जितनी डिमांड होगी उतना सप्लाई करूंगा इसमें प्रॉब्लम क्या है लॉन्ग रन
में इसे मैनेज कौन करेगा इसमें थोड़ा सा स्पेस वेस्ट होता है इन दोनों के अंदर ही स्पेस एलोकेशन के कुछ आइडियाज है जैसे
आपने सुना होगा फर्स्ट फिट बेस्ट फिट वर्स्ट फिट वो क्या आइडियाज है अब आइए पहले उनको स्टडी करते हैं ओके तो अब यहां
पे तीन पॉलिसी हमारे पास है एक है फर्स्ट फिट एक है बेस्ट फिट एक है वस्ट फिट सो आई विल गो वन बाय वन और दोनों जो हमारी
स्कीम्स है ना फिक्स साइज पार्टीशनिंग और वे वेरिएबल साइज पार्टीशनिंग दोनों स्कीम में तीनों पॉलिसी एप्लीकेबल है आई विल गो
वन बाय वन सो एज यू अंडरस्टैंड जैसे य एफसीएफएस हमने पढ़ा था सीपीय शेड्यूलिंग में हर जगह ये सबसे डिफॉल्ट प्रिंसिपल
होता है सो व्हाट इज फर्स्ट फिट पॉलिसी मेरी जो मेमोरी है है ना चाहे वो पार्टीशन में है या वो वेरिएबल पार्टीशनिंग स्कीम
में है मैं एक तरफ से फर्स्ट फिट पॉलिसी में हमेशा मैं स्टार्टिंग से सर्च करना स्टार्ट करूंगा और जो पहला अवेलेबल स्पेस
मुझे मिलेगा व्हिच इज सफिशिएंट इनफ उसको उठा के मैं एलोकेट कर दूंगा तो यहां पर मैं बहुत ज्यादा एफिशिएंसी पे ध्यान नहीं
दे रहा जो पहला स्पेस मुझे मिलेगा जो सफिशिएंट इनफर खाली है फॉर एग्जांपल मान लिया किसी ने मेरे को बोला कि यार मेरे को
ना 5kb ऑफ स्पेस चाहिए पहले दो सेल्स बिल्कुल फिल थे तीसरा सेल खाली था बट वो 4kb था तो इससे कुछ होगा नहीं उसके अगला
नंबर फॉर एग्जांपल 20kb है है ना तो अब मेरे को 5kb स्पेस चाहिए इधर 20 केब तो मैं ये नहीं देख रहा कि इसके आगे मैं
जाऊंगा तो लेट मी से 7kb है थोड़ा बेटर है थोड़ा छोटा ना जो पहला अवेलेबल स्पेस मिलेगा व्हिच इज सफिशिएंट इनफ टू
सेटिस्फाई वो मैं उठा के एलोकेट कर दूंगा सो दिस इज़ द फर्स्ट फिट पॉलिसी अब अगेन डिपेंडिंग ऑन वेरिएबल साइज और फिक्स्ड
साइज अगर ये वेरिएबल साइज पार्टीशनिंग है तो 20 में आप समझ रहे हैं मैं पांच ही यूज़ करूंगा और जो बचा हुआ 15 है वो रीयूज
हो जाएगा अगर ये फिक्स साइज पार्टीशनिंग है और 20 का ही एकमात्र ये मतलब पार्टीशन है तो 20 का 20 पूरा लेक्ट होगा जो बचा
हुआ स्पेस होगा वो वेस्ट हो जाएगा बट फिलहाल आपको इस आईडिया पे ध्यान रखना है व्हाट इज फर्स्ट फेट एक तरफ से सर्च करना
चालू करेंगे जो पहला अवेलेबल स्पेस मिलेगा उसको एलोकेट करेंगे एंड देन आगे बढ़ जाएंगे यस दैट इज फर्स्ट फट सिंपल है इजी
टू यूज़ है इजी टू अंडरस्टैंड है अगेन टाइम या स्पेस की टर्म्स में कुछ अच्छा नहीं होगा क्या देखो स्टार्टिंग में तो
आपको जल्दी-जल्दी मिलेगा लेकिन होगा क्या कुछ समता आसपास का सारा स्पेस आप खा चुके होंगे फिर आपको दूर जाना पड़ा करेगा
इनएफिशिएंट भी है कभी-कभी हो सकता है थोड़ा आगे जाएंगे तो थोड़ा छोटा स्पेस मिल जाए व्हिच इज़ एफिशिएंट इनफ बट आप बड़ा
स्पेस भी एलोकेट कर सकते हैं व्हिच इज़ अ काइंड ऑफ़ अ वेस्टेज मैं इस पे एक न्यूमेरिकल भी सॉल्व करेंगे अगला क्या
बेस्ट फट अब जो आप सोच रहे होंगे वही आईडिया यह क्या करता है यह ऐसा नहीं कि स्टार्टिंग में ही जो अवेलेबल मिला उसी को
एलोकेट करेगा सो बेस फिट पॉलिसी क्या करता है इट गोज एंड सर्च द एंटायस करेगा और वह स्पेस एलोकेट करेगा जो
स्मॉलेट इनफ हो फॉर एग्जांपल अगर मेरा डिमांड है मान लीजिए 5kb का यस मेरे पास कुछ स्पेस खाली है जिसमें कि मेरे पास
15kb है मेरे पास एगजैक्टली 5kb है मेरे पास 6 kb1 प मैच हो रहा तो सबसे अच्छा क्या होगा
नाउ दैट इज़ बेस्ट फिट पॉलिसी यस अगेन फिक्स साइज पार्टीशनिंग में तो शानदार है क्यों क्योंकि फिक्स साइज पार्टीशनिंग में
जो अवेलेबल स्पेस बचता है बाद में वो रीयूज होता है क्या वो तो होटल के टेबल की तरह है तो अगर मैं इधर कर दूंगा तो एक
स्पेस एक के भी वेस्ट ही हो जाएगा वो बेटर है वेरिएबल साइज पार्टीशनिंग में हालांकि लॉन्ग रन में हमें लगता है वो इतना अच्छा
अप्रोच नहीं है क्यों होता ये है बेस्ट फिट पॉलिसी की वजह से अगर वेरिएबल है तो हम छोटे से छोटा स्पेस एलोकेट करते हैं
उससे क्या होता है जो लेफ्ट ओवर स्पेस अब मान लीजिए 6 केब वाला स्पेस हम एलोकेट करते हैं फॉर एग्जांपल 5kb एलोकेट किया है
अभी जो 1kb की स्ट्रिप बची है किसके काम आनी है बताओ बहुत रेयर सिनेरियो है कि छोटी-छोटी स्ट्रिप्स बाद में किसी के काम
आए तो सोचिए बेस्ट फिट पॉलिसी दरअसल अगर वेरिएबल साइज पार्टीशनिंग है तो बचा हुआ स्कीम रीयूज हो जाता है लेकिन बेस्ट फिट
पॉलिसी में नहीं हो पाता कि वो छोटे-छोटे लेफ्ट ओवर स्पेस मिलते रीयूज नहीं होते तो ये पॉलिसी बेस्ट फिट पॉलिसी वेरिएबल साइज
पार्टीशनिंग में दरअसल वस्ट हो जाती है यस एंड गोइंग टू द लास्ट वन वर्स फिट अब आपको समझेगा अभी कि क्यों कोई वर्स फिट पॉलिसी
स्टडी करेगा तो वर्स फिट में क्या है आई एम गोइंग टू सर्च द एनटायर मेमोरी स्पेस और मैं क्या करूंगा मैं वो पार्टीशन में
वो चंक एलोकेट करूंगा जो स्मॉलेट होगा कि लार्जेस्ट होगा जो लार्जेस्ट होगा यस अब ये सच में वर्स्ट है अगर फिक्स साइज
पार्टीशनिंग है ये तो वही वाली बात हो गई कि मान लीजिए एक होटल में आप गए और जो टेबल थी आठ लोगों के टेबल पे एक बंदा जाके
बैठ गया तो बचा हुआ स्पेस पूरा वेस्ट हो गया अब कोई उस टेबल को यूज नहीं कर सकता या यहां पर बात करूं मेरे पास 100 केब का
एक पार्टीशन और मैं 10 केबी का प्रोसेस एलोकेट कर दूं पूरा का पूरा लेफ्ट ओवर स्पेस वेस्ट हो गया अगर फिक्स साइज
पार्टीशन है वेरिएबल साइज पार्टीशनिंग में बढ़िया है क्यों क्योंकि 10 गया लेकिन बचा हुआ जो 90 है वो लेफ्ट ओवर रियू जबल भी है
दूसरा वो इतना बड़ा है कि उसके रीयूज होने की जो पॉसिबिलिटी है जो संभावना है वो भी ज्यादा है तो यहां पे अच्छा काम करेगा यस
तो आई होप आपको समझ आया बेस्ट फिट वेरिएबल साइज पार्टी में अच्छा काम वेबल हा बेस्ट फिट वेरिएबल साइज पार्टीशनिंग जो होगी
वहां पर काम करेगा और जो वर्स फिट है वो वेरिएबल साइज पार्टीशन में वस फिट अच्छा काम करेगा बेस्ट फिट फिक्स साइज पार्टीशन
में अच्छा काम करेगा एक न्यूमेरिकल पहले से बना के रखा है एंड इमेजिन ट इ फिक्स साइज पार्टीशन ज्यादातर क्वेश्चन फिक्स
साइज पार्टीशन प आते हैं तीनों पॉलिसी यूज करेंगे हमारे पास फाइव पार्टीशन है 100 500 200 300 600 और कुछ रिक्वेस्ट
रिक्वेस्ट क्या है 112 417 112 एंड 426 पहली पॉलिसी मान लीजिए मानता हूं फस्ट फिड अब 212 सर्च करना स्टार्ट करूंगा मैं
इधर एलोकेट कर दूंगा बोला ना जो पहला स्पेस अवेलेबल है वो एलोकेट करेंगे अब ये जो लेफ्ट ओवर स्पेस है यूज होगा कि नहीं
होगा नहीं होगा क्योंकि फिक्स साइज पार्टीशन की बात कर रहा हूं आगे देखिए 417 सफिशिएंट नहीं है सफिशिएंट नहीं है
सफिशिएंट नहीं है 417 इधर जाएगा अगेन थोड़ा स्पेस वेस्ट होगा क्योंकि 600 का पूरा पार्टीशन अलर्ट किया है 112 इधर से
चलेंगे सफिशिएंट नहीं है इधर आएगा 112 और अगेन लगभग आधे आधा स्पेस यहां भी वेस्ट होगा और फाइनली 426 आप ध्यान से देखेंगे
तो आपको समझ आएगा इट विल रिमन पेंडिंग ये लोकेट हो ही नहीं पाएगा ये 300 बचा है ये दोनों साथ में नहीं है साथ में होता तो भी
मैने जबल नहीं था लेफ्ट ओवर स्पेस है बट सब अलग-अलग है तो फर्स्ट फिट पॉलिसी आप देख रहे हो कुछ अच्छा काम किया नहीं इसने
अब देखते हैं बेस्ट फिट कैसे काम करता है 212 फिक्स साइज में तो बेस्ट फिट अच्छा काम
करता है तो ढूंढिए 212 का सबसे छोटा स्पेस कौन है यह तो नहीं कर पाएगा 300 में जाएगा 212 और लेफ्ट ओवर स्पेस वेस्ट हो गया 417
सबसे छोटा स्पेस ये 417 इधर लोकेट करता हूं लेफ्ट ओवर स्पेस वेस्ट हो गया 112 सबसे छोटा ये 112 इधर गया लेफ्ट ओवर स्पेस
वेस्ट हो गया 426 थैंक गॉड इस बार देखिए कोई रिक्वेस्ट मेरी पेंडिंग नहीं रही सब में कुछ ना कुछ एलोकेट हो रहा है तो जब भी
फिक्स साइज पार्टीशन की बात करेंगे बेस्ट फिट सच में बेस्ट काम करेगा और बस्ट फिट देखिए क्या मत दिलाता 212 ढूंढिए सबसे
बड़ा स्पेस ये इधर आ गया 212 लेफ्ट ओवर स्पेस वेस्ट 417 सबसे बड़ा बस मेरे ख्याल से आगे हम कुछ कर नहीं
पाएंगे 417 काफी स्पेस वेस्ट हुआ 112 अच्छा नहीं हो पा रहा है 300 में चला जाएगा सो 112 है ना जी हां
112 लेफ्ट ओवर स्पेस वेस्ट एंड अगेन 426 विल रिमन पेंडिंग यूज नहीं हो पाएगा तो आई थिंक फर्स्ट फिट बेस्ट फिट वर्स्ट फिट का
तीनों का एक बेसिक अंडरस्टैंडिंग आपका डेवलप हुआ होगा एक और पॉलिसी भी कभी-कभी आप सुन सकते हो इ कॉल्ड नेक्स्ट फिट
पॉलिसी वो क्या है फर्स्ट फिट में ही थोड़ा सा मॉडिफिकेशन है मॉडिफिकेशन क्या है कि जो हमारा फर्स्ट फिट पॉलिसी है वो
क्या करता है हर बार स्टार्टिंग से सर्च करना शुरू करता है यहां पर हम क्या कहते हैं पहली रिक्वेस्ट जहां भी सेटिस्फाई की
है जब अगली रिक्वेस्ट एंटरटेन करेंगे तो वहीं से आगे बढ़ेगा स्टार्टिंग से मत चलिए बस इतना सा चेंज है तो नेक्स्ट फिट इज अ
मॉडिफाइड फर्स्ट फिट पॉलिसी वेयर आफ्टर सर्विसिंग द फर्स्ट रिक्वेस्ट जो अगली रिक्वेस्ट में सेटिस्फाई करूंगा मैं वहीं
से आगे बढूंगा ना कि स्टार्टिंग से यस तो ये एक आईडिया है जो यहां पर काम करता है अब मैं दो तीन इंपॉर्टेंट कंक्लूजन यहां
पे कर देता हूं एक्सटर्नल इंटरनल फ्रेगमेंटेशन क्या कहानी है देखिए जब भी हम फिक्स साइज पार्टीशनिंग करते हैं अपने
हिसाब से पार्टीशन बनाते हैं तो जरूरी नहीं है कि हमारा जो पार्टीशन ऑ सिस्टम की जो डिमांड थी दोनों आपस में हमेशा
एग्जैक्ट मैच करें एक मिसमैच होगा और उस मिसमैच की वजह से एक्सटर्नल फ्रेगमेंटेशन होगा जैसे यहां पर हम बात कर रहे हैं अब
फॉर एग्जांपल ये एक फैमिली है है ना ये सच में एक फैमिली है बिग सीजन फैमिली इनको एक पार्टी बर्थडे पार्टी सेलिब्रेट करनी है
दे वांट टू गो टू अ रेस्टोरेंट बट यहां पर आप देखो अगर आप टोटल काउंट करोगे जितने मेंबर इनके पास है और जितना स्पेस यहां पर
है क्या स्पेस अवेलेबल है स्पेस तो अवेलेबल है बट वो स्पेस कंटीन्यूअस नहीं है अल अ अलग अलग-अलग तरीके से हमने
पार्टीशन कर दिया बोलो हां या ना तो क्या आपको बर्थडे पार्टी इस तरह से सेलिब्रेट करना अच्छा लगेगा दैट एवरी बडी इ सिटिंग
ऑन डिफरेंट टेबल काइंड ऑफ नो दिस प्रॉब्लम इज नोन एज एक्सटर्नल फ्रेगमेंटेशन डेफिनेशन आपके सामने लिखी है फिर भी मैं
बताऊं तो जब हमें जितना स्पेस चाहिए वो स्पेस अवेलेबल है कोई प्रॉब्लम नहीं टोटल स्पेस अवेलेबल है बट हमें स्पेस
कंटीन्यूअस फैशन में चाहिए स्पेस कंटीन्यूअस नहीं है स्पेस फ्रेगमेंटेड है इसलिए रिक्वेस्ट एंटरटेन नहीं की जा सकती
दैट इज़ कॉल्ड एक्सटर्नल फ्रेगमेंटेशन मेरे पास एक मेमोरी है बीच में थोड़ा सा स्पेस ऑक्यूपाइड है
एक तरफ 5kb खाली है एक तरफ 4kb खाली है नोटिस करिए यस अब मैं इसको इस्तेमाल करना चाहते हूं एक प्रोसेस है जिसका डिमांड है
7kb का क्या 7kb अवेलेबल है 4 + 9 अवेलेबल तो बट एलोकेट कैसे करूं इधर पांच का टुकड़ा इधर चार का टुकड़ा ये काम नहीं
करेगा दिस इज़ आइडिया ऑफ़ एक्सटर्नल फ्रेगमेंटेशन बहुत इंपॉर्टेंट टर्म है यह नेक्स्ट इज इंटरनल फ्रेगमेंटेशन अब ये
क्या प्रॉब्लम है ये वो प्रॉब्लम है कि एक पार्टीशन है फिक्स साइज पार्टीशनिंग पॉलिसी है हमने पूरा स्पेस एलोकेट कर दिया
कोई प्रॉब्लम नहीं है बट क्योंकि एक पार्टीशन में एक ही प्रोसेस जा सकती है बचा हुआ जो स्पेस है ये मान लीजिए 101
लोगों की टेबल थी बहन अकेले आके बैठ गए पूरा खुश है लेकिन ये स्पेस अब यूज नहीं हो सकता तो यह कहां होगा हमेशा फिक्स साइज
पार्टीशन में वेरिएबल साइज पार्टीशनिंग में देर नेवर बीन इंटरनल फ्रेगमेंटेशन अगर मैं पार्टीशन एगजैक्टली अपने हिसाब से
बनाता हूं और प्रोसेस पूरा फिल नहीं कर पाती तो थोड़ा लेफ्ट ओवर स्पेस जरूर बचेगा दैट इज इंटरनल फ्रेगमेंटेशन एरे आपने
डिक्लेयर किया 10 सेल का बाद में उसमें छह ही आप भर पाए बचा हुआ चार स्पेस किसी और को तो दे नहीं सकते वेस्ट हो गया ना दैट
इज एन एग्जांपल ऑफ इंटरनल फ्रेगमेंटेशन सो आई थिंक इंटरनल एक्सटर्नल दोनों फ्रेगमेंटेशन आपको समझ आए होंगे इन द लंगर
में आपको बता दूं हमारे लिए बिगर प्रॉब्लम क्या है हमारे लिए बिगर प्रॉब्लम होता है एक्सटर्नल फ्र टेशन उसमें बहुत स्पेस
वेस्ट होता है अब एक्सटर्नल फ्रेगमेंटेशन को सॉल्व कैसे करें दो आईडिया हो सकता है या तो आप रन टाइम में सिस्टम में प्रोसेस
जो अलग-अलग जगह पे है है ना उनको पसू करो उनको समझाओ कि यार बार-बार डी फ्रेगमेंट करो उनको एक एक जगह प लेके आके इकट्ठा करो
बट ये सुनने में आसान लग रहा है रन टाइम पे सिस्टम में बार-बार प्रोसेसेस को मूव करना एक
एप्रोप्रियेट में काम कर नहीं पाता तो उसको करने का का फिर बेटर तरीका क्या है कि आपको प्रोसेस को समझाना पड़ेगा कि
व्हाई डोंट यू गो फॉर नॉन कंटस एलोकेशन जिसकी मैं पहले बात कर रहा था तो नॉन कंटीन्यूअस पॉलिसी अगर हम प्रोसेस को
समझाएं वो मैनेज कैसे होगा प्रोसेस के टुकड़े करेंगे एड्रेस ट्रांसलेशन कैसे होगा पहले टुकड़े से अगले टुकड़े प कैसे
पहुंचेंगे वो सारी चीजें देखने वाली होंगी बट यही एक आईडिया है नॉन कंटस पॉलिसी का एक्सटर्नल फ्रेगमेंटेशन से बचने के लिए जो
हम करते हैं जिसका नाम है पेजिंग तो पहले इसकी बैकग्राउंड समझना जरूर पेजिंग कहां से आया हमारे लिए कंटस एलोकेशन में बड़ी
प्रॉब्लम है एक्सटर्नल फ्रेगमेंटेशन जिसके लिए नॉन कंटस तरीके से मेमोरी को मैनेज करते हैं जिसका सॉल्यूशन है पेजिंग अब
पेजिंग क्या है और नॉन कंटीन्यूअस काम कैसे करता है बड़ा इंपॉर्टेंट और थोड़ा सा मुश्किल भी है सारी बातें समझ के चलेंगे
थैंक यू तो चलिए अभी बात करते हैं नॉन कंटस मेमोरी एलोकेशन की यानी कि पेजिंग की तो पेजिंग की क्या व्यवस्था है पूरा
डायग्राम बहुत थोड़ा सा लंबा आईडिया है एक बार में सारी चीज नहीं समझ आएगी तो स्टेप बाय स्टेप मेरे साथ आगे बढ़ते रहिएगा
धीरे-धीरे सारी चीज आपको स्टेप बाय स्टेप क्लियर करते जाऊंगा आई विल गो पॉइंट बाय पॉइंट हियर स्पेसिफिकली वरना वो यू नो एक
पॉइंट एक्सप्लेन करते लगते हो कहानी लंबी निकल जाती है पेजिंग इज अ मेमोरी मैनेजमेंट स्कीम दैट परमिट्स द फिजिकल
एड्रेस अ स्पेस ऑफ अ प्रोसेस टू बी नॉन कंटस पूरा आर्गुमेंट यही है हमें प्रॉब्लम है एक्सटर्नल फ्रेगमेंटेशन से और
एक्सटर्नल फ्रेगमेंटेशन जो हमने समझा वो हो रहा है कंटस एलोकेशन से तो उसको रिजॉल्व करने के लिए हम ये मेथड यूज कर
रहे हैं बात समझ आती है है एंड पेजिंग इज देयर टू रिमूव एक्सटर्नल फ्रेगमेंटेशन तो जब भी पेजिंग की बात करें पहले समझाए कि
भाई पेजिंग है क्या नाउ अब हम काम करेंगे कैसे देखिए डिवाइड कर रहे है ना मेमोरी को कैसे डिवाइड करेंगे सबसे पहले जो सेकेंडरी
मेमोरी है हमारी उसको हम डिवाइड करेंगे कुछ पार्टीशंस में यस जैसा हमने एक एग्जांपल देखा रेस्टोरेंट वाला अलग-अलग
टेबल्स अलग-अलग साइज की हो सकती है बट यहां पर टू मेक द थिंग सिंपल वी विल बी यूजिंग नॉट वेरिएबल साइज बट फिक्स साइज
पार्टीशनिंग पॉइंट नंबर वन पॉइंट नंबर टू फिक्स साइज पार्टीशन में भी इन सब पार्टीशन का साइज आपस में भी सेम होगा
ताकि मैनेज करना आसान हो धीरे-धीरे डिस्कशन आगे बढ़ेगा आप समझ जाएंगे जैसे बराबर साइज के पार्टीशंस सेकेंडरी मेमोरी
में होंगे ठीक सेम साइज के पार्टीशन मेन मेमोरी या फिजिकल मेमोरी में भी होंगे तो मान लीजिए अगर इधर पार्टीशन का साइज 1kb
है ना सर तो इधर भी पार्टीशन का साइज 1kb ही रखेंगे ताकि इनको आपस में मैनेज करना आसान हो बार-बार स्वप इन करना है बार-बार
स्वप आउट करना है तो फिक्स साइज पार्टीशन ईच पार्टीशन इज ऑफ सेम साइज यहां पर सेकेंडरी में इस पार्टीशन को आज के बाद
में कह के बुलाऊंगा पेज और यही रीजन है इस पूरी स्कीम को हम पेजिंग कह रहे हैं यही पार्टीशन जब हम मेन मेमोरी में पढ़ेंगे तो
इसको हम बोलते हैं फ्रेम तो आज के बाद आपको याद हो गया फ्रेम क्या है और पेज क्या है बस मेमोरी को इक्वल साइज
पार्टीशंस में डिवाइड कर दिया वही पॉइंट लिखा हुआ है सेकेंडरी मेमोरी इज डिवाइडेड इनटू फिक्स साइज पार्टीशन बिकॉज़
मैनेजमेंट इज इजी एंड ऑल ऑफ देम आर ऑफ़ सेम साइज कॉल्ड एज पेजेस एंड सिमिलरली यहां पर जब हम बात करते हैं दे आर कॉल्ड
एज फ्रेम्स यस ये बात समझ आ गई इन जनरल फिजिकल मेमोरी रिलेटिवली बहुत अ छोटी होती है कंपेयर टू जैसे मैंने अपने ए सिस्टम का
एग्जांपल आपको दिखाया था तो मेरे सिस्टम में फिजिकल मेमोरी रैम जो है वो है 32gb की और हार्ड डिस्क जो है वो 8 टेराबाइट की
तो कई गुना का डिफरेंस है दोनों के बीच में लेकिन साइज फिर भी सेम है फ्रेम्स का तो यानी कि यहां पे नंबर ऑफ फ्रेम्स छोटे
होंगे यहां पे नंबर ऑफ़ फ्रेम बड़े होंगे जैसे अब मान लीजिए होटल में कोई रूम है रूम आमतौर पर स्टैंडर्ड साइज का होता है
होटल छोटा होगा तो उसमें नंबर ऑफ रूम्स कम होंगे होटल बड़ा होगा तो नंबर ऑफ रूम ज्यादा होंगे बट रूम का साइज मोरल लेस सेम
रहेगा सेम लॉजिक यहां पे है आगे बढ़ता हूं अब ट्रांसलेशन कैसे होगा पूरा गेम ट्रांसलेशन का है पहले तो याद है रीलोकेशन
रजिस्टर लिमिट रजिस्टर ट्रांसलेशन बहुत आसान था यहां आसान नहीं होगा कैसे गौर करिए स्टेप नंबर वन सीपीयू जनरेट करेगा एक
एड्रेस और अब वो एड्रेस दो पार्ट में डिवाइड होगा प और डी यहां पर पी का मतलब है पेज नंबर एंड डी का मतलब है ऑफसेट कहने
का मतलब अब तक तो मैं बोल रहा था कि मेरे को यह वाला इंस्ट्रक्शन दो बट अब क्योंकि सेकेंडरी मेमोरी आपने पेजेस में डिवाइड कर
दिया है तो मैं क्या बोलूंगा मेरे को पेज नंबर थ्री का इंस्ट्रक्शन नंबर सेवन समथिंग लाइक दिस पेज नंबर इंस्ट्रक्शन
नंबर तो वही बोल रहा हूं गिव मी अ पेज नंबर गिव मी इंस्ट्रक्शन नंबर अब मजे की बात क्या है बहुत सारे
अप्रोचेबल लीजिए कोई प्रोसेस है जिसके पास p1 p2 p3 p 4 एंड p5 पांच पेज है अब यह जो पांच पेजेस है यह मेन मेमोरी में कहीं ना
कहीं होंगे अगर फिलहाल हम एग्जीक्यूट कर रहे हैं मान लेते हैं कि है लेकिन यह भी समझना पड़ेगा कि नॉन कंटीन्यूअस है तो ऐसा
हो सकता है कि यहां पर हो पेज नंबर वन इधर कहीं हो पेज नंबर टू इधर कहीं हो पेज नंबर थ्री नॉन कंटस फैशन में ऊपर नीचे किसी भी
ऑर्डर में हो सकता है पहुंचे कैसे इसके ऊपर अगर मैं ऐसा बोलूंगा कि पेज नंबर वन के पास एक लिंक होगा जो पेज नंबर टू फिर
पेज नंबर टू पेज नंबर थ्री तक पहुंचाएगा तो बड़ी दिक्कत हो जाएगी तो यहां पर हम क्या करते हैं हम एक टेबल बनाते हैं जिसको
बोलते हैं पेज टेबल अब पेज टेबल क्या है सर पेज टेबल कोई हार्डवेयर नहीं है समझिए यह भी एक डटा स्ट्रक्चर है और इस पेज टेबल
में कितनी एंट्री होंगी जितने किसी प्रोसेस के पास पेज है तो प्रोसेस के पास मान रम सेकेंडरी में कितने पेज है पांच
पेज है ना तो यहां देखिए पांच एंट्री मैंने पेज टेबल में बना ली और जैसे इंडेक्सिंग में हम करते हैं हर मेरा पेज
फिलहाल मेन मेमोरी में कहां पे सीध उसका एड्रेस है तो कैन आई से मान लीजिए पेज नंबर वन है इधर नंबरिंग चल रही होगी 1 2 3
4 5 6 समथिंग समथिंग लेट मी से मेरा पेज नंबर वन फ्रेम नंबर सेवन में है पेज नंबर टू मेरा फ्रेम नंबर टू में है पेज नंबर
थ्री मेरा फ्रेम नंबर फाइव में लाइक दिस तो मैं क्या करूंगा जैसे ही सीपीयू बोलेगा पेज नंबर ये चाहिए तो मुझे जाना पड़ेगा
पेज टेबल के पास हर प्रोसेस की अपनी एक पेज टेबल होगी उस पेज टेबल से मुझे पता लगेगा कि ओके आपका यह वाला पेज ना अभी मैं
मेमोरी में इस फ्रेम में है तो मेरे को क्या मिल गया देखो मेरे को मिल गया फ्रेम नंबर अच्छा पूरा पेज उठा के मैं मेन
मेमोरी में कहीं पे भी रख दूं पेज के अंदर जो इंस्ट्रक्शन है भला उसका एड्रेस कभी चेंज होगा कभी नहीं होगा तो इंस्ट्रक्शन
का एड्रेस मैं सेम एज इट इज ले लेता हूं और ये जो p और डी था ये बन जाएगा एफ और डी और ये बन जाएगा फिजिकल लेटर्स और अब इस
एड्रेस को यूज करके मैं अपना जो मेन मेमोरी है उसको एक्सेस करूंगा ये पूरी ट्रांसलेशन प्रोसेस है है ना इसको दो बार
रिवाइंड करके देखिएगा मैंने कोशिश की है कोई पॉइंट मिस ना किया हो आपसे अगर कोई छूटा है तो यू नो इट विल गेट कवर्ड वंस यू
रिवाइज मैं दोबारा पढ़ रहा हूं लॉजिकल लेटर्स दो पार्ट में डिवाइड किया पी और डी प का मतलब हुआ पेज नंबर डी का मतलब हुआ
इंस्ट्रक्शन ऑफ सेट पेज नंबर क्या है पेज नंबर इंडेक्स है पेज टेबल पे ये अच्छा ये भी एक डेटा स्ट्रक्चर है यह मैं बोल रहा
हूं हार्डवेयर नहीं ये खुद मेन मेमोरी में ही कहीं पे स्टोर है तो जब भी हम यू नो ट्रांसलेशन स्टार्ट करेंगे हमें पता होगा
कि इस प्रोसेस को जिसको हम रन कर रहे हैं उसका पेज टेबल कहां पे है एक रजिस्टर होता है मैंने यहां लिखा भी होगा कहीं पीटीबीआर
स्टैंड्स फॉर पेज टेबल बेस रजिस्टर जो मुझे इस टेबल तक पहुंचा देता है ताकि मैं इसको पढ़ सकूं अच्छा लिखा है ना अगला
पॉइंट वही है तो पेज टेबल बेस रजिस्टर प्रोवाइड द एड्रेस ऑफ़ द पेज टेबल एंड देन द करेस्पॉन्डिंग्ली
मेन मेमोरी में आपका फेज फिलहाल कहां पे रखा हुआ है देन अगेन इंस्ट्रक्शन ऑफसेट के साथ कंबाइन करते हैं और हमें मिल जाता है
हमारा फिजिक एड्रेस अब थोड़ी सी बात डिटेल में करते हैं पेस्ट टेबल के बारे में यस क्या पेस्ट टेबल एक हार्डवेयर है कि डेटा
स्ट्रक्चर है एक डेटा स्ट्रक्चर है क्या पेज टेबल सिस्टम का है कि प्रोसेस का है सर वो जो हमने प्रोसेस समझी उसके पास पांच
पेज थे तो उसके पेज टेबल में पाच एंट्री है किसी दूसरे प्रोसेस के पास हो सकता है 5 लाख पेज हो तो उसके प्रोसेस में कितनी
एंट्री होगी 5 लाख एंट्री होंगी सो सिस्टम के अंदर कितने पेज टेबल होंगे जितनी प्रोसेस है एवरी प्रोसेस विल हैव अ पेज
टेबल सेपरेट पेज टेबल है ना यह बात समझ आ गई नंबर ऑफ़ एंट्रीज अ अ प्रोसेस इन अ पेज टेबल इज़ द
नंबर ऑफ़ पेजेस अ प्रोसेस हैव इन द सेकेंडरी मेमोरी कितनी एंट्री होंगी जितने मेरे पास सेकेंडरी मेमोरी में पेजेस हैं
मान लीजिए मेरे पास 5 लाख पेज हैं तो इधर 5 लाख ही एंट्री होंगी हालांकि मैं बता दूं क्योंकि नॉन कंट्री केस लोकेशन है
क्या जरूरी है कि वह सारे के सारे पेजेस फ़िलहाल मेन मेमोरी में हो यह जरूरी नहीं है लेकिन वहां पे आपको इनवैलिड एंट्री मिल
जाएगी प्रॉब्लम क्या है लेकिन नंबर ऑफ़ एंट्रीज कितनी होंगी जितनी टोटल पेज मेरे पास है ओके साइज ऑफ ईच एंट्री इन द पेज
टेबल इज सेम एज द करेस्पॉन्डिंग्ली के अंदर ये तो पता समझने वाली बात क्या है जब पेजिंग यूज करके हम एक्सेस करते हैं ना
पेजिंग करते स्लो हो जाता है कैसे पहली ब बार जब आप पेज टेबल के पास जाएंगे खुद मेन मेमोरी में एक बार मेन मेमोरी एक्सेस करना
पड़ा अब यहां से आपको मिलेगा करेस्पॉन्डिंग्ली बिकॉज ऑफ दिस नॉन कंडिस एलोकेशन मुझे कम
से कम मेमोरी कितनी बार एक्सेस करना पड़ेगा दो बार एक्सेस करना पड़ेगा तब तो जाके मेरे को एड्रेस मिलेगा जो मुझे
एक्सेस करना है बट कोई बात नहीं कुछ पाने के लिए कुछ खोना पड़ता है कंक्लूजन से मिला क्या सिर्फ एक चीज
रिमूवल ऑफ एक्सटर्नल फ्रेगमेंटेशन और कभी-कभी समस्या इतनी बड़ी होती है कि उनकी कीमत चुकानी पड़ती है बट ट्रस्ट मी जब
धीरे-धीरे आप सिस्टम को ऑब्जर्व करेंगे समझेंगे यू विल अंडरस्टैंड ये एडवांटेज इतना बड़ा है कि ये सारी की सारी प्रॉब्लम
जो भी मिलेंगी ना पेजिंग के साथ उस पर हम काम करने के लिए तैयार रहते एडवांटेज बहुत बड़ा है एक और बात यह मैं कोई थियोरेटिकल
आईडिया नहीं पढ़ा रहा आज भी जिस लैपटॉप जिस फोन के थ्रू आप ये वीडियो देख रहे हैं ना उसके अंदर भी पेजिंग इंप्लीमेंटेड है
सो दिस इज नॉट एन आउटडेटेड ऑर्थोडॉक्स आइडिया जो कभी-कभी हमारी शिकायत रहती है ना पढ़ रहे हैं लेकिन इसका आज की दुनिया
से कोई लेना देना नहीं है है इवन और कॉम्प्लेक्टेड नुकसान क्या हुआ तो मैंने आपको समझा दिया ट्रांसलेशन बड़ा स्लो है
पहले तो याद है लिमिट और रीलोकेशन रेजिस्टर अर्थमेटिक ऑपरेशन था प्लस माइनस कंपैरिजन करना पड़ता था बहुत आसान था यहां
पर मेन मेमोरी कम से कम दो बार एक्सेस करनी पड़ती है तो सिस्टम की स्पीड हाफ हो जाती है फर्स्ट पॉइंट सेकंड पॉइंट अ
कंसीडरेबल अमाउंट ऑफ़ स्पेस इज़ वेस्टेड इन स्टोरिंग द पेज टेबल पेज टेबल को स्टोर करने में भी एक अच्छा खासा स्पेस हमारा
वेस्ट होता है यह बात तो ठीक है और पेज टेबल क्या है मेटा डेटा डेटा और मेटा डाटा बिकॉज़ इसके अंदर एगजैक्टली पेज नहीं है
डाटा नहीं है यह तो बता रहा है कि मेन मेमोरी में कौन सा पेज कहां पे है दिस इज एन आईडिया सिस्टम सफर्स फ्रॉम इंटरनल
फ्रेगमेंटेशन एज पेजिंग हां इंटरनल फ्रेगमेंटेशन हम पहले पढ़ चुके हैं तो इंटरनल फ्रेगमेंटेशन किस लिए होता है जब
भी फिक्स साइज पार्टीशन आप करेंगे इमेजिन करिए अगर कोई प्रोसेस है लेट मी से जिसका साइज
है 15 100 बाइट्स 1500 बाइट्स और मेरा जो पेज है वो 1 केब का है तो बोलो उस प्रोसेस को स्टोर करने के लिए कितने पेज एलोकेट
करने पड़ेंगे कम से कम दो तो करोगे ना वरना वो दूसरा जो 1500 वाला हिस्सा पूरा नहीं आएगा तो यहां पर जो दूसरा पेज है मान
लेता हूं पहला तो पूरा भर जाएगा बट क्या दूसरा पेज पूरा भरेगा दूसरा पेज पूरा नहीं भर पाएगा सो अगेन इट इज वेरी क्लियर कट
आईडिया कि इंटरनल फ टेशन तो होगा जहां भी फिक्स साइज पार्टीशनिंग होगी वहां इंटरनल फ्रेगमेंटेशन होगा बट यह वेस्टेज कंपेयर
टू पेजिंग कंपेयर टू एक्सटर्नल फ्रेगमेंटेशन बहुत कम है बहुत मेनेजेबल है आगे बढ़ता हूं ट्रांसलेशन इज डिफिकल्ट एंड
कॉम्प्लेक्टेड मानना चाहिए कि नहीं बट है तो यह प्रोसेस एक समय के बाद इतनी कॉम्प्लेक्टेड हमें करना पड़ता था फेयर
इनफ इससे पहले आगे बढ़े मैं बहुत ज्यादा इस वीडियो में कंसंट्रेट न्यूमेरिकल्स पे नहीं करूंगा लेकिन एक बेसिक आईडिया आपको
समझाता हूं खासकर यूनिट्स का बच्चे बड़े कंफ्यूज रहते हैं देखो रियल लाइफ़ में जब हम बात करते हैं ना तो हम थाउजेंड्स में
मिलियंस में बिलियंस में बात करते हैं रियल लाइफ के अंदर है ना अ आप सुनते हैं ना बिलियन डॉलर मिलियन डॉलर बल्कि मैं बात
करूं इंडिया में तो क्या है इंडिया में पहली ज़ीरो पहला कॉमा हम लगाते हैं तीन के बाद यह हुआ 1000 उसके बाद जब हम कॉमा
लगाते हैं हम दो-दो के बाद लगाते हैं हमें ऐसा समझना आसान होता है तो 1 लाख हुआ ना सॉरी ये 1000 था ये क्या हो गया 1 लाख हो
गया फिर दो के बाद और कॉमा लगाएंगे आई एम सॉरी ऐसा कर लेता हूं अब ये क्या हो गया ना दैट विल बी 1 करोड़ है ना
दो दो के बाद कॉमा लगता है बाहर आप देखेंगे तो तीन-तीन के बाद ही कॉमा लगता है नाउ दिस इज 1000 अभी तीन के बाद लगा
देंगे नाउ दैट इज 1 मिलियन फिर तीन के बाद लगा देंगे सो नाउ दैट इज 1 बिलियन लाइक दिस फिजिक्स में जब हम पढ़ते हैं तो 10 की
पावर 3 का सिस्टम चलता है 10 की पावर 3 10 की पावर 6 बट थाउज मिलियन बिलियन ट्रिलियन ना बोल के किलो मेगा गीगा टेरा पेटा ऐसे
बोलते हैं कंप्यूटर साइंस में हम 10 की पावर से नहीं खेलते हम टू की पावर से खेलते हैं ये एगजैक्टली सेम नहीं होता 2
की पावर 10 एकदम 1000 नहीं होता ये होता है 1024 है ना बट इसको हम क्या बोलते हैं इसको किलो बोलेंगे इसको मेगा बोलेंगे इसको
गिगा बोलेंगे तो हम जब भी बात कर रहे होते हैं ना किलोबाइट मेगाबाइट गीगाबाइट टेराबाइट तो गीगाबाइट से कभी भी मेरा मतलब
10 की पावर 9 नहीं होगा गीगाबाइट से हमेशा मेरा मतलब क्या होगा 2 की पावर 30 होगा तो हमारा भगवान टू है भाई हम टू की पावर में
खेलेंगे है ना ये यूनिट का अंडरस्टैंडिंग मुझे लगता है कि आपको होना चाहिए छोटा सा एक अंडरस्टैंडिंग आपको कराता हूं मेमोरी
