So apparently, you can install both 32bit and 64bit compiled applications on a 64bit Windows system (Vista or 7).
显然,您可以在64位Windows系统(Vista或7)上安装32位和64位编译应用程序。
What's the reason why both versions are able to run on the 64bit OS? Is it good practice to install 64bit apps on 64bit OS? Any advantages/disadvantages to combining 32bit apps with a 64bit OS?
这两个版本能够在64位操作系统上运行的原因是什么?在64位操作系统上安装64位应用程序是一种好习惯吗?将32位应用程序与64位操作系统相结合有什么优点/缺点?
Thanks!
谢谢!
5 个解决方案
#1
14
What's the reason why both versions are able to run on the 64bit OS?
这两个版本能够在64位操作系统上运行的原因是什么?
If the OS couldn't run any old (32bit) apps, nobody would want to use it. So they had to find a way.
如果操作系统无法运行任何旧的(32位)应用程序,则没有人会想要使用它。所以他们必须找到一种方法。
Is it good practice to install 64bit apps on 64bit OS?
在64位操作系统上安装64位应用程序是一种好习惯吗?
Generally yes, they can use more memory and may run somewhat faster. However, it's not possible for a 64bit app to call a 32bit DLL, so you can run into problems.
通常是的,他们可以使用更多的内存,并可能运行得更快。但是,64位应用程序无法调用32位DLL,因此您可能会遇到问题。
Any advantages/disadvantages to combining 32bit apps with a 64bit OS?
将32位应用程序与64位操作系统相结合有什么优点/缺点?
Not really, except of course that they won't be able to use more than 4GB RAM, and may run a bit slower than they would on a 32bit OS on the same hardware.
不是真的,当然除了他们将无法使用超过4GB的RAM,并且可能比在同一硬件上的32位操作系统上运行速度慢一点。
#2
7
The 64-bit versions of Windows come with a Windows on Windows 64 (WOW64) Subsystem that allow it to run the 32bit applications. The whole process is actually quite complex and you can read about it at:
64位版本的Windows带有Windows 64(WOW64)子系统,允许它运行32位应用程序。整个过程实际上非常复杂,你可以在以下网址阅读:
How Windows 7 / Vista 64 Support 32 Bit Applications
Windows 7 / Vista 64如何支持32位应用程序
If you have a 64-bit OS and the application vendor provides a 64bit version, install it. If not, installing the 32-bit version won't hurt.
如果您有64位操作系统且应用程序供应商提供64位版本,请安装它。如果没有,安装32位版本不会有害。
There is a distinct advantage to being able to combine 32-bit and 64-bit applications on the same machine in the fact that not all vendors provide 64-bit versions of their applications. An OS that allows you to run both will give you access to the broader set of software available to consumers.
由于并非所有供应商都提供64位版本的应用程序,因此能够在同一台计算机上组合32位和64位应用程序具有明显的优势。允许您同时运行这两种操作系统的操作系统将允许您访问消费者可用的更广泛的软件集。
#3
3
Not every program is available in a 64-bit version.
并非每个程序都以64位版本提供。
Yes, you generally should use 64-bit apps, where possible.
是的,您通常应尽可能使用64位应用程序。
Combining 32-bit and 64-bit apps is a pain, and never a good idea. It is usually only done by necessity (going back to my first point).
结合32位和64位应用程序是一件痛苦的事情,从来都不是一个好主意。它通常只是必要的(回到我的第一点)。
#4
2
Modern processors using an arhitecture such as x64 can execute both 32bit and 64bit applications.
使用诸如x64之类的架构的现代处理器可以执行32位和64位应用程序。
32bit operating systems can allocate only 4GB of memory (2^32 = 4294967296), whereas 64bit ones can allocate a lot more (2^64 = 18446744073709551616).
32位操作系统只能分配4GB内存(2 ^ 32 = 4294967296),而64位操作系统可以分配更多内存(2 ^ 64 = 18446744073709551616)。
It is a good practise to install 64bit apps on a 64bit OS, because they will be able to use all of your computer's memory, if you have more than 4GB.
在64位操作系统上安装64位应用程序是一个很好的做法,因为如果你的超过4GB,它们将能够使用你所有的计算机内存。
#5
2
Depending on the actual implementation a 32 bit application will require some special handling to run on a 64 bit operating system, whereas a 64 bit application will run "natively" on a 64 bit operating system so should run "better" (for various values of "better" - access to more memory for example). This "special handling" might just be running a subset of the instruction set, but it will need marshalling etc.
根据实际实现,32位应用程序将需要一些特殊处理才能在64位操作系统上运行,而64位应用程序将在64位操作系统上“本机”运行,因此应该“更好”地运行(对于各种值的“更好” - 例如访问更多内存)。这种“特殊处理”可能只是运行指令集的一个子集,但它需要编组等。
So it make sense to install the 64 bit version of a program where one is available.
因此,安装64位版本的程序是有意义的。
However, it makes commercial sense to allow 32 bit programs to run as there are far more 32 bit applications out there than 64 bit ones. Over time the applications that are still being sold will be upgraded and there may come a time when a future version of Windows doesn't support 32 bit programs (in the same way that 16 bit ones have gone by the board).
但是,允许32位程序运行具有商业意义,因为那里有比32位应用程序多得多的32位应用程序。随着时间的推移,仍在销售的应用程序将进行升级,并且可能会出现未来版本的Windows不支持32位程序的情况(就像16位程序已经通过主板一样)。
#1
14
What's the reason why both versions are able to run on the 64bit OS?
这两个版本能够在64位操作系统上运行的原因是什么?
If the OS couldn't run any old (32bit) apps, nobody would want to use it. So they had to find a way.
如果操作系统无法运行任何旧的(32位)应用程序,则没有人会想要使用它。所以他们必须找到一种方法。
Is it good practice to install 64bit apps on 64bit OS?
在64位操作系统上安装64位应用程序是一种好习惯吗?
Generally yes, they can use more memory and may run somewhat faster. However, it's not possible for a 64bit app to call a 32bit DLL, so you can run into problems.
通常是的,他们可以使用更多的内存,并可能运行得更快。但是,64位应用程序无法调用32位DLL,因此您可能会遇到问题。
Any advantages/disadvantages to combining 32bit apps with a 64bit OS?
将32位应用程序与64位操作系统相结合有什么优点/缺点?
Not really, except of course that they won't be able to use more than 4GB RAM, and may run a bit slower than they would on a 32bit OS on the same hardware.
不是真的,当然除了他们将无法使用超过4GB的RAM,并且可能比在同一硬件上的32位操作系统上运行速度慢一点。
#2
7
The 64-bit versions of Windows come with a Windows on Windows 64 (WOW64) Subsystem that allow it to run the 32bit applications. The whole process is actually quite complex and you can read about it at:
64位版本的Windows带有Windows 64(WOW64)子系统,允许它运行32位应用程序。整个过程实际上非常复杂,你可以在以下网址阅读:
How Windows 7 / Vista 64 Support 32 Bit Applications
Windows 7 / Vista 64如何支持32位应用程序
If you have a 64-bit OS and the application vendor provides a 64bit version, install it. If not, installing the 32-bit version won't hurt.
如果您有64位操作系统且应用程序供应商提供64位版本,请安装它。如果没有,安装32位版本不会有害。
There is a distinct advantage to being able to combine 32-bit and 64-bit applications on the same machine in the fact that not all vendors provide 64-bit versions of their applications. An OS that allows you to run both will give you access to the broader set of software available to consumers.
由于并非所有供应商都提供64位版本的应用程序,因此能够在同一台计算机上组合32位和64位应用程序具有明显的优势。允许您同时运行这两种操作系统的操作系统将允许您访问消费者可用的更广泛的软件集。
#3
3
Not every program is available in a 64-bit version.
并非每个程序都以64位版本提供。
Yes, you generally should use 64-bit apps, where possible.
是的,您通常应尽可能使用64位应用程序。
Combining 32-bit and 64-bit apps is a pain, and never a good idea. It is usually only done by necessity (going back to my first point).
结合32位和64位应用程序是一件痛苦的事情,从来都不是一个好主意。它通常只是必要的(回到我的第一点)。
#4
2
Modern processors using an arhitecture such as x64 can execute both 32bit and 64bit applications.
使用诸如x64之类的架构的现代处理器可以执行32位和64位应用程序。
32bit operating systems can allocate only 4GB of memory (2^32 = 4294967296), whereas 64bit ones can allocate a lot more (2^64 = 18446744073709551616).
32位操作系统只能分配4GB内存(2 ^ 32 = 4294967296),而64位操作系统可以分配更多内存(2 ^ 64 = 18446744073709551616)。
It is a good practise to install 64bit apps on a 64bit OS, because they will be able to use all of your computer's memory, if you have more than 4GB.
在64位操作系统上安装64位应用程序是一个很好的做法,因为如果你的超过4GB,它们将能够使用你所有的计算机内存。
#5
2
Depending on the actual implementation a 32 bit application will require some special handling to run on a 64 bit operating system, whereas a 64 bit application will run "natively" on a 64 bit operating system so should run "better" (for various values of "better" - access to more memory for example). This "special handling" might just be running a subset of the instruction set, but it will need marshalling etc.
根据实际实现,32位应用程序将需要一些特殊处理才能在64位操作系统上运行,而64位应用程序将在64位操作系统上“本机”运行,因此应该“更好”地运行(对于各种值的“更好” - 例如访问更多内存)。这种“特殊处理”可能只是运行指令集的一个子集,但它需要编组等。
So it make sense to install the 64 bit version of a program where one is available.
因此,安装64位版本的程序是有意义的。
However, it makes commercial sense to allow 32 bit programs to run as there are far more 32 bit applications out there than 64 bit ones. Over time the applications that are still being sold will be upgraded and there may come a time when a future version of Windows doesn't support 32 bit programs (in the same way that 16 bit ones have gone by the board).
但是,允许32位程序运行具有商业意义,因为那里有比32位应用程序多得多的32位应用程序。随着时间的推移,仍在销售的应用程序将进行升级,并且可能会出现未来版本的Windows不支持32位程序的情况(就像16位程序已经通过主板一样)。