Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are the differences between .NET in 32 or 64 bit systems?

Imagine a pure .NET application which do not uses COM components nor PInvoke. Does it matters if the target system is 32 or 64 bits?

like image 233
Jader Dias Avatar asked Dec 09 '22 20:12

Jader Dias


1 Answers

If the application is targetting AnyCPU, the runtime behavior will be different, in particular, the memory usage and limitations.

On 64bit, there will not be the same 32bit memory limitations (2GB max memory theoretical, but 1.2-1.6 in practice). However, all object references are twice as large, so 64bit systems will use more memory.

Also, 64bit systems often have extra registers, etc, so sometimes performance can improve slightly. This is platform specific, though.

If the application is targetting x86, it will run under WoW64 and act nearly identically to how it will act in 32bit systems.

like image 116
Reed Copsey Avatar answered Jan 21 '23 00:01

Reed Copsey