Half of Windows 7 Machines Running 64-Bit Version 401
nk497 writes "Microsoft has said that nearly half of machines running Windows 7 are using the 64-bit version, up from just 11% of PCs running Vista. The 32-bit version is limited to 4GB RAM, while the 64-bit version allows 192GB, as well as added security and virtualization capabilities. While Microsoft is pushing 64-bit as a way to gain performance in the OS, it earlier this year advised users to install the 32-bit version of Office 2010, 'because currently many common add-ins for Office will not function in the 64-bit edition.'"
Re:32 at work, 64 at home (Score:4, Informative)
Re:Why, oh why? (Score:4, Informative)
Re:Why, oh why? (Score:5, Informative)
Is there a good technical reason for 32-bit Windows 7 not supporting more than 4 GB of RAM, period? PAE has been in use for a long time now, and while you can't have a single process that exceeds 3 GB in Linux (tunable, I'm given to understand, can also be a 2 GB per process limit in some installations), you can definitely go past 4 GB of total system memory.
PAE can break [technet.com] badly written drivers, which are more common on desktop versions of the OS than they are on server versions.
Re:Why, oh why? (Score:3, Informative)
No, because according to MS, PAE is available for Windows 7 32 bit:
http://msdn.microsoft.com/en-us/library/aa366796(VS.85).aspx [microsoft.com]
Re:Why, oh why? (Score:4, Informative)
For the 64 gig support on a 32 bit machine you often need special servers with chipsets that bank the memory appropriately and special system drivers (Serverworks is/was famous for this) on top of that - its really only something you need to do if you were running Metaframe (I think its called XenApp server?) because most Windows apps won't go past 2 gigs of allocation anyhow.
My understand is the reason for this is just special hardware/driver support - many consumer motherboards for instance map real world pci resources in the 4 gig address range. Its probably easier on quality assurance to only support what they do on server OS's.
64 bit system doesn't have any of these limitations and you can address all the memory in one chunk without any work-arounds - hence the wider support for more ram there.
Re:limits (Score:2, Informative)
They limit up to what they can test. If they had a desktop machine with Windows 7 Ultimate running with 256 TB of Ram, it would be the new limit.
Re:Artificial limits R US (tm) (Score:4, Informative)
Because then Windows Server wouldn't look very impressive.
Re:Why 64-bit is ready now (Score:2, Informative)
Whilst it's great for RAM purposes, and thus demanding things like gaming which will soon require 6GB or more for popular titles there are drawbacks. A file in 64 bit takes up more memory, mainly due to alignment padding. Thus one needs a fairly good set of chips to cache efficiently in future years as the levels of memory inevitably increase. However with the amount of progress going on I daresay all but the most budget hardware solutions will tackle drawbacks very well.
The one thing people keep forgetting is how register-starved the 32-bit x86 is compared to the 64-bit. Going 64-bit on the x86 has performance benefits in addition to the large memory space. Another benefit is an explicit availability of fast vector instruction sets such as SSE(1,2,3+), which are not guaranteed to be on the 32-bit x86 CPUs.
Only half? (Score:5, Informative)
Everything I've ever thrown at 64 bit windows runs just fine, and usually somewhat smoother than 32 bit. Even some really old stuff. The only software I ever found that don't run on 64-bit are some really old dos games and utilities, but then they didn't even run under 32-bit XP either.
It boggles my mind why so many people with 64-bit hardware would still install a 32-bit version of windows. I wonder how much of this is actually ignorance and/or just force of habit rather than actual knowledge that they have something that actually doesn't work under 64 bit.
Re:Statistics, statistics (Score:4, Informative)
Re:Why, oh why? (Score:5, Informative)
You try accessing more than 2GB of RAM (or 3GB of RAM with the /3GB switch in boot.ini) in a single process. What you end up having to do is (firstly) your own memory management (Which sucks) and having to manage multiple 2GB "windows" so if you want to read data you have to swap in an out of these "windows" to be able to read them as the kernel itself is only 32bit and can only directly address 4GB of RAM.
So you end up coding in what is known in Windows as "Addressable Window Extensions" and they are a pain in the arse. Doing this on SQL server and Oracle was basically a necessity, and when PAE was first thought of, this is exactly what was being thought about, database systems. They have been able to use PAE in VMware etc and other places as they give the upper and lower limits for memory address directly to the operating system (Windows, Linux whatever else is actually running in the VM) and then they address via the hypervisor that memory address space, meaning that the hypervisor doesn't have to do a lot of memory management (Certainly nothing like protected memory)
So in effect, the biggest reason for 32bit Windows 7 not supporting more than 4GB of RAM is because the kernel itself is a 32bit app and doesn't have the 64bit address space to directly address more than 4GB of RAM itself.
In the long term it's just too hard, and it's easier to code for 64bit than to deal with what are effectively kludges to make this work.
If you need to know more about this, I would suggest Mark Russinovich's Windows Internals book.
Re:Artificial limits R US (tm) (Score:2, Informative)
http://en.wikipedia.org/wiki/64-bit#Current_64-bit_microprocessor_architectures
The x64 has a 48 bit limitation on the virtual address space.
Re:Statistics, statistics (Score:1, Informative)
Or they will implement something after the axe falls, but alpha or at best beta quality. When users call in griping how their product doesn't work, the company will say it was MS who did this. Vista got a lot of flack from lazy development houses because they would not bother making their stuff UAC compatible, or even writing solid drivers for Vista's driver model, blaming any crashes and blue screens on MS.
It is funny how on every other platform but Windows, should a major shift happen, devs gripe, but they deal with it. On Windows, just getting companies to separate user/superuser code causes a major trainwreck because the software companies (or the offshore code sweatshops) are too lazy to deal with it.
Re:Only half? (Score:1, Informative)
While I'm sure most of the Atoms out now only support 32-bit I doubt there are many new ones released with that limitation since the second generation atoms released late last year all support 64-bit. Some of the older models (Atom 200, Atom 300 and the higher end Atom Z) also support it.
Re:Statistics, statistics (Score:3, Informative)
The desktop/taskbar will occasionally freeze for no reason. That's my only major annoyance.
The driver situation is better than it used to be. Nvidia's drivers have come a long way- up until last year, I couldn't enable antialiasing while multiple monitors were in use (now I can). Coworkers using SLI still have issues, but then again, even 32-bit drivers aren't perfect at SLI. I no longer get blue screen crashes when hot-swapping USB-drives.
Still doesn't hold a candle to Win7-64 though- it seems more stable than 32-bit XP, at least on the 2 systems that have been upgraded from XP to 7 at my home.
Not sure why they do that (Score:5, Informative)
But yes, it is an artificial limit. Their lower end products are limited on purpose. For example Home Premium is limited to 16GB which is as much as you are likely to see in a home system, but pros might want more. Hence 7 pro (and ultimate) has a higher limit.
As to why they choose to limit it to 192GB? No idea.
The actual limit for The Windows NT 6.1 setup is 2TB. I don't remember the particular technical reasons for that, but they are there. There is no reason to process addressing for the full 64-bits of memory when no system exists that can take it. You'll also find that CPUs have memory limits lower than the 64-bit cap. They don't have all 64 address lines because it is not needed. I don't know what it is currently, but it is still below 64-bit. Again, no system could possibly have that much (never mind space, a memory controller couldn't handle the electrical load) so no sense in adding hardware you don't need.
Thus are ARE real limits below the actual 64-bit space but you are correct, 192GB is not one of them. That is an artificial limit and I don't know why they chose it. Doesn't really matter, I do not see people using more than that in a desktop system (144GB is the most I've seen workstation hardware support) and they can always up the limit.
However you are correct that it seems odd.
Re:A Mac seems to run everything just fine (Score:3, Informative)
To be fair, OS X hasn't really fully transitioned people to 64-bits. Yes, the OS supports it, but the 64-bit kernel isn't even enabled by default. You have to hold down the 6 and the 4 keys while booting to tell it to boot into a 64-bit kernel.
Apple most likely did this because of concerns of drivers not being compatible, and wanting to minimize the number of crashes for people upgrading OS X.
Re:A Mac seems to run everything just fine (Score:3, Informative)
Re:Statistics, statistics (Score:3, Informative)
I thought most people say XP-64 is crap?
Most of the people who say that aren't running it and have never actually run it, but could swear they heard it was crap from someone that swears they uninstalled it, like, after 5 minutes because it was crap.
I've been running XP 64-bit for a couple of years now. IIRC it was originally a free D/L from MS, now it's really only available through their MSDN (for free if someone's paying for your MSDN subscription, like work). It's awesome. Easily, without a shadow of a doubt the best OS to come from Redmond. And I used to be a die-hard Windows 2000 XP Pro lover. Still have much love for the 2k, but damn, XP64 is just solid. No locks, no hardware issues.
Now, that said, I have all the right XP64 drivers, I didn't have to hack any 2003 drivers (as XP64 is technically the 2003 codebase). Everything just works(TM) and YMMV. That said, I have had NO problems finding drivers. The big, huge, SCARY thing everyone was warning me about, how I wouldn't have sound (wrong) or video (wrong) or any of my peripherals (wacom cintiq works fine, external audio works fine, all USB stuff work fine as they should, my 3Ware 16-drive RAID card? WORKS FINE.) The only piece of hardware I have had any problem with is my Nikon CoolScan 5K, but that's not just with XP-64, that's any 64-bit operating system, including 2003, Vista, and (yep) Windows 7.
The nice thing is I get all the 64-bit benefits (12 gigs of RAM makes Photoshop my bitch) all the XP benefits like DirectX 10 and updated service packs (it's recent enough that MS is still supporting it... for the time-being, anyway), wireless networking Just Works(TM), plus no Widget-interface fisher-price crap, no always-running, always-scanning crap, no treat-you-like-an-intruder-for-your-own-good security crap... everything runs on it, and it's fast (faster than Win7, anyway).