ढेर और ढेर का भौतिक प्रतिनिधित्व क्या है?


9

मैं आसानी से समझ सकता हूं कि कैसे .bs और कोड में प्रोसेसर का भौतिक प्रतिनिधित्व होता है, जिसमें निर्देशों के लिए एक मेमोरी बैंक होता है जो एक प्रोग्राम काउंटर की गिनती कर सकता है और bss (ब्लॉक स्टार्टिंग सिंबल) सिर्फ वैश्विक डेटा है। लेकिन फिर स्थानीय चर के लिए ढेर और गतिशील स्मृति के लिए ढेर है। इन चीजों को शारीरिक रूप से सर्किट पर कैसे रखा जाता है?

जवाबों:


6

नोट: मैं ज्यादातर x86 का संदर्भ देता हूं क्योंकि मैं इससे सबसे अधिक परिचित हूं और यह व्यापक रूप से प्रलेखित है:

X86 (और अधिकांश अन्य आर्किटेक्चर) पर स्टैक सिर्फ मेमोरी में रहता है जैसे कि सब कुछ। प्रोसेसर एक पॉइंटर के माध्यम से स्टैक को हेरफेर करता है, जो आमतौर पर एक रजिस्टर (स्टैक पॉइंटर) में संग्रहीत होता है। पुश और पॉप निर्देश स्टैक पॉइंटर के मूल्य को बदल देगा, जहां स्टैक के शीर्ष है।

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

पेजिंग और सेगमेंट स्पर्शरेखा से संबंधित हैं, हालाँकि। वे ज्यादातर मल्टी-टास्किंग के साथ करते हैं, जहां प्रक्रियाओं को रैम को संशोधित करने की अनुमति नहीं दी जा सकती है जो वे स्पष्ट रूप से स्वयं नहीं करते हैं।


3
पेजिंग सामान्य रूप से मेमोरी प्रबंधन के बारे में अधिक है - वह इकाई जिस पर भौतिक मेमोरी को तार्किक पते पर मैप किया जाता है - केवल एक्सेस प्रतिबंधों की तुलना में, हालांकि बाद में मेमोरी प्रबंधन इकाई की एक अतिरिक्त विशेषता के रूप में लागू किया जाता है।
क्रिस स्ट्रैटन

4

तार्किक रूप से स्टैक बोलना, और ढेर आमतौर पर सिर्फ मेमोरी होते हैं; हालांकि कार्यान्वयन स्तर पर, वे उम्मीद करते हैं कि मुख्य रूप से कैश से सेवा दी जाएगी। अधिकांश प्रणालियों में वे कैशिंग एल्गोरिदम के माध्यम से गतिशील रूप से वहां पहुंचते हैं, लेकिन ऐसी प्रणालियां हैं जो कैश या अन्य तेज-से-सामान्य मेमोरी में स्पष्ट स्थान का समर्थन करती हैं, और संभावना यह भी है कि जो संकेत छोड़ने का समर्थन करते हैं कि विशेष डेटा को वहां प्लेसमेंट के लिए प्राथमिकता पसंद होनी चाहिए। अंतरिक्ष परमिट।

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

कुछ प्रोसेसरों में एक रिटर्न एड्रेस रजिस्टर होता है, जो एक प्रकार के एक डीप क्लियर स्टैक कैश के रूप में कार्य करता है (संभवतः कई गहरे हार्डवेयर स्टैक वाले भी होते हैं, हालांकि उदाहरण दिमाग में नहीं आते हैं)।

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