लिंकर आणि लोडर दरम्यान फरक

लेखक: Laura McKinney
निर्मितीची तारीख: 3 एप्रिल 2021
अद्यतन तारीख: 5 मे 2024
Anonim
लिंकर आणि लोडर दरम्यान फरक - तंत्रज्ञान
लिंकर आणि लोडर दरम्यान फरक - तंत्रज्ञान

सामग्री


लिंकर आणि लोडर एक उपयुक्तता प्रोग्राम आहे जे प्रोग्रामच्या अंमलबजावणीमध्ये प्रमुख भूमिका निभावतात. प्रोग्रामचा सोर्स कोड अंमलबजावणीपूर्वी संबंधित ऑर्डरमध्ये कंपाईलर, असेंबलर, लिंकर, लोडरद्वारे जातो. एकीकडे, जेथे दुवा साधणारा अ‍ॅसेम्बलरद्वारे व्युत्पन्न केलेला ऑब्जेक्ट कोड घेते आणि त्यांना एक्जीक्यूटेबल मॉड्यूल व्युत्पन्न करण्यासाठी एकत्र करते. दुसरीकडे, द लोडर कार्यान्वित करण्यासाठी हे एक्जीक्यूटेबल मॉड्यूल मुख्य मेमरीवर लोड करते. आपण तुलना चार्टच्या मदतीने लिंकर आणि लोडरमधील फरक याबद्दल चर्चा करूया.

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

तुलना चार्ट

तुलनासाठी आधारलिंकरलोडर
मूलभूतहे सोर्स प्रोग्रामचे एक्झिक्युटेबल मॉड्यूल व्युत्पन्न करते.हे एक्जीक्यूटेबल मॉड्यूलला मुख्य मेमरीवर लोड करते.
इनपुटहे इनपुट म्हणून घेईल, असेंबलरद्वारे व्युत्पन्न केलेला ऑब्जेक्ट कोड.हे दुवा साधणार्‍याद्वारे निर्मित कार्यवाहीयोग्य मॉड्यूल घेते.
कार्यहे एक्जीक्यूटेबल मॉड्यूल व्युत्पन्न करण्यासाठी सोर्स कोडच्या सर्व ऑब्जेक्ट मॉड्यूल्सची जोडणी करते.हे एक्झिक्यूशनसाठी मुख्य मेमरीमधील एक्जीक्यूटेबल मॉड्यूलला पत्ते वाटप करतात.
प्रकार / दृष्टीकोनलिंकेज एडिटर, डायनॅमिक लिंकर.परिपूर्ण लोडिंग, रीलोकेटेबल लोडिंग आणि डायनॅमिक रन-टाइम लोडिंग.


लिंकरची व्याख्या

असेंबलर स्त्रोत प्रोग्रामचा ऑब्जेक्ट कोड व्युत्पन्न करतो आणि त्यास लिंकरच्या स्वाधीन करतो. दुवा साधणारा हा ऑब्जेक्ट कोड घेते आणि व्युत्पन्न करतो कार्यवाहीयोग्य कोड प्रोग्रामसाठी आणि ते लोडरच्या स्वाधीन करा.

उच्च-स्तरीय भाषा, प्रोग्राममध्ये काही आहेत अंगभूत लायब्ररी आणि शीर्षलेख फायली. स्त्रोत प्रोग्राममध्ये काही लायब्ररी फंक्शन्स असू शकतात ज्यांची व्याख्या अंगभूत लायब्ररीत संग्रहीत आहे. दुवा साधणारे हे कार्य अंगभूत लायब्ररीत जोडतात. जर अंगभूत लायब्ररी सापडल्या नाहीत तर त्या कंपाईलरला माहिती दिली आणि कंपाईलर नंतर त्रुटी निर्माण करते.

कधीकधी मोठ्या प्रोग्राम्स सबप्रोग्राममध्ये विभागल्या जातात ज्याला म्हणतात विभाग. जेव्हा हे मॉड्यूल संकलित केले जातात आणि एकत्र केले जातात, स्त्रोत प्रोग्रामचे ऑब्जेक्ट मॉड्यूल तयार केले जातात. लिंकरवर सोर्स प्रोग्रामची एकच एक्झिक्युटेबल फाइल व्युत्पन्न करण्यासाठी सर्व ऑब्जेक्ट मॉड्यूल्स एकत्र करणे किंवा जोडण्याची जबाबदारी आहे. आमच्याकडे दोन प्रकारचे लिंकर आहेत.


दुवा संपादक: हा दुवा साधणारा आहे जो पुनर्वासनयोग्य, कार्यवाहीयोग्य मॉड्यूल व्युत्पन्न करतो.

डायनॅमिक लिंकर: लोड मॉड्यूल / एक्झिक्युटेबल मॉड्यूल व्युत्पन्न होईपर्यंत हे काही बाह्य मॉड्यूल्सचा संपर्क स्थगित / पुढे ढकलतो. येथे लोडिंग किंवा रन टाइम दरम्यान दुवा साधला जातो.

