स्टॅक आणि ढीग दरम्यान फरक

लेखक: Laura McKinney
निर्मितीची तारीख: 1 एप्रिल 2021
अद्यतन तारीख: 16 मे 2024
Anonim
स्टॅक मेमरी आणि हीप मेमरी | स्टॅक आणि ढीग यांच्यात काय फरक आहे?
व्हिडिओ: स्टॅक मेमरी आणि हीप मेमरी | स्टॅक आणि ढीग यांच्यात काय फरक आहे?

सामग्री


स्टॅक आणि ढीग हे मेमरी वाटप तंत्रात वापरले जाणारे मेमरी विभाग आहेत. स्टॅक आणि ढीग यातील मुख्य फरक म्हणजे स्टॅकमध्ये मेमरीचे रेषीय आणि अनुक्रमिक वाटप समाविष्ट असते जे स्थिर मेमरी ationलोकेशनमध्ये वापरले जाते तर ढीग स्टोरेज एरियाचे तलाव म्हणून कार्य करते जे मेमरीला यादृच्छिकपणे वाटप करते (डायनॅमिक मेमरी ationलोकेशन).

वेग हे मुख्य पॅरामीटर आहे जे स्टॅक आणि ढीग यांना वेगळे करते; ढिगारापेक्षा स्टॅक लक्षणीय वेगवान आहे.

  1. तुलना चार्ट
  2. व्याख्या
  3. मुख्य फरक
  4. निष्कर्ष

तुलना चार्ट

तुलना करण्यासाठी आधारस्टॅकढीग
मूलभूत(LIFO) अंतिम मध्ये प्रथम आउट फॅशनमध्ये मेमरीचे वाटप केले जाते.मेमरी यादृच्छिक क्रमाने वाटप केली जाते.
वाटप आणि विलोपनस्वयंचलितमॅन्युअल
किंमतकमीअधिक
अंमलबजावणीकठोरसुलभ
मागवत आहेओ (एन)ओ (1)
देणेस्मरणशक्तीचा अभावमेमरी फ्रॅगमेंटेशन
संदर्भ स्थानउत्कृष्टपुरेसे
लवचिकतानिश्चित आकार आणि लवचिक नाहीआकार बदलणे शक्य आहे
प्रवेश वेळवेगवानहळू


स्टॅक व्याख्या

स्टॅक ationलोकेशन पुश आणि पॉप ऑपरेशनच्या सहाय्याने प्रक्रियेस मेमरी प्रदान करण्यासाठी लिफो (अंतिम मध्ये प्रथम आउट) धोरण अनुसरण करते. मेमरीमधील प्रत्येक ब्लॉक निश्चित आकाराचा असतो जो विस्तारित किंवा कॉन्ट्रॅक्ट केला जाऊ शकत नाही. स्टॅकमधील शेवटची नोंद कोणत्याही क्षणी प्रवेशयोग्य आहे. स्टॅक एक संक्षिप्त मेमरी वापरते जिथे स्टॅकच्या बेस एंट्रीला निर्देशित पॉईंटर स्टॅकच्या पहिल्या एंट्रीला निर्देशित करतो आणि स्टॅकच्या शीर्षस्थानी असलेले दुसरे पॉइंटर स्टॅकच्या शेवटच्या एंट्रीला सूचित करते.

स्टॅक देखील फंक्शन कॉलचे समर्थन करते. फंक्शन कॉल स्टॅक प्रविष्ट्यांचा संग्रह ठेवू शकतो, याला स्टॅक फ्रेम म्हणून ओळखले जाते. कंपाईलरच्या कॉनमध्ये स्टॅक फ्रेमचे दुसरे नाव एक्टिवेशन रेकॉर्ड आहे कारण ते प्रोग्राम संकलनाच्या वेळी वापरलेला डेटा संग्रहित करते. जेव्हा जेव्हा एखादे फंक्शन म्हटले जाते तेव्हा स्टॅक फ्रेम स्टॅकमध्ये ढकलली जाते.

स्टॅक फ्रेममध्ये फंक्शनच्या पॅरामीटर आणि रिटर्न पत्त्याचे एकतर पत्ते किंवा मूल्य यांचा समावेश असतो जे फंक्शनची अंमलबजावणी पूर्ण केल्यावर नियंत्रण परत करावे की नाही हे दर्शवते.


ढीग व्याख्या

ढीग वाटप कोणत्याही निश्चित पध्दतीचे पालन करत नाही; त्याऐवजी हे यादृच्छिक असाइनमेंट आणि मेमरीचे डिसेगमेंट करण्यास अनुमती देते. प्रक्रियेद्वारे असाइनमेंट विनंती ढीगमध्ये वाटप केलेल्या मेमरी क्षेत्राला पॉईंटरसह परत देते आणि प्रक्रिया पॉईंटरद्वारे वाटप केलेल्या मेमरी क्षेत्रामध्ये प्रवेश करते.

डीओलोकेशन डिलोकेशन विनंतीद्वारे केले जाते, स्टॅकपेक्षा भिन्न नसते जेथे मेमरी स्वयंचलितपणे कमी होते. जेव्हा डेटा स्ट्रक्चर्स बनविली जातात आणि मुक्त केली जातात तेव्हा ढीग मेमरी allocलोकेशनमध्ये छिद्र विकसित करते. हे रनटाइमवर वापरले जाते.

  1. स्टॅकमध्ये, ationलोकेशन आणि डीएलोकेशन सीपीयूद्वारे केले जाते आणि स्वयंचलित असते तर ढीगमध्ये, ते प्रोग्रामरद्वारे स्वहस्ते केले जाणे आवश्यक आहे.
  2. ढीग फ्रेम हाताळणी स्टॅक फ्रेम हाताळणीपेक्षा महाग आहे.
  3. स्टॅकची अंमलबजावणी करणे जटिल आहे. त्याउलट, ढीगांची अंमलबजावणी करणे सोपे आहे.
  4. स्टॅकमधील फंक्शन कॉलमध्ये ओ (एन) वेळ लागतो. याउलट, ढीगमध्ये ओ (1) वेळ लागतो.
  5. स्टॅकची अंमलबजावणी प्रामुख्याने मेमरी कमतरतेच्या समस्येमुळे ग्रस्त आहे. त्याउलट, ढीगातील मुख्य मुद्दा म्हणजे फ्रॅगमेंटेशन.
  6. स्टॅक फ्रेममध्ये प्रवेश करणे ढीगांपेक्षा सोपे आहे कारण स्टॅक मेमरीच्या लहान प्रदेशात मर्यादित आहे आणि तो नेहमी कॅशेवर दाबतो, परंतु मेमरीमध्ये प्रवेश केल्यामुळे मेमरीमध्ये प्रवेश केल्यामुळे अधिक कॅशे गहाळ होऊ शकते.
  7. स्टॅक लवचिक नाही, वाटप केलेला मेमरी आकार बदलला जाऊ शकत नाही. दुसरीकडे, ढीग लवचिक आहे आणि वाटप केलेल्या मेमरीमध्ये बदल करता येतो.
  8. ढीगपेक्षा स्टॅकपेक्षा जास्त वेळ मिळतो.

निष्कर्ष

स्टॅकचे वाटप जलद परंतु जटिल आहे. दुसरीकडे, ढीग हळू आहे, परंतु त्याची अंमलबजावणी स्टॅकपेक्षा सोपे आहे. ढीग स्टॅकपेक्षा अधिक कार्यक्षम आहे.