Video: Diferența Dintre DLL și LIB
2024 Autor: Mildred Bawerman | [email protected]. Modificat ultima dată: 2023-12-16 08:41
DLL vs LIB
O bibliotecă este o colecție de resurse care poate fi utilizată pentru a dezvolta aplicații. O bibliotecă este formată de obicei din subrutine, funcții, clase, valori și tipuri. În timpul procesului de conectare (de obicei realizat de un linker), bibliotecile și executabilele fac trimitere una la cealaltă. Fișierele de bibliotecă sunt împărțite în biblioteci statice și dinamice, în funcție de ora la care subrutinele sunt încărcate în aplicația țintă. În consecință, fișierele LIB sunt biblioteci legate static, iar fișierele DLL sunt biblioteci legate dinamic.
Ce este DLL?
Dynamic Link Library (mai frecvent cunoscută sub numele de DLL) este o implementare de bibliotecă partajată dezvoltată de Microsoft. Folosește extensiile.dll,.ocx sau.drv și sunt utilizate în sistemele de operare Microsoft Windows și OS / 2..dll este utilizat de fișierele DLL obișnuite. Și extensia.ocx este utilizată de bibliotecile care conțin controale ActiveX, iar extensia.drv este utilizată de fișierele de driver de sistem vechi. Formatul de fișier DLL este același cu fișierele Windows EXE (fișiere executabile portabile pe Windows pe 32 de biți / 64 de biți și New Executable pe Windows pe 16 biți). Prin urmare, orice combinație de cod, date și resurse poate fi conținută în fișierele DLL (la fel ca în fișierele EXE). De fapt, fișierele de date cu formatul de fișier DLL sunt denumite DLL resurse. Bibliotecile de pictograme (cu extensia.icl) și fișierele de fonturi (cu extensiile.fon și.fot) sunt exemple de DLL-uri de resurse.
Componentele numite secțiuni alcătuiesc un DLL și fiecare secțiune are propriile sale atribute, cum ar fi numai în citire / scriere și executabil / neexecutabil. Secțiunile de cod sunt executabile, în timp ce secțiunile de date sunt neexecutabile. Secțiunile de cod sunt partajate, iar secțiunile de date sunt private. Asta înseamnă că toate procesele care utilizează DLL vor folosi aceeași copie a codului, în timp ce fiecare proces va avea propria copie a datelor. Biblioteca dinamică principală pentru Windows este kernel32.dll, care conține funcțiile de bază (funcționalitate legată de fișier și memorie) pe Windows. COM (Component Object Model) este extensia DLL la OOP (Object Oriented Programming). DLL-urile convenționale sunt mai ușor de utilizat decât fișierele COM.
Ce este LIB?
Fișierele LIB sunt biblioteci statice (cunoscute și ca biblioteci legate static). Fișierele LIB conțin o colecție de subrutine, funcții externe și variabile. Fișierele LIB sunt rezolvate în timpul compilării (spre deosebire de timpul de execuție). Codul este copiat de fapt în aplicația țintă. Un compilator, linker sau un liant va face această rezoluție și va produce un fișier obiect și un fișier executabil. Acest proces se numește proces de construcție statică.
Care este diferența dintre DLL și LIB?
Bibliotecile LIB pot fi apelate în timpul compilării, dar bibliotecile DLL pot fi apelate numai în timpul rulării. Fișierele LIB sunt semnificativ mai mari decât fișierele DLL. O problemă foarte frecventă cu fișierele DLL este problema versiunii. Acest lucru se întâmplă atunci când codul DLL este modificat și aplicația folosește o versiune greșită a unui DLL. Aceasta nu este o problemă asociată cu fișierele LIB. În ceea ce privește reutilizarea, atunci când scrieți versiuni noi de sisteme sau aplicații complet noi, DLL-urile sunt întotdeauna mai bune decât LIB-urile.
Recomandat:
Diferența Dintre CEM și Diferența Potențială
CEM vs Diferența de potențial (forța electromotivă) sunt utilizate pentru a descrie doi parametri diferiți între două puncte. Termenul „diferență de potențial” este un ge
Diferența Dintre Diferența De Fază și Diferența De Cale
Diferența de fază vs Diferența de cale Diferența de fază și diferența de cale sunt două concepte foarte importante în optică. Aceste fenomene sunt văzute pe probleme de
Diferența Dintre Diferența Potențială și Tensiunea
Diferența de potențial față de tensiune Diferența de potențial și tensiunea sunt doi termeni folosiți în inginerie pentru a descrie diferența de potențial în două puncte
Diferența Dintre Asamblare și DLL
Asamblare vs DLL O bibliotecă este o colecție de resurse care pot fi utilizate pentru a dezvolta aplicații. O bibliotecă este formată de obicei din subrutine, funcții, cl
Diferența Dintre Diferența Cheie Dintre Mineralele Metalice și Cele Nemetalice
Diferența cheie - Minerale metalice vs. minerale nemetalice Un mineral este un constituent solid și anorganic natural, cu o formulă chimică definită și