| Paul Pluzhnikov 2006-07-20, 1:23 pm |
| davids@webmaster.com writes:
> On Windows, DLLs and executables are almost identical....
>
> If you think about it, there's really no special reason they need to be
> different. They both need to be mapped and executed. They both contain
> functions that need to be exported (otherwise, how could a DLL call a
> function in the executable that called it?).
A DLL could easily call non-exported function from the main
executable -- all DLL needs is its address (which is often passed
as a "callback" parameter).
> It just so happens that on most UNIXes, they are very different.
With recent Linux "-pie" executables and "prelinked" DSOs, the
difference between ET_EXEC and ET_DYN is almost nil.
Cheers,
--
In order to understand recursion you must first understand recursion.
Remove /-nsp/ for email.
|