Starpība Starp Asambleju Un DLL

Starpība Starp Asambleju Un DLL
Starpība Starp Asambleju Un DLL

Video: Starpība Starp Asambleju Un DLL

Video: Starpība Starp Asambleju Un DLL
Video: МОЙ ТОП-10 ПРОДУКТОВ ИЗ Каталога Oriflame №5-2021 2024, Decembris
Anonim

Montāža vs DLL

Bibliotēka ir resursu kolekcija, ko var izmantot lietojumprogrammu izstrādei. Bibliotēku parasti veido apakšprogrammas, funkcijas, klases, vērtības un veidi. Saistīšanas procesa laikā (parasti to veic sasaistītājs) bibliotēkas un izpildāmie faili atsaucas viens uz otru. DLL faili ir bibliotēkas faili, kas ir dinamiski saistīti. DLL izstrādāja Microsoft. Bet dažu problēmu dēļ, kas saistītas ar DLL failiem, Microsoft nāca klajā ar Assembly failu formātu (ar. NET ietvaru). Asamblejas faili ir fiziski ļoti līdzīgi DLL, taču tiem ir daudz iekšēju atšķirību.

Kas ir DLL?

Dynamic Link Library (plašāk pazīstama kā DLL) ir Microsoft izstrādāta koplietojamas bibliotēkas ieviešana. Tas izmanto paplašinājumus.dll,.ocx vai.drv, un tos izmanto Microsoft Windows un OS / 2 operētājsistēmās..dll izmanto parastie DLL faili.. Ocx paplašinājumu izmanto bibliotēkas, kurās ir ActiveX vadīklas, un.drv paplašinājumu izmanto mantotie sistēmas draiveru faili. DLL faila formāts ir tāds pats kā Windows EXE failiem (Portable Executable files on 32-bit / 64-bit Windows, and New Executable on 16bit Windows). Tāpēc jebkura koda, datu un resursu kombinācija var būt ietverta DLL failos (tāpat kā EXE failos). Faktiski datu failus ar DLL faila formātu sauc par resursu DLL. Ikonu bibliotēkas (ar paplašinājumu.icl) un fontu faili (ar paplašinājumiem.fon un.fot) ir resursu DLL piemēri.

Komponenti, kurus sauc par sadaļām, veido DLL, un katrai sadaļai ir savi atribūti, piemēram, tikai lasāms / rakstāms un izpildāms / neizpildāms. Kodu sadaļas ir izpildāmas, bet datu sadaļas nav izpildāmas. Kodu sadaļas tiek koplietotas, un datu sadaļas ir privātas. Tas nozīmē, ka visos procesos, izmantojot DLL, tiks izmantota tā pati koda kopija, savukārt katram procesam būs sava datu kopija. Galvenā Windows dinamiskā bibliotēka ir kernel32.dll, kas satur Windows pamata funkcijas (ar failiem un atmiņu saistītās funkcionalitātes). COM (Component Object Model) ir DLL paplašinājums līdz OOP (Object Oriented Programming). Parastos DLL ir vieglāk izmantot nekā COM failus.

Kas ir asambleja?

Asamblejas failus Microsoft ieviesa, lai atrisinātu vairākas ar DLL failiem saistītās problēmas. Montāžas faili tika ieviesti ar Microsoft. NET ietvaru. Izpildāmo loģisko funkcionalitātes vienību sauc par asambleju. Sapulces var izpildīt. NET CLR (Common Language Runtime). Fiziski mezgli pastāv kā EXE vai DLL faili. Bet tie iekšēji ļoti atšķiras no Microsoft Win32 DLL. Asamblejas failu veido manifests, metadati, MISL (Microsoft Intermediate Language kods) un citi resursi. Asambleja sevi apraksta. Manifestā ir tāda informācija kā nosaukums, versija, kultūra, nosaukums, failu saraksts, veidi un atkarības. MISL kods tiek izpildīts, izmantojot CLR (to nevar tieši izpildīt).

Kāda ir atšķirība starp asambleju un DLL?

DLL ir dinamiski saistīta bibliotēka. Lai gan asamblejas fiziski ir vienādas ar DLL, tās iekšēji ir ļoti atšķirīgas. Starp DLL kopu nav iespējams uzturēt konsekvenci, taču CLR var saglabāt konsekvenci starp mezglu kopumu, jo mezgli apraksta sevi (tajos iekšēji ir atkarību saraksts). Atšķirībā no DLL, versiju informācija tiek ieviesta mezgliem (CLR). Kopā izvietošana (dažādas lietojumprogrammas, izmantojot dažādas versijas) ir iespējama ar mezgliem.

Ieteicams: