2012-04-03 18 views
7

मुझे पता है कि गतिशील लोडर क्या करता है। यह रन टाइम पर एप्लिकेशन द्वारा अनुरोध किए जाने वाले कार्यक्रमों को लोड करता है और इस प्रकार मेमोरी पैर प्रिंट को कम करता है। लेकिन मुझे वास्तव में यह गतिशील लिंकर नहीं मिल रहा है? और इसके फायदे क्या हैं? मैंने कई ऑनलाइन सामान पढ़े लेकिन वे सार शब्दों में बात कर रहे हैं।गतिशील लिंकर और गतिशील लोडर के बीच क्या अंतर है?

क्या कोई मुझे कुछ सरल उदाहरणों के साथ समझा सकता है?

+0

http://stackoverflow.com/questions/311882/what-do-statically-linked-and- गतिशील- linked-mean/311889#311889 – Vijay

+0

@ पीटर धन्यवाद! यह मदद करता है। –

उत्तर

6

वे वास्तव में एक ही चीज़ के लिए दो शब्द हैं।

यूनिक्स दुनिया में, गतिशील लिंकर शब्द ऑपरेटिंग सिस्टम के घटक को इंगित करने के लिए प्रयोग किया जाता है जो रनटाइम पर गतिशील पुस्तकालयों को जोड़ता है, जबकि अधिकांश अन्य प्रणालियों पर लोडर प्रोग्रामिंग को गतिशील पुस्तकालयों को लोड और लिंक करता है।

क्योंकि यूनिक्स-जैसी प्रणालियों के तहत पुस्तकालयों को लोड करना एक अलग घटक (ld.so अक्सर) द्वारा किया जाता है, एक गतिशील लिंकर प्रोग्राम लोडर से कुछ अलग माना जाता है। कंप्रेसर आम तौर पर ld.so लोड करने के लिए निष्पादन योग्य की शुरुआत में कुछ स्टब कोड डालते हैं, और ld.somain से पहले शेष निर्भर पुस्तकालयों को लोड करना जारी रखेंगे। जबकि प्रोग्राम लोडिंग कर्नेलस्पेस में किया जाता है, डायनामिक लाइब्रेरी को जोड़ने से आमतौर पर उपयोगकर्ता स्पेस में किया जाता है।

यह विंडोज के विपरीत है, जहां गतिशील पुस्तकालयों को लोड और लिंक करने वाला दोनों प्रोग्राम कर्नेल मोड में किया जाता है।