कंप्यूटर विज्ञान और उन्नत अनुप्रयोग
डेटा प्रोसेसिंग चक्र
डेटा प्रोसेसिंग चक्र
आप पहले से ही इनपुट-प्रोसेस-आउटपुट मॉडल से परिचित हैं। यह कंप्यूटर के काम करने का मूल सिद्धांत है। लेकिन उस 'प्रोसेस' चरण के अंदर वास्तव में क्या होता है? जब आप कीबोर्ड पर एक बटन दबाते हैं या किसी लिंक पर क्लिक करते हैं, तो डेटा स्क्रीन पर जानकारी के रूप में कैसे बदल जाता है? यह सब सेंट्रल प्रोसेसिंग यूनिट (CPU) के भीतर होने वाले एक सटीक डांस की बदौलत होता है।
सीपीयू (CPU) आपके कंप्यूटर का दिमाग है, जो हर कमांड को निष्पादित करने के लिए जिम्मेदार है। यह एक अंतहीन लूप में काम करता है, जिसे इंस्ट्रक्शन साइकिल कहा जाता है। यह चक्र ही है जो आपके सभी सॉफ़्टवेयर को चलाता है, चाहे वह एक साधारण कैलकुलेटर हो या एक जटिल वीडियो गेम।
इंस्ट्रक्शन साइकिल: सीपीयू का कोर रूटीन
प्रत्येक ऑपरेशन जो एक सीपीयू (CPU) करता है, उसे तीन मुख्य चरणों में तोड़ा जा सकता है: फेच, डिकोड और एक्सेक्यूट।
1. फेच (Fetch): सीपीयू (CPU) मेमोरी (आमतौर पर रैम) से अगला इंस्ट्रक्शन प्राप्त करता है। सोचिए कि कंट्रोल यूनिट एक लाइब्रेरियन है जो सही किताब (इंस्ट्रक्शन) को सही शेल्फ (मेमोरी एड्रेस) से उठा रहा है। 2. डिकोड (Decode): कंट्रोल यूनिट इंस्ट्रक्शन को पढ़ता है। यह पता लगाता है कि क्या करने की आवश्यकता है, जैसे कि दो नंबर जोड़ना या मेमोरी में डेटा ले जाना। 3. एक्सेक्यूट (Execute): एक बार जब इंस्ट्रक्शन समझ में आ जाता है, तो सीपीयू (CPU) का एक और हिस्सा, [{<एरिथमैटिक लॉजिक यूनिट (ALU)>}], वास्तविक काम करता है। यह गणना करता है या लॉजिकल ऑपरेशन करता है।
यह चक्र प्रति सेकंड अरबों बार होता है। जब आप एक वेब सर्वर से एक पेज का अनुरोध करते हैं, तो सर्वर का सीपीयू (CPU) डेटा भेजने के लिए इन तीन चरणों से गुजरता है। यह डेटा के लिए अनुरोध (फेच) करता है, अनुरोध को समझता है (डिकोड), और डेटा को आपके ब्राउज़र पर वापस भेजने का कार्य (एक्सेक्यूट) करता है।
गति बढ़ाना: पाइपलाइनिंग और पैरेलल प्रोसेसिंग
एक समय में एक इंस्ट्रक्शन को फेच-डिकोड-एक्सेक्यूट करना प्रभावी है, लेकिन यह सबसे तेज़ तरीका नहीं है। सीपीयू (CPU) के कुछ हिस्से बेकार बैठे रहते हैं जबकि दूसरे काम कर रहे होते हैं। यहीं पर पाइपलाइनिंग काम आती है।
पाइपलाइनिंग एक असेंबली लाइन की तरह है। एक इंस्ट्रक्शन को निष्पादित करने की प्रतीक्षा करने के बजाय, सीपीयू (CPU) एक ही समय में कई इंस्ट्रक्शन पर काम करना शुरू कर देता है, प्रत्येक एक अलग चरण में होता है। जबकि एक इंस्ट्रक्शन एक्सेक्यूट हो रहा है, अगला डिकोड हो रहा है, और उसके बाद वाला फेच हो रहा है। यह सीपीयू (CPU) के सभी हिस्सों को व्यस्त रखता है, जिससे थ्रूपुट या एक निश्चित समय में पूरे किए गए काम की मात्रा में काफी वृद्धि होती है।
| क्लॉक साइकिल | बिना पाइपलाइनिंग (इंस्ट्रक्शन 1) | पाइपलाइनिंग (3 इंस्ट्रक्शन) |
|---|---|---|
| 1 | फेच | इंस्ट्रक्शन 1: फेच |
| 2 | डिकोड | इंस्ट्रक्शन 1: डिकोड, इंस्ट्रक्शन 2: फेच |
| 3 | एक्सेक्यूट | इंस्ट्रक्शन 1: एक्सेक्यूट, इंस्ट्रक्शन 2: डिकोड, इंस्ट्रक्शन 3: फेच |
| 4 | (खाली) | इंस्ट्रक्शन 2: एक्सेक्यूट, इंस्ट्रक्शन 3: डिकोड |
| 5 | (खाली) | इंस्ट्रक्शन 3: एक्सेक्यूट |
चीजों को और भी तेज़ करने के लिए, आधुनिक कंप्यूटर पैरेलल प्रोसेसिंग का उपयोग करते हैं। यह एक ही समय में कई पाइपलाइन चलाने जैसा है। एक मल्टी-कोर प्रोसेसर में कई सीपीयू (CPU) होते हैं, जिनमें से प्रत्येक की अपनी पाइपलाइन होती है। यह कंप्यूटर को एक ही समय में कई जटिल कार्यों को संभालने की अनुमति देता है, जैसे कि वीडियो चलाना, वेब ब्राउज़ करना और बैकग्राउंड में फ़ाइल डाउनलोड करना।
इनपुट/आउटपुट को अनुकूलित करना
एक तेज़ सीपीयू (CPU) बहुत अच्छा है, लेकिन यह बेकार है अगर यह डेटा की प्रतीक्षा कर रहा है। इनपुट/आउटपुट (I/O) संचालन, जैसे कि हार्ड ड्राइव से पढ़ना या नेटवर्क पर डेटा भेजना, सीपीयू (CPU) की तुलना में बहुत धीमा होता है। यदि इसे ठीक से प्रबंधित नहीं किया जाता है, तो सीपीयू (CPU) अपना अधिकांश समय डेटा की प्रतीक्षा में बिताएगा।
इस बाधा को दूर करने के लिए, कंप्यूटर कई तकनीकों का उपयोग करते हैं। इनमें से एक डायरेक्ट मेमोरी एक्सेस (DMA) है। DMA एक विशेष हार्डवेयर घटक को I/O डिवाइस और मेमोरी के बीच सीधे डेटा स्थानांतरित करने की अनुमति देता है, जिससे सीपीयू (CPU) को इस प्रक्रिया में शामिल होने की आवश्यकता नहीं होती है। यह सीपीयू (CPU) को अन्य कार्यों पर काम करने के लिए मुक्त करता है जबकि डेटा ट्रांसफर पृष्ठभूमि में होता है। यह एक व्यक्तिगत सहायक को काम सौंपने जैसा है, ताकि आप अधिक महत्वपूर्ण चीजों पर ध्यान केंद्रित कर सकें।
एक और तकनीक बफरिंग है। डेटा को सीधे संसाधित करने के बजाय, इसे अस्थायी रूप से मेमोरी के एक क्षेत्र में संग्रहीत किया जाता है जिसे बफर कहा जाता है। सीपीयू (CPU) इस बफर से डेटा के बड़े हिस्से को एक बार में संसाधित कर सकता है, जो धीमे I/O डिवाइस से लगातार छोटे डेटा टुकड़ों की प्रतीक्षा करने की तुलना में बहुत अधिक कुशल है।
इन सभी तत्वों, इंस्ट्रक्शन साइकिल से लेकर I/O ऑप्टिमाइज़ेशन तक, को समझकर आप यह समझने लगते हैं कि कंप्यूटर वास्तव में सूचना को कैसे संसाधित करता है। यह एक जटिल प्रणाली है, लेकिन यह कुछ सुरुचिपूर्ण और शक्तिशाली मूल सिद्धांतों पर बनी है।
सीपीयू (CPU) के इंस्ट्रक्शन साइकिल के तीन मुख्य चरण क्या हैं?
पाइपलाइनिंग सीपीयू (CPU) के प्रदर्शन को कैसे बेहतर बनाती है?
