Razlika Između Montaže I DLL-a

Razlika Između Montaže I DLL-a
Razlika Između Montaže I DLL-a

Video: Razlika Između Montaže I DLL-a

Video: Razlika Između Montaže I DLL-a
Video: Razlike između Kaby Lake i3 i5 i7 serije 2024, Travanj
Anonim

Montaža vs DLL

Knjižnica je zbirka resursa koja se može koristiti za razvoj aplikacija. Knjižnica se obično sastoji od potprograma, funkcija, klasa, vrijednosti i vrsta. Tijekom postupka povezivanja (obično to radi povezivač), knjižnice i izvršne datoteke upućuju se jedna na drugu. DLL datoteke su datoteke knjižnice koje su dinamički povezane. DLL je razvio Microsoft. No, zbog nekih problema s DLL datotekama, Microsoft je smislio format datoteke Assembly (s. NET okvirom). Datoteke za montažu fizički su vrlo slične DLL-ovima, ali imaju mnogo unutarnjih razlika.

Što je DLL?

Knjižnica dinamičkih veza (poznatija kao DLL) je implementacija zajedničke knjižnice koju je razvio Microsoft. Koristi ekstenzije.dll,.ocx ili.drv i koriste se u operacijskim sustavima Microsoft Windows i OS / 2..dll koriste uobičajene DLL datoteke. A.ocx proširenje koriste knjižnice koje sadrže ActiveX kontrole, a.drv proširenje koriste naslijeđene datoteke upravljačkih programa. Format DLL datoteke isti je kao Windows EXE datoteke (prijenosne izvršne datoteke na 32-bitnom / 64-bitnom sustavu Windows i nove izvršne datoteke na 16-bitnom sustavu Windows). Stoga bilo koja kombinacija koda, podataka i resursa može biti sadržana u DLL datotekama (baš kao u EXE datotekama). U stvari, podatkovne datoteke s formatom DLL datoteke nazivaju se resursnim DLL-ovima. Biblioteke ikona (s nastavkom.icl) i datoteke fontova (s nastavcima.fon i.fot) primjeri su DLL-ova resursa.

Komponente koje se nazivaju odjeljci čine DLL, a svaki odjeljak ima svoje atribute kao što je samo za čitanje / zapisljivo i izvršno / neizvršljivo. Odjeljci koda su izvršni, dok se odjeljci podataka ne mogu izvršiti. Odjeljci koda dijele se, a odjeljci podataka su privatni. To znači da će svi procesi koji koriste DLL koristiti istu kopiju koda, dok će svaki proces imati svoju kopiju podataka. Primarna dinamička knjižnica za Windows je kernel32.dll, koja sadrži osnovne funkcije (funkcije povezane s datotekama i memorijom) u sustavu Windows. COM (komponentni objektni model) je proširenje DLL-a na OOP (objektno orijentirano programiranje). Uobičajeni DLL-ovi jednostavniji su za upotrebu od COM datoteka.

Što je skupština?

Datoteke za montažu uveo je Microsoft kako bi riješio nekoliko problema prisutnih s DLL datotekama. Datoteke za montažu uvedene su s Microsoft. NET framework-om. Izvršna logička jedinica funkcionalnosti naziva se Skupština. Skupštine se mogu izvršiti pod. NET CLR (Common Language Runtime). Fizički, sklopovi postoje kao EXE ili DLL datoteke. Ali, oni se interno vrlo razlikuju od Microsoft Win32 DLL-ova. Datoteka sklopa sastoji se od manifesta, metapodataka, MISL-a (Microsoftovog intermedijarnog koda) i drugih resursa. Skup se opisuje sam od sebe. Manifest sadrži informacije poput imena, verzije, kulture, jakog imena, popisa datoteka, vrsta i ovisnosti. MISL kôd se izvršava putem CLR-a (ne može se izravno izvršiti).

Koja je razlika između sklopa i DLL-a?

DLL je dinamički povezana knjižnica. Iako su sklopovi fizički jednaki DLL-ovima, oni se interno vrlo razlikuju. Nije moguće održati dosljednost između skupa DLL-ova, ali CLR može održavati dosljednost između skupa sklopova, jer se sklopovi opisuju sami (sadrže popis ovisnosti interno). Za razliku od DLL-ova, podaci o verzijama se provode za sklopove (CLR). Razmještanje usporedo (različite aplikacije koje koriste različite verzije) moguće je sa sklopovima.

Preporučeno: