Living .NET...

Musings on .NET, and the like - Manoj G [MVP, Connected Systems Developer]

Ponder about it... Are you ready for the 64 bit era?

What do you think is the answer to this question?
I have coded an application using .NET. To move to the 64 bit platform, I need to...

A) Recompile everything on a 64 bit compiler.
B) Won't do anything. (Stick to 32 bit and hope that WOW64 works)
C) Can’t do anything. (Document that we do not support 64 bit platform)
D) Rewrite/revamp everything referring to the Intel IA-64 reference manual.
E) I don’t need to do anything. My code would take the full advantage of a 64 bit platform.

One of the primary purpose of .NET - abstracting the underlying platform (processor architecture) from the applications that target the CLR. The CLR does all the hard work for you. Just sit back and enjoy the managed execution ride. In the the words of Don Box : “The CLR is Omnipotent and Omnipresent“. So,

A) Recompile everything on a 64 bit compiler.
Not required for managed apps. You however have to do that for your x86 applications if you need to take the advantage of 64 bit addressing.

B) Won't do anything. (Stick to 32 bit and hope that WOW64 works)
32 bit apps can run on a 64 bit windows without a recompile. But these run on a layer called WOW64 (Windows on Windows). This layer is similar to NTVDM in Windows 2000 used to run old 16 bit applications.
You will be surprised to know that VS.NET will continue to be a 32 bit application and hence be running on WOW64.

C) Can’t do anything. (Document that we do not support 64 bit platform)
Refer to D)

D) Rewrite/revamp everything referring to the Intel IA-64 reference manual.
Ha Ha..))

E) I don’t need to do anything. My code would take the full advantage of a 64 bit platform.
There are only certain circumstances where your managed code might behave differently and you might need to do some additional work. These are:

  • Complex Floating point operations like Sin(1.e37) .
  • Working with unmanaged pointers in managed code or interopping


Have a look at this MSDN TV presentation on this same topic to get a better idea (This is where I got Sin(1.e37)).
http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20030731CLRCB/manifest.xml

BTW, "Whidbey" comes bundled with a 64 bit runtime.

Posted: Wed, Jan 28 2004 10:59 by Manoj G | with no comments
Filed under:
Leave a Comment

(required) 

(required) 

(optional)

(required)