Just installed 64-bit W7, coming from 32-bit Vista questions

oChaos Nine

Distinguished
May 24, 2011
16
0
18,510
Do I need to reinstall my drivers that came with my mobo and processor with the 64 bit ones or does it automatically recognize? In Windows Experience it says 64-bit but some of my programs I'm redownloading and installing it's installing to an x86 directory. Just double checking that it's taking advantage of 64-bit.
 
Solution
Again, I think there's some confusion as to what is and is not a driver.

Let's take the "ATI Technologies" folder in your "Program Files (x86)" folder as an example. When you install the software for your video card, you're actually installing two different kinds of programs:

1) The hardware drivers, which live in the C:\Windows\System32\Drivers folder. These are internal programs that act as an intermediary between Windows and the hardware. These are the programs that must be built using 64-bit code in order to be used with a 64-bit OS. There is no user interface for these programs - no way for you to directly talk to them or to see what they're doing.

2) The user interface programs. These programs let you display and...

skaz

Distinguished
Yes update your drivers to 64 bit compatible drivers.

Sounds like the programs you are re downloading are 32 bit programs. That's why they are installing to the x86 directory.

32 bit programs will not take advantage of a 64 bit system. You would need 64 bit programs to take advantage of your 64 bit OS.

Then why use 64 bit? Well the simple answer is because now your entire system can utilize more then 3-4 gigabytes of RAM. So instead of your 32 bit programs "fighting" over your 3 GB of RAM it can now take its share and there will still be plenty of RAM left over for the next program.
 

oChaos Nine

Distinguished
May 24, 2011
16
0
18,510

When I check in device manager all is good and all my drivers are up to date. Will 32-bit mobo and processor drivers etc. work on 32-bit even though the operating system is 64? Also will updating those drivers reset bios settings for overclocks etc?
 
32-bit application programs will install into the x86 program files directory. This is perfectly normal and is nothing to be concerned about. There are very few 64-bit programs available yet, and in fact most application programs don't need to access more than 2GB of memory and so there wouldn't be any benefit from making them 64-bit.

The advantage of using a 64-bit OS isn't JUST that you can use 64-bit programs, it's also that you can use 4GB or more of memory. Even if you run nothing but 32-bit programs, having the OS able to use 4GB or more of memory means you can have a lot more programs running without having to swap them to and from the pagefile. It also means there's a lot more memory available for caching disk reads.

You need 64-bit drivers for hardware-level devices, but those kinds of drivers are not installed in the "Program Files" folders. Application programs that are installed in "Program Files" and "Program Files (x86)" can be 32- or 64-bit. And some logical drivers that don't directly access the hardware can also be 32-bit.

When you talk about "32-bit mobo and processor drivers" I suspect you're not talking about the actual drivers per se but rather the user interface programs that let you see and change settings. Theses are actually standard application programs that run just like any other program, the difference is that they communicate with the real hardware drivers on the back end in order to retrieve and change the system settings.
 
I think a bigger bonus, although not visible of using NT x64 over NT x86 is the NT kernel itself. With each successive version of NT Microsoft has had to maintain compatibility with the older versions. This creates some pretty big issues when you want to make significant changes to the memory subsystem. When MS made the NT x64 kernel, starting with Windows Server 2003 x64, they radically changed large portions of the code. Going from 32 bit to 64 bit at the OS level requires you to rebuild most of the kernel, this includes drivers. During this rebuilding the MS developers threw out large portions of legacy code and revamped how the kernel handles memory access. The newer 64-bit kernel doesn't need to provide the same loopholes and hooks to 64-bit programs that the 32-bit kernel provided to 32-bit programs. New programming target (NT 64) means new rules on how to access OS level functions, and this resulted in them closing lots of older security holes and potential problems. To provide compatibility with 32-bit programs the NT 64-bit kernel uses a form of environmental emulation named Windows on Windows (WoW). It creates a virtual memory address space, and a virtual registry for any 32-bit program and locks that program inside that space. Thus a 32-bit program can never directly access memory inside a 64-bit program, including the kernel itself.

Needless to say, the NT64 kernel is light years ahead of the NT x86 kernel both in stability and security. The only way I've ever been able to bring down a NT 64 system was by using badly written HW drivers. And honestly there isn't much you can do about that, HW drivers operate in kernel mode and can't really be protected against (although Windows does try).
 

oChaos Nine

Distinguished
May 24, 2011
16
0
18,510


Still not getting an answer that I understand. A month ago I built a new PC (new mobo, processor, PSU, GPU) and put my old copy of Vista 32bit on the HD. When I first booted the PC I installed the drivers that came with mobo and CPU so "if" they're was a choice of what drivers to install I obviously installed the 32bit ones. Last night I installed Windows 7 Home Premium 64-bit.

My question is, do I need to put those discs back in and check to see if they're 64bit drivers available to install? If they are do they reset my bios settings that I've changed for overclocks etc? I need laymens terms on this.

Also in my first post when I said some of the programs I was re-downloading where installing to an x86 directory, they were Speedfan, Prime95, and Steam. I know for Prime95 I downloaded the 64 bit drivers but I think it installed to an x86 directory so I was confused thinking my system wasn't fully operating on 64 bit (if that makes sense) and it wouldn't install the 64 bit drivers for that program.
 
When you ran the Windows 7 upgrade, it would have installed any 64-bit drivers you needed. If your system is working as you expect then you don't need to worry about anything.

I think you may be confused as to what is and isn't a "driver". For example, you mention "Prime95" - that's an application program - it isn't a driver and it doesn't require any drivers other than the basic ones that allow Windows 7 to function.
 

oChaos Nine

Distinguished
May 24, 2011
16
0
18,510

Just to be specific I have a fresh install with a Windows 7 Home Premium 64-bit disc, not an upgrade disc. And yes I know the difference between a program like P95 and a driver I was just being vague, sorry about that.

Anyways, I went to the Asus website and downloaded all of the newest drivers for my mobo (AMD chipset, processor, audio, lan) and made sure they were 64 bit compatible. I believe all of them were compatible with both Vista and Windows 7 32&64bit OS. So when I went to install these files and they are still installing to an x86 directory (see pic below). Asus, Marvell, Realtek, and VIA are all driver files to my mobo.



 
Again, I think there's some confusion as to what is and is not a driver.

Let's take the "ATI Technologies" folder in your "Program Files (x86)" folder as an example. When you install the software for your video card, you're actually installing two different kinds of programs:

1) The hardware drivers, which live in the C:\Windows\System32\Drivers folder. These are internal programs that act as an intermediary between Windows and the hardware. These are the programs that must be built using 64-bit code in order to be used with a 64-bit OS. There is no user interface for these programs - no way for you to directly talk to them or to see what they're doing.

2) The user interface programs. These programs let you display and change the settings for your video card. These are NOT drivers, they are ordinary application programs just like "Notepad" or "Solitaire". They can be 32- or 64-bit, and they live in one of the "Program Files" folders.

Every program that communicates with you via the screen, mouse and keyboard is an application program, not a driver - and most pieces of hardware have such programs to allow you to configure them. The application programs that let you configure the hardware talk to the (hidden) driver, which in turn makes the appropriate changes at the hardware level.
 
Solution