News for hackers. Stuff that matters.
Re:Why Aren’t More Users More Happy with Our VMs? Part 1 by hyperman1 on Thursday September 06, 2018 @02:16PM (#17928197)
Yes and no: there is another indirection mechanism at work on windows: All results for imports in the import table are at the beginning of the DLL's data segment. So a call to another DLL first has to fetch the data from there, then do an indirect call. In x86 assembler:

  some_import_address    dd some_import ; will be filled in by dll import
      [... lots of unrelated code and  data...]
      call [some_import_address]
a JIT can read the address from code and do directly:

      call some_import
that's one less memory load.

The benefit is that the dynamic linking does not modify the code segment, so there are less private, modified pages mmapped, thus more sharing and less memory usage.

There are no comments on this comment yet.