64-bit - Why Should I Care?Įveryone once in a while you'll need to call from managed code into unmanaged and you'll need to give some thought to 64-bit vs. Let me switch it to x86 and look at Task Manager and we see my app is now 32-bit.Ĭool, so.
But, to repeat (I'll do it a few times, so forgive me) the most important take away, from MSDN: In my case, I am running 64-bit and it was set to Any CPU so it was 64-bit at runtime. It's the JIT that makes the decision at the last minute. Now, if I right click on the Properties dialog for this Project in Visual Studio I can select the Platform Target from the Build Tab:īy default, the Platform Target is "Any CPU." Remember that our C# or VB compiles to IL, and that IL is basically processor agnostic. This is important to note: It doesn't matter if you have an AMD or an Intel processor, if you're 64-bit you are using the AMD64 instruction set. That 64-bit process is also having its code JIT compiled to use not the x86 instruction set we're used to, but the AMD64 instruction set. It's a 64-bit process and it can access a ridiculous amount of memory (if you've got it.like 16TB, although I suspect the GC would be freaking out at that point.) However, my ConsoleApplication1.exe doesn't have that. Notice that a bunch of processes have *32 by their names, including devenv.exe? Those are all 32-bit processes. If I File|New Project and make a console app, and run it, this is what I'll see in the Task Manager: Some of the things that are 64-bit specific are:įor example, I have a C:\Windows\Microsoft.NET\Framework and a C:\Windows\Microsoft.NET\Framework64 folder. NET on a 64-bit machine the package is bigger because you're getting BOTH 32-bit and 64-bit versions of stuff. If you care about details, when you install. Visual Studio 2008 installs and runs just fine. When I'm developing I usually don't sweat any of this. I run VS2008 all day on 圆4 machines writing ASP.NET apps, WPF apps, and Console apps and don't give it a thought. The first question developer ask me when I'm pushing 64-bit is "Can I still run Visual Studio the same? Can I make apps that run everywhere?" Yes, totally. I also have buttloads of RAM which is nice. I promote 64-bit a lot because I personally think my 64-bit machine is snappier and more stable. WARNING: This is obscure and you probably don't care. "If you have 100% type safe managed code then you really can just copy it to the 64-bit platform and run it successfully under the 64-bit CLR." Write managed code, compile, and it'll work everywhere. Writing managed code is a pretty good way to not have to worry about any x86 (32-bit) vs.
I'm running Vista 64 on my quad-proc machine with 8 gigs of RAM, and Windows 7 Beta 64-bit on my laptop with 4 gigs. I'm running 64-bit operating systems on every machine I have that is capable.