CPU किस मेमोरी से वास्तव में डेटा पढ़ते हैं?


-1

सीपीयू द्वारा संसाधित किए जाने वाले डेटा के लिए मेरी अपनी समझ के अनुसार, इसे अंदर रखा जाना चाहिए राम इस बीच में, CPU खुद है कैश मेमरी , इसका उपयोग डेटा तक पहुंचने के लिए भी किया जाता है। यह एक बहुत अच्छी तरह से ज्ञात तथ्य है कि सीपीयू कैश सीपीयू के 'करीब' है और किसी भी अन्य प्रकार की मेमोरी से तेज है। लेकिन यह मेरे लिए कुछ हद तक अस्पष्ट है, क्या सीपीयू कैश में डेटा को संसाधित किया जाना अनिवार्य है? यदि हां, तो कैश बड़ी मात्रा में डेटा कैसे रख सकता है? (कैशे का आकार RAM की तुलना में छोटा होता है, कुछ mb तक, अधिक बार 1 से कम होता है) यदि नहीं, तो CPU कैसे तय करता है कि डेटा का कौन सा भाग उसके कैश में रखा जाना है?

मैं भी थोडा स्वैग से उलझन में था। सीपीयू इसे रैम का हिस्सा मानते हैं और एचडीडी से सीधे वहां रखे गए डेटा को संबोधित करते हैं?


आपको वास्तव में विकिपीडिया पर जाना चाहिए कि कैश क्या है और यह किस समस्या को हल करता है।
user3528438

जवाबों:


3

सीपीयू पर कैश डेटा संग्रहीत नहीं करता है, यह सिर्फ पहुंच को गति देता है।

कैश की सबसे बुनियादी व्याख्या यह है कि जब सीपीयू रैम से किसी विशेष बाइट को पढ़ने के लिए जाता है, तो वह डेटा कैश में भी कॉपी हो जाता है। अगली बार सीपीयू को उस बाइट को पढ़ने की जरूरत है, मेमोरी कंट्रोलर इसे कैश में देखता है, और रैम को धीमा कॉल करने के बजाय, यह सीपीयू को कैश से डेटा सौंपता है।

इस स्पष्टीकरण के साथ दो विशिष्ट मुद्दे हैं:

  1. कैश एक परिमित आकार है। इस वजह से, जब डेटा जोड़ा जाता है, तो आपको अंततः इसके लिए जगह बनाने के लिए (या 'ड्रॉप') पुराने डेटा से छुटकारा पाने की आवश्यकता होती है। इसे करने के तरीकों का एक समूह है, और सटीक कार्यप्रणाली इस चर्चा के लिए बिल्कुल मायने नहीं रखती है, लेकिन इससे क्या फर्क पड़ता है कि थोड़ी देर के बाद, डेटा अब कैश में नहीं हो सकता है, और फिर आप बाहर जाने के लिए आह वैसे भी मुख्य स्मृति के लिए।

  2. जब डेटा लिखा जाता है, तो आपको उस पते पर पहले से संग्रहीत कैश से डेटा को अपडेट करने या निकालने की आवश्यकता होती है। इसे संभालने के तीन मुख्य तरीके हैं:

    • राइटबैक: राइटबैक विधि का उपयोग करते हुए, डेटा को पहले कैश में राइट किया जाता है, और फिर अंततः मुख्य मेमोरी में लिखा जाता है। यह प्रदर्शन के लिए कई फायदे हैं, लेकिन कुछ परिस्थितियों में मुद्दों का कारण बन सकता है।
    • Writethrough: Writethrough पद्धति का उपयोग करते हुए, डेटा एक साथ कैश और मुख्य मेमोरी दोनों को लिखा जाता है। यह राइटबैक की तुलना में कम प्रदर्शन है, लेकिन अधिक सुरक्षित है।
    • राइट-अराउंड: राइट-अराउंड विधि का उपयोग करते हुए, डेटा को मुख्य मेमोरी में सीधे लिखा जाता है, और फिर उसी स्थान पर डेटा कैश से हटा दिया जाता है। यह बहुत ही विशिष्ट उपयोग के मामलों को छोड़कर शायद ही कभी उपयोग किया जाता है।

तो, रैम बनाम सीपीयू कैश के बारे में आपके सवाल का जवाब देने के लिए, तकनीकी रूप से दोनों, लेकिन डेटा लगभग सभी मामलों में रैम से आता है। यदि आप विशेष रूप से इसके बारे में अधिक जानने में रुचि रखते हैं, तो मैं निम्नलिखित दो विकिपीडिया लेखों को पढ़ने का सुझाव दूंगा:

https://en.wikipedia.org/wiki/Cache_(computing)

https://en.wikipedia.org/wiki/CPU_cache

अब, स्वैप स्थान की बात के रूप में, यह एक पूरी तरह से अलग अवधारणा है जो वर्चुअल मेमोरी और पेजिंग से बंधा है। यह समझाने की कोशिश कर रहा हूँ कि यहाँ मुझे Wkipedia लेखों के एक जोड़े को लिखने का सबसे अधिक परिणाम मिलेगा, इसलिए मैं आपको सीधे सवाल के बजाय सीधे लेख पर ही कविता दूंगा:

https://en.wikipedia.org/wiki/Virtual_memory

https://en.wikipedia.org/wiki/Paging

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.