DLL (Dynamic Link Library)
DLL là định dạng thư viện chia sẻ của Windows chứa mã và dữ liệu được nhiều chương trình sử dụng đồng thời. DLL cho phép thiết kế phần mềm mô-đun, giảm sử dụng bộ nhớ thông qua chia sẻ mã, và là nền tảng của hệ điều hành Windows và hệ sinh thái ứng dụng.
Loại MIME
application/vnd.microsoft.portable-executable
Loại
Nhị phân
Nén
Không mất dữ liệu
Ưu điểm
- + Code sharing — multiple programs use the same DLL in memory
- + Modular updates — patch a DLL without recompiling applications
- + Reduced disk and memory usage through shared libraries
Nhược điểm
- − DLL Hell — version conflicts between applications
- − Security risk — malicious DLL injection and sideloading attacks
- − Windows-only — Linux uses .so, macOS uses .dylib
Khi nào nên dùng .DLL
DLL được sử dụng bởi các ứng dụng Windows; lập trình viên tạo chúng cho thư viện chia sẻ. Người dùng cuối không nên sửa đổi hoặc xóa DLL hệ thống.
Chi tiết kỹ thuật
Tệp DLL sử dụng định dạng PE (Portable Executable) — cùng cấu trúc với tệp .exe nhưng có cờ chỉ định chúng là thư viện. Chúng xuất hàm và dữ liệu thông qua bảng xuất và được trình nạp Windows tải tại thời điểm chạy.
Lịch sử
Microsoft giới thiệu DLL cùng Windows 1.0 vào năm 1985 để chia sẻ mã giữa các ứng dụng trong môi trường bộ nhớ hạn chế. Định dạng đã phát triển cùng Windows thành định dạng PE (Portable Executable) được sử dụng ngày nay.