running an assembly on a non È86 machine

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

Just curious, I'm reading Richter's book an it says that:



"When the compiler/linker creates an executable assembly, the following
6-byte x86 stub

function is emitted into the PE file's .text section:

JMP _CorExeMain /*_CorDllMain for a DLL*/"

and then below :



"Note that the 6-byte stub function is specifically for x86 machines. This
stub doesn't work properly if the CLR

is ported to run on other CPU architectures."



Does it mean that an assembly, compiled under win2000 for example, is not
able to run on another type of processor without recompiling it?
 
Does it mean that an assembly, compiled under win2000 for example, is not
able to run on another type of processor without recompiling it?

No. The assembly loader on that other platform would simply ignore the
stub and look directly for the managed entry point. The stub is only
there to support loading the CLR on older versions of Windows without
having to modify the loader on those versions.




Mattias
 
Back
Top