7

关于这些问题:

人们推荐64位,你能解释一下为什么吗?是否只是为了让您拥有 32 位提供的 3GB 以上的可寻址 RAM?

Visual Studio 如何从所有这些额外的 RAM 中受益?

我从 64 位 XP 回到 32 位,因为无论如何我使用的 90% 的软件都是 32 位的,而且我在驱动程序和一些 64 位软件方面遇到了问题。

4

12 回答 12

8

据我所知,Vista 对 64 位的支持比 XP 好得多。它比 64 位 XP 宣传得更好,也更受欢迎。对于 64 位 Vista,驱动程序和软件支持应该会更好。

64 位交换机目前正在计算行业中进行。你也可以换。微软已经向 64 位迈进了一大步,而且很多人已经效仿。那些尚未转换的人,很可能很快就会转换。

至于技术优势,除了更高的内存限制外,没有太多优势。如果你有 64 位的,Vista 肯定会让你利用 4GB+ 的 RAM。

于 2008-08-20T14:07:44.060 回答
5

有很多原因。

  1. 是的,你是对的,所以你可以拥有超过 3 gig 的 ram
  2. 越来越多的系统将很快成为 64 位,因此开发您将要运行的系统是有意义的
  3. 有些 bug 只能在 64 位模式下运行时观察到
于 2008-08-20T14:07:41.207 回答
4

“在 p/invoke 调用方面存在一些问题,并不总是在 32/64 下工作,托管 DirectX 在 64 位下也不能很好地工作,但总的来说,我认为随着时间的推移人们会做更多的事情过去了。”

在 .net 中,这是由设置了 AnyCPU 标志引起的。x64 机器上的 AnyCPU 将作为 x64 进程运行该进程,当尝试调用/加载 32 位 dll 时,该进程会爆炸。由于这些库是 32 位的,因此您需要将构建设置为 x86,以确保应用程序将作为 x86 进程运行,如果在 x64 机器上它将在 WoW 中运行。

签名的驱动程序。不再出现“未知设备驱动程序”蓝屏,找出导致问题的驱动程序,并正确归咎于他们的崩溃。

签名的驱动程序也意味着驱动程序是最新的。过去每 2-3 年更新一次驱动程序的制造商必须获得签名/认证。这意味着驱动程序是相对最新的,并且必须通过 Microsoft 的基本“这完全是垃圾”测试。

我一直认为这种“缺乏驱动程序支持”是一种恩惠。强制制造商认证。

更多的地址空间。其他人提到这允许更多的 RAM,这是真的。但它对内存管理性能的影响更大。这也意味着系统将完全使用 4 gigs RAM 和 512MB 的显卡。在 32 位操作系统上,系统必须在有限的地址中决定哪些硬件获得什么范围,物理 RAM 丢失。

然后总是有可能使用超过 4 gigs 的 RAM,当你有很多虚拟机时很有用

x64 Vista 在引导期间将核心操作系统进程/服务加载到随机地址中。给一些漏洞利用 1/256 的机会选择正确的内存位置,而不是 32 机器上的 100%。

没有内核补丁。没有任何。纳达。齐尔奇。这确实意味着某些 Sysinternal 工具无法工作,但这意味着 xyz 间谍软件/病毒不能恶意应用与 sysinternals 相同的技术来永久隐藏、拦截呼叫等(这也是一些防病毒软件无法使用的原因......作为病毒)

于 2008-08-20T18:48:20.610 回答
3

除了增加地址空间之外,另一个技术优势是 64 位应用程序始终使用 DEP,因此您不得不修复这些错误和潜在的安全漏洞。

于 2008-08-20T14:23:46.037 回答
2

64位的另一个优点:

所有与微处理器相关的寄存器都是 64 位的。与 32 位微处理器相比,这使得高精度计算和 64 位算术能够在更少的时钟周期内执行。在某些情况下,例如 64 位乘法,它的速度是原来的两倍。

于 2008-08-20T19:37:52.630 回答
2

在大多数程序都提供 64 位版本之前,64 位不会成为主流。谁制作程序?开发者,开发者,开发者

明白我的意思了吗?如果开发人员不做出转变,64 位程序将如何成为主流?

除此之外,当然还有更多的原因:

  • 签名驱动程序
  • 正如你提到的,更多的内存
  • 您可以在 64 位(显然)上测试您的程序
  • 这是未来。=)
于 2008-08-20T14:13:51.707 回答
2

我从 32 位 Vista 切换到 64 位,并没有回头。我只有一个设备(多轨火线混合板)有问题 - 但其他所有适用于 32 位的设备都适用于 64 位。加入大量廉价 RAM 的能力,我看不到如果处理器支持,任何人都会坚持使用 32 的任何理由。

如果您真的不确定,请使用 Vista 大大改进的多引导功能,并在同一台机器上的不同分区上安装 32 位 XP 和 64 位 Vista。我做到了,但说实话,我至少有 9 个月没有回到 XP 了。

于 2008-08-20T14:49:56.113 回答
1

XP 64bit 还没有为黄金时段做好准备,没有驱动程序。在 Windows Vista 64 位中,情况并非如此。因此,如果您希望安装 Windows Vista,如果您将 XP 保持在 32 位,请选择 64 位。

于 2008-08-20T14:08:18.413 回答
1

越大越好吗?RAM的东西是主要优势,并且增加了地址空间。我想只要驱动程序不是问题,那么为什么不是 64 位?

于 2008-08-20T14:08:20.580 回答
1

人们推荐64位,你能解释一下为什么吗?是否只是为了让您可以拥有 32 位提供给您的 3Gb 以上的可寻址 RAM?

这个可寻址的 RAM 限制对于普通用户来说不是问题,但它对数据库配置、科学计算等非常重要......

Visual Studio 如何从所有这些额外的 RAM 中受益?

可以???如果您想更快地编译,您可以从 ramdisk 分区直接编译获得高达 20% 的编译时间。我从 64 位 XP 回到 32 位,因为无论如何我使用的 90% 的软件都是 32 位的,而且我在驱动程序和一些 64 位软件方面遇到了问题。

为常规开发站切换 64 位可能是没用的。

于 2008-08-20T14:10:57.143 回答
1

Vista x64 对我来说是一次非常愉快的体验。有几个边缘情况,但此时大多数软件和驱动程序都可以正常工作。我看到使用它的最大实际原因是您可以在 RAM 上加载(比如 6GB 或更多),然后将其中的大部分用于需要大量内存的虚拟机和其他应用程序(如 Photoshop)。如果您每天只使用 Visual Studio 和其他几个应用程序,那么它可能不会那么有益,但我发现自己 0ften 一次运行 10 到 20 个应用程序(真的),额外的 RAM 至关重要。

于 2008-08-20T14:11:41.710 回答
1

DotNet Rocks 最近有一个展示,从 .Net 开发人员的角度来看,使用 64 位的好处和陷阱。

http://www.dotnetrocks.com/default.aspx?showNum=341

在 Windows 中访问更多 RAM 有明显的好处,但不可用的驱动程序(不仅必须是 64 位,而且还必须经过签名和认证)可能带来明显的缺点。

其他观点是,如果您需要测试您在 64 位下开发的任何东西,那么您可以做到这一点的唯一方法是在 64 位操作系统上。您始终可以从 64 位操作系统创建 VM 映像以在 32 位下进行测试。

在 p/invoke 调用方面存在一些问题,并不总是在 32/64 下工作,托管 DirectX 在 64 位下也不能很好地工作,但总的来说,我认为随着时间的推移人们会做更多的事情经过。

于 2008-08-20T14:18:20.493 回答