लोडरची व्याख्या

सध्या कार्यान्वित केलेला प्रोग्राम संगणकाच्या मुख्य मेमरीमध्ये असणे आवश्यक आहे. ही जबाबदारी आहे लोडर, ऑपरेटिंग सिस्टममधील प्रोग्राम, लिंकरद्वारे व्युत्पन्न केलेल्या प्रोग्रामची एक्झिक्युटेबल फाइल / मॉड्यूल कार्यान्वित करण्यासाठी मुख्य मेमरीवर लोड करणे. हे मुख्य मेमरीमधील एक्झिक्युटेबल मॉड्यूलला मेमरी स्पेसचे वाटप करते.

लोड करण्याचे तीन प्रकार आहेत.

  • परिपूर्ण लोडिंग
  • रीलोकेटेबल लोडिंग
  • डायनॅमिक रन टाईम लोडिंग

परिपूर्ण लोडिंग: हा दृष्टीकोन प्रोग्रामची एक्झिक्युटेबल फाइल ए मध्ये लोड करतो समान मुख्य मेमरी स्थान प्रत्येक वेळी. पण त्यात काही आहे तोटे जसे प्रोग्रामरला मुख्य मेमरीमध्ये मॉड्यूल्स लोड करण्यासाठी असाइनमेंटची रणनीती माहित असणे आवश्यक आहे. जर प्रोग्राममध्ये काही समाविष्ट आणि डिलीट समाविष्ट करुन प्रोग्राममध्ये बदल केला असेल तर प्रोग्रामची सर्व पत्ते बदलली जावीत.

रीलोकेटेबल लोडिंग: या पध्दतीमध्ये कंपाईलर किंवा असेंबलर करतो वास्तविक मुख्य मेमरी पत्ता तयार करू नका. हे संबंधित पत्ते तयार करते.

डायनॅमिक रन-टाइम लोडिंग: या दृष्टिकोनातून, जेव्हा एक्जीक्यूटेबल मॉड्यूलची सूचना प्रत्यक्षात अंमलात आणली जाते तेव्हा प्रोग्रामचा परिपूर्ण पत्ता तयार केला जातो. हे खूप लवचिक आहे, लोड करण्यायोग्य मॉड्यूल / एक्झिक्युटेबल मॉड्यूल लोड केले जाऊ शकते मुख्य स्मृती कोणत्याही प्रदेश. कार्यकारी प्रोग्राम दरम्यान व्यत्यय आणला जाऊ शकतो आणि डिस्कमध्ये बदलला जाऊ शकतो आणि यावेळी मुख्य मेमरीवर वेगळ्या मुख्य मेमरी पत्त्यावर परत जाऊ शकतो.

  1. दुवा साधणारा आणि लोडर यातील मुख्य फरक म्हणजे दुवा साधणारा व्युत्पन्न करतो कार्यवाही करण्यायोग्य प्रोग्रामची फाइल असताना, लोडर दुवा साधणार्‍याकडून प्राप्त केलेल्या एक्झिक्युटेबल फाइलमध्ये लोड करतो अंमलबजावणीसाठी मुख्य मेमरी.
  2. दुवा साधणारा ऑब्जेक्ट मॉड्यूल असेंब्लीरद्वारे निर्मित प्रोग्रामचा. तथापि, लोडर अंतर्ग्रहण करतो एक्जीक्यूटेबल मॉड्यूल दुवा साधणार्‍याद्वारे व्युत्पन्न
  3. दुवा साधणारा प्रोग्राम तयार करण्यासाठी सर्व ऑब्जेक्ट मॉड्यूल एकत्र करतो एक्जीक्यूटेबल मॉड्यूल हे देखील दुवा साधते ग्रंथालय कार्य ऑब्जेक्ट मॉड्यूल मध्ये अंगभूत लायब्ररी उच्च-स्तरीय प्रोग्रामिंग भाषेचे. दुसरीकडे, लोडर एक्जीक्यूटेबलसाठी जागा वाटप करते मेन मेमरी मधील मॉड्यूल.
  4. लिंकरचे वर्गीकरण केले जाऊ शकते दुवा संपादक, आणि डायनॅमिक लिंकर लोडर म्हणून वर्गीकृत केले जाऊ शकते परिपूर्ण लोडर, पुनर्वसनयोग्य लोडर आणि डायनॅमिक रन-टाइम लोडर.

निष्कर्ष:

लिंकर प्रोग्रामचे ऑब्जेक्ट मॉड्यूल्स एसेम्ब्लरकडून घेते आणि प्रोग्रामचा एक्झिक्युटेबल मॉड्यूल व्युत्पन्न करण्यासाठी त्यांना एकत्र जोडतो. एक्जीक्यूटेबल मॉड्यूल नंतर लोडरद्वारे एक्जीक्यूशनसाठी मुख्य मेमरीमध्ये लोड केले जाते.