我应该在开发机上使用32位还是64位操作系统?

3

我记得听说开发机应该是32位的,而服务器应该是64位的以获得更好的性能。我想这是Richard Campell在Dot Net Rocks!上提到的。

为什么32位会比64位更适合开发机,而服务器则相反呢?

9个回答

6

一个主要的原因是32位操作系统无法访问4GB的RAM。在许多开发环境中,特别是涉及虚拟机或者需要进行大量计算的情况下,4-8GB的内存非常关键。这就是为什么我总是尽可能使用64位操作系统,而所有现代CPU都支持它。


2

这在一定程度上取决于你所使用的工具 - 例如,Visual Studio仍然是一个32位的应用程序(但可以从x64使用,只是没有太大收获)。

然而,如果你使用主操作系统来托管虚拟机,则可以为各种虚拟机获得大量内存 - 然后你可以选择适合你需求的32位和64位虚拟机(在32位主机中很难有64位客户VM)。

就我个人而言,在开发中我仍然使用32位系统。对于我的大多数工作来说,这是足够的。


1

我使用64位的2008服务器,没有任何性能问题。事实上,它比32位的XP要好得多。它通常表现更快。有趣的是,在我的笔记本电脑5400rpm驱动器上运行64位的2008服务器,文件操作比在一台配备7200rpm驱动器的32位XP运行的办公室PC上更快。

我只能想到一个原因,为什么你想运行32位操作系统(XP是最新的):你可以使用IE6来调试你的网站。

另一件事是,32位操作系统无法处理超过~3.4 Gb的RAM容量。如果你的电脑有4GB以上的RAM,你只会在32位操作系统上失去性能。记住,即使是消费级笔记本电脑这些天也出售带有4、6和8 GB的RAM,可以放心地告别32位操作系统。

如果你谈论的是非Windows操作系统,那么我的经验可能不适用。


是的,我也想听听。 - Bombe

1

我认为对于开发人员来说,32位机器不比64位机器更快。确实,在64位操作系统上运行的开发环境是在模拟的32位环境中运行,这会产生一定的开销。另一方面,你会发现64位操作系统稍微快一些,因为内部数据通路是64位的,可以在单个操作中移动两倍的数据量。这使得64位操作系统比32位操作系统稍微快一些。64位操作系统的缺点是指针大小增加了一倍。

真正重要的是,64位操作系统非常稳定,可以访问更多物理内存,并且可以运行64位和32位应用程序以及虚拟机,而不会影响性能。32位操作系统属于过去。


1

拥有大量内存会改变你的工作方式,有时甚至是戏剧性的。我使用12GB内存和一台30英寸的屏幕运行8个虚拟屏幕,其中包括4个不同的开发环境(1个主干,2个分支以及一个用于外部项目的第四个环境)。


0

我在我的笔记本电脑上安装了64位的Ubuntu。我用它来进行开发,完全没有性能问题。我有一种感觉,计算机资源以这种方式更好地使用。

我能想到选择32位操作系统的唯一原因是您知道您开发的内容将在32位和64位机器上运行。但是VS可以让您选择目标机器...


0

他的观点是,如果你开发32位程序,你将只能使用不到4GB的内存。而在64位服务器上,你可能拥有超过4GB的RAM。基本上是通过欺骗来让你更加节约内存需求。这与CPU的原始数字计算关系不大,更多地涉及内存使用。


0

虽然我无法用数字来量化它,但我注意到了与“新来的”一样的事情。我曾经在笔记本电脑上运行XP x86,后来是vista x86。升级到Vista X64后,速度快了很多。不知道是驱动程序问题,还是我运行SQL Server x64等因素,它可以使用两倍的CPU寄存器数量,在Windows的“内部”优化或其他什么原因,但我能感觉到差异...


0
我认为显而易见的建议是使用您的代码将要部署的操作系统。如果您的开发环境尽可能接近部署环境,那么出现错误的可能性就会降低,因为这样可以避免在部署环境中出现问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接