Perbedaan Antara Majelis dan DLL

Anonim

Majelis vs DLL

Perpustakaan adalah kumpulan sumber daya yang dapat digunakan untuk mengembangkan aplikasi. Perpustakaan biasanya terdiri dari subrutin, fungsi, kelas, nilai dan tipe. Selama proses penautan (biasanya dilakukan oleh penghubung), perpustakaan dan arsip membuat referensi satu sama lain. File DLL adalah file library yang terhubung secara dinamis. DLL dikembangkan oleh Microsoft. Namun karena beberapa masalah hadir dengan file DLL, Microsoft menghasilkan format file Assembly (dengan framework.NET). File perakitan sangat mirip dengan DLL secara fisik, namun memiliki banyak perbedaan internal.

Apa itu DLL?

Dynamic Link Library (lebih dikenal sebagai DLL) adalah implementasi shared library yang dikembangkan oleh Microsoft. Menggunakan dll,. ocx atau ekstensi drv dan mereka digunakan di sistem operasi Microsoft Windows dan OS / 2 … dll digunakan oleh file DLL biasa. Dan. Ekstensi ocx digunakan oleh pustaka yang berisi kontrol ActiveX dan. Ekstensi drv digunakan oleh file driver sistem warisan. Format file DLL sama dengan file Windows EXE (file executable Portable pada Windows 32-bit / 64-bit, dan New Executable on 16bit Windows). Oleh karena itu, kombinasi kode, data dan sumber daya dapat terkandung dalam file DLL (seperti file EXE). Sebagai bahan fakta, file data dengan format file DLL disebut DLL sumber. Ikon pustaka (dengan ekstensi icl) dan file font (dengan ekstensi fon dan. Fot) adalah contoh sumber DLL.

Komponen yang disebut bagian membentuk DLL dan setiap bagian memiliki atribut tersendiri seperti read-only / writable and executable / non executable. Bagian kode dapat dieksekusi, sedangkan bagian data tidak dapat dieksekusi. Bagian kode dibagi dan bagian data bersifat pribadi. Itu berarti semua proses menggunakan DLL akan menggunakan salinan kode yang sama, sementara setiap proses akan memiliki salinan data sendiri. Perpustakaan dinamis utama untuk Windows adalah kernel32. dll, yang berisi fungsi dasar (file dan memori fungsi terkait) pada Windows. COM (Component Object Model) adalah perpanjangan dari DLL ke OOP (Object Oriented Programming). DLL konvensional lebih mudah digunakan daripada file COM.

Apa itu Majelis?

Berkas perakitan diperkenalkan oleh Microsoft untuk menyelesaikan beberapa masalah yang ada dengan file DLL. Berkas perakitan diperkenalkan dengan Microsoft. NET framework. Unit fungsional logis yang dapat dieksekusi disebut Assembly. Sidang dapat dieksekusi di bawah. NET CLR (Common Language Runtime). Secara fisik, rakitan ada sebagai file EXE atau DLL. Tapi, mereka sangat berbeda dengan Microsoft Win32 DLL, secara internal. File perakitan terdiri dari manifes, metadata, MISL (kode Microsoft Intermediate Language) dan sumber lainnya.Sebuah majelis menggambarkan dirinya sendiri. Manifes berisi informasi seperti nama, versi, budaya, nama kuat, daftar file, jenis dan dependensi. Kode MISL dijalankan melalui CLR (tidak bisa langsung dieksekusi).

Apa Perbedaan antara Majelis dan DLL?

DLL adalah perpustakaan yang terhubung secara dinamis. Meskipun, majelis secara fisik sama dengan DLL, keduanya sangat berbeda secara internal. Hal ini tidak mungkin untuk menjaga konsistensi antara satu set DLL, namun CLR dapat menjaga konsistensi antara serangkaian majelis, karena rakitan menggambarkan sendiri (ini berisi daftar dependensi secara internal). Tidak seperti DLL, informasi versi diberlakukan untuk majelis (oleh CLR). Penyebaran sisi-demi-sisi (aplikasi yang berbeda menggunakan versi yang berbeda) dimungkinkan dengan majelis.