-2

I know both are executable up to my knowledge... But what is the difference between a .dll file and .exe file, and what is the difference between a .so file and a .sh/.py/.bin file?

thavan
  • 2,323
  • 22
  • 32

1 Answers1

0

.dll - Dynamic Linked Library. Its the Microsoft's implementation of shared library which are loaded during program initialization or during execution. Unlike statically linked library it doesn't bloat the code but a single memory image can be shared across multiple different process image. These are not-standalone but requires to be called from an executable. As its a library there can be multiple entry points contrasting to an executable.

.exe - A Microsoft implementation of a standalone executable. An executable can be directly loaded as a process by a loader into the memory. There is one and only one entry point which is executed as the first thread of execution.

.so - Shared Object. On *nix systems, shared libraries (like dll) are implemented as shared objects.

Abhijit
  • 59,056
  • 16
  • 119
  • 195