DLL आणि LIB दरम्यान फरक

Anonim

डीएलएल विरुद्ध LIB

लायब्ररीद्वारे बनविले जाते. लायब्ररी सहसा उपनियम, कार्ये, वर्ग, मूल्य आणि प्रकारांपासून तयार केली जाते. लिंकिंग प्रक्रियेदरम्यान (सहसा एका लिंकरद्वारे केले जाणारे), लायब्ररी आणि एक्झिक्यूटेबल एकमेकांना संदर्भ देतात लायब्ररी फायली स्थीर आणि डायनॅमिक लायब्ररीमध्ये विभागल्या जातात ज्यानुसार वेळोवेळी लक्ष्य अनुप्रयोगावर लोड केले जाते. त्यानुसार, LIB फाइल्स स्टॅटिकली लिंक्ड लायब्ररीज आहेत आणि डीएलएल फाइल्स गतिकरित्या लायब्ररीशी संलग्न आहेत.

DLL म्हणजे काय?

डायनॅमिक लिंक लायब्ररी (अधिक सामान्यपणे डीएलएल म्हणून ओळखले जाते) म्हणजे शेअर केलेली लायब्ररी अंमलबजावणी Microsoft ने विकसित केली आहे. हे वापरते. dll,. ocx किंवा. drv विस्तार आणि ते मायक्रोसॉफ्ट विंडोज आणि ओएस / 2 कार्य प्रणाली मध्ये वापरले जातात … डीएलएल नियमित डीएलएल फाईल्स द्वारे वापरली जाते. आणि ocx विस्तारीत लाइब्ररिमध्ये ज्यामध्ये ActiveX नियंत्रणे आणि वापरले जातात. drv एक्सटेंशन लीगेसी सिस्टम ड्राइव्हर फाइल्सद्वारे वापरली जाते. DLL फाइल स्वरूप Windows EXE फाइल्स प्रमाणेच आहे (32-बिट / 64-bit Windows वर पोर्टेबल एक्झिक्युटेबल फाइल्स आणि 16-बिट विंडोजवर नवीन एक्झिक्यूटेबल). म्हणूनच, कोड, डेटा आणि संसाधनांचे कोणतेही संयोजन DLL फायलींत (फक्त EXE फायलींमध्ये) समाविष्ट केले जाऊ शकते. खरेतर, डीएलएल फाइल स्वरूपातील डेटा फाइल्सला स्त्रोत DLL म्हणतात. चिन्ह लायब्ररी (सह. Icl विस्तार) आणि फाँट फाइल्स (सह. Fon आणि. Fot विस्तार) स्त्रोत DLL ची उदाहरणे आहेत.

घटक म्हणतात घटक एक DLL अप करा आणि प्रत्येक विभागात स्वतःचे गुणधर्म आहे जसे वाचन केवळ / लेखन करता येण्याजोगा आणि कार्यान्वीत करता येण्याजोगा / नॉन एक्झिक्युटेबल. कोड विभाग निष्पादन योग्य आहेत, तर डेटा विभागात निष्पादन योग्य नाही. कोड विभाग सामायिक आहेत आणि डेटा विभाग खासगी आहे. याचा अर्थ डीएलएल वापरून सर्व प्रक्रिया कोडची समान कॉपी वापरेल, तर प्रत्येक प्रोसेसला डेटाची स्वत: ची प्रत असेल. Windows साठी प्राथमिक डायनॅमिक लायब्ररी kernel32 आहे. dll, ज्यात विंडोजवर मूलभूत कार्य (फाईल आणि मेमरि संबंधित कार्यक्षमता) समाविष्ट आहे. COM (घटक ऑब्जेक्ट मॉडल) डीओएलचे विस्तार OOP (ऑब्जेक्ट ओरिएन्टेड प्रोग्रामिंग) मध्ये आहे. कॉमन फाइलपेक्षा पारंपरिक DLLs वापरणे सोपे आहे.

LIB काय आहे?

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

DLL आणि LIB मध्ये फरक काय आहे?

लिब लायब्ररी कंपाईल वेळी कॉल करू शकतात, परंतु DLL लायब्ररी फक्त रन-टाइम दरम्यान कॉल करता येतात.LIB फायली DLL फायलींपेक्षा महत्वपूर्ण आहेत. DLL फायलींसमक्ष एक अतिशय सामान्य समस्या म्हणजे आवृत्तीकरण समस्या. जेव्हा DLL चे कोड बदलले जाते तेव्हा हे घडते आणि अनुप्रयोग DLL ची एक चूक आवृत्ती वापरते. ही LIB फायलींशी संबंधित समस्या नाही पुन: प्रयोज्यतेच्या संदर्भात, नवीन प्रणाल्या किंवा पूर्णपणे नवीन अनुप्रयोग लिहित असताना, DLL नेहमी LIBs पेक्षा चांगले आहेत.