On Friday, 17 August 2012 at 17:42:24 UTC, Michel Fortin wrote:
On 2012-08-17 14:00:42 +0000, "Paulo Pinto"
<[email protected]> said:
On Friday, 17 August 2012 at 13:42:27 UTC, Michel Fortin wrote:
On 2012-08-17 12:36:56 +0000, "R Grocott" [..] (Windows does
not really have a dynamic linker).
Why? What is it lacking?
From my experience, I don't have much to complain about it.
Just wanting to know, not trolling.
Quote from <http://xenophilia.org/winvunix.html>:
In Unix, a shared object (.so) file contains code to be used
by the program, and also the names of functions and data that
it expects to find in the program. When the file is joined to
the program, all references to those functions and data in the
file's code are changed to point to the actual locations in
the program where the functions and data are placed in memory.
This is basically a link operation.
In Windows, a dynamic-link library (.dll) file has no dangling
references. Instead, an access to functions or data goes
through a lookup table. So the DLL code does not have to be
fixed up at runtime to refer to the program's memory; instead,
the code already uses the DLL's lookup table, and the lookup
table is modified at runtime to point to the functions and
data.
For this just looks at two different ways to implement dynamic
loading.
Having Windows experience since the Windows 3.1 days, alongside
with
many other OS besides the typical Linux fan, I always find sad
this vision
of Linux == UNIX, right, Windows wrong.
The author also recognises that Aix, which is UNIX, also has
strange
dynamic loading rules, according to his understanding what
dynamic loading
is.
--
Paulo