与在 32 位操作系统中本机运行相比,32 位程序在 64 位操作系统上运行速度是否相对较慢?

2024-03-31

我在这里阅读有关 WOW 64 的内容http://en.wikipedia.org/wiki/WOW64 http://en.wikipedia.org/wiki/WOW64

并了解到它是 64 位 Windows 操作系统中运行 32 位程序的一层。

因此,我是否可以假设 32 位程序在 64 位操作系统上运行的速度相对于在 32 位操作系统中本机运行的速度要慢。

我可以看到 64 位操作系统中超过 4 GB 内存访问的优势。但这个优势一定能抵消WOW64层增加的小开销吗? 64 位还有其他优势可以抵消这一点吗?


64 位系统的主要优点是它允许应用程序处于 64 位模式,而如果您需要访问超过 4GB 的内存,则该模式非常有用。如果您有这样的需求,那么使用 64 位系统是您唯一的选择。您的应用程序将使用 64 位代码,因此不会使用 WOW64,因此不会导致问题。

如果您确实没有在单个进程中使用超过 4GB 内存的要求,那么 64 位 Windows 是否真的是一种改进就变得值得商榷。如果您想使用超过 4GB 的主内存,您可能需要 64 位 Windows(尽管您也可以使用 PAE,但这有其自身的缺点)。不过,在 64 位系统上,您可以运行 64 位应用程序。对于 AMD64 处理器,64 位模式可能比本机 32 位模式更快,因为处理器具有更多寄存器。这种轻微的收益是否大于轻微的损失。 WOW64 取决于您的应用程序组合。

就我个人而言,我认为许多人安装 64 位 Windows 是因为他们不完全了解这样做的后果,但觉得这样做是安全的(但由于缺乏驱动程序,他们可能不会这样做)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

与在 32 位操作系统中本机运行相比,32 位程序在 64 位操作系统上运行速度是否相对较慢? 的相关文章

  • SidBySide:3rd Party Dll 指的是 MSVCR80.DLL 的两个版本

    我们包含了一个 3rd Party lib DLL 最近在安装时造成了很多麻烦 使用依赖步行者 http www dependencywalker com 我们发现dll本身引用了两个不同版本的 MSVCR80 DLL Version 8
  • 如何使用 Python 与窗口的 GUI 交互?

    假设您想打开myapp exe 打开第三个菜单 然后选择第二个菜单项 即像用户使用键盘或鼠标一样 然后在对话框窗口中选择第二个按钮 pyahk https pyahk readthedocs io en latest and pyautog
  • 64 位大型 malloc

    malloc 失败的原因是什么 尤其是在 64 位中 我的具体问题是尝试在 64 位系统上分配一大块 10GB RAM 该机器有 12GB RAM 和 32GB 交换空间 是的 malloc 是极端的 但是为什么它会成为一个问题呢 这是在带
  • Windows平台下C语言控制串口DTR和RTS引脚

    如何在windows平台上控制串口的DTR和RTS引脚 我希望通过升高或降低电压来对其进行位敲击或操作 您需要使用EscapeComm 函数 https learn microsoft com en us windows desktop a
  • 为 Windows 98 编译 Qt

    我需要支持 Windows 98 Qt 文档声称这是可能的 但没有说明 Qt 4 6 的分布式二进制文件不能在 Win98 上运行 而且我采样的大多数 Qt 应用程序也不能在 Win98 上运行 对于几个确实在 98 上运行的应用程序 我询
  • fprintf() 线程安全吗?

    我正在为野人就餐问题的某些变量编写一个 C 解决方案 现在 我创建线程 每个线程都将 FILE 获取到同一个调试文件 在线程内我正在使用 fprintf 进行一些打印 打印的语句不受任何类型的互斥锁等保护 我没有在调试文件中观察到任何交错行
  • 如何在子 shell 中运行 cmd.exe 批处理文件

    我有一个批处理文件 通常像这样调用 longjob cmd gt result txt 2 gt 1 这工作正常 但脚本在执行过程中更改了目录 将我的 shell 留在该目录中 这很麻烦 有没有办法在子 shell 中运行命令 同时仍然允许
  • 如何获取Windows批处理的父文件夹

    我正在编写一个批处理文件 我需要获取该bat文件的父文件夹 有可能吗 注意 我的意思是批处理文件的父文件夹 而不是调用该批处理的提示的当前目录 Thanks 批处理的父文件夹位于变量中 dp0位于 例子 echo off setlocal
  • Boost + Visual Studio 2010 + Windows 平台 SDK 7.1

    有人可以告诉我 bjam 的命令行开关或其他可以使用新的 Windows Platform SDK 7 1 工具链使用 VS2010 进行 boost 编译的东西吗 您可以在普通的视觉工作室项目中设置该选项 默认值是 v100 是平台 7
  • 如何使用 python 在 Windows 中禁用/启用特定 USB 端口? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在图形窗口中创建一个切换开关 可以使用 python 禁用 启用 Windows 中的特定 USB 端口 我可以使用哪个外部命令或
  • 如何使用 PowerShell 扩展 ZIP 存档(UTF-8 文件名)

    我的 zip 存档有一个文件 P re No l txt 该 zip 可以通过 Windows 文件资源管理器 7 Zip 或我尝试过的任何其他工具很好地扩展 但我不知道如何从 PowerShell 中做到这一点 显然我已经尝试过展开 存档
  • 在运行时,我如何判断我是否在 WinXP+ 上? win32

    我正在进行一些 win32 字符串 API 调用 并假设字符串以宽字符串形式出现 这在 XP 和更高版本上有效 我该如何断言这一点 这是运行时检查还是编译时检查 我做错了吗 这是一个例子 typedef std basic string
  • 在Windows 7上安装curl后缺少libcurl-4.dll

    按照这个人的安装curl后指示 https stackoverflow com a 28757477 1186038 除了第 2 步 已安装Win64 OpenSSL v1 0 1u 轻型相反 因为下载页面中缺少版本 k http slpr
  • 如何设置任务在使用 vbs 登录时以当前用户身份运行而无需管理员权限?

    从命令行 我可以创建一个在登录时运行的计划任务 无需管理员权限或用户输入密码来设置任务 但是我必须使用 xml 文件来执行此操作 下面是一个示例 xml 其中 Domain User 部分必须在运行时替换为当前用户的域和名称
  • C++ 使用 Windows 命名管道

    由于某种原因 桅杆和从属装置都失败了 但是我可以找到任何关于它们如何工作的好例子 所以我不确定我哪里出了问题 在 ConnectNamedPipe 之后 主设备永远不会退出 WaitForSingleObject 并且从设备在第一个 boo
  • 什么是WINVER?

    我正在查看一些代码 他们有这一行 define WINVER 0x0501 in stdafx h文件 为什么需要定义WINVER 它如何影响您的代码 有人可以解释一下吗 WINVER 确定构建应用程序所需的最低平台 SDK 这反过来又会在
  • Windows批处理文件:将结构转换为单行字符串

    我需要将这个艰巨的任务作为批处理文件来完成 这对于 C 来说不是最困难的 但在 DOS 中是一个地狱 至少对我来说 我需要将结构转换为单个 var 字符串 才能在我的程序中再次将它们转换为该结构 别担心回归 一切都已经完成了 该结构的大小会
  • 所有平台上的java

    如果您想用 java 为 Windows Mac 和 Linux 编写桌面应用程序 那么所有这些代码都相同吗 您只需更改 GUI 即可使 Windows 应用程序更像 Windows 等等 如果不深入细节 它是如何工作的 Java 的卖点之
  • Windows 上的递归移动命令

    我需要做一个 sh 的 bat 副本 我不太了解 Windows cmd 在 Linux 上我可以做 mv or rsync a SOURCE DEST remove sent files ignore existing whole fil
  • 在高 dpi Windows 平台上自动重新缩放应用程序?

    我正在编写一个需要在高 dpi Windows 192dpi 而不是 96dpi 上运行的 Qt 应用程序 不幸的是 Qt 框架尚不支持高 dpi 至少在 Windows 上 因此我的应用程序及其所有元素看起来只有应有尺寸的一半 有没有办法

随机推荐

  • Docker - 无法准备上下文:无法评估 Dockerfile 路径中的符号链接:GetFileAttributesEx

    我今天刚刚下载了适用于 Windows 10 64 位的 Docker Toolbox 我正在浏览教程 我在尝试使用 Dockerfile 构建映像时收到以下错误 Steps 推出 Docker 快速入门终端 创建后测试docker 按照
  • “自动打包存储库以获得最佳性能”是什么意思?

    我的 git 存储库有问题 在过去的几天里 每当我向服务器推送时 我都会收到此消息 自动打包存储库以获得最佳性能 并且它似乎不会消失并返回 shell 我还尝试签出一个新分支 然后对我之前的分支进行变基 然后执行git gc删除未使用的历史
  • 如何确定 NSDate 是否是工作日?

    我怎样才能知道是否NSDate是工作日吗 也就是说 根据用户当前的区域设置和日历设置是否是周末 所以不硬编码为周一到周五 NSCalendar has a firstWeekday财产 但这似乎只是一种表象 美国是周日 英国是周一 编辑 我
  • MySQL 分组依据/排序依据索引

    请参阅下面的查询 我应该在表上创建什么索引 以便查询将使用该索引并避免使用临时和文件排序 我尝试了许多不同的索引组合并阅读这里的建议 http mysqldba blogspot com 2008 06 how to pick indexe
  • 将 Unique-ids 传递给 Javascript 以实现水平滚动

    我正在尝试开发一个类似于 Netflix 的水平滚动界面 一切都显示并正常工作 但由于某种原因 Javascript 只滚动浏览索引页面中的第一个出版商书籍 当我尝试悬停和滚动任何其他出版商书籍时 它只会水平滚动第一出版商书籍 我知道 sc
  • 具有多个条件的 Linq where 子句

    此方法返回通用列表 但它有多个条件来获取选择 我只是用 if else if else if 来写这个 我的意思是这么多 if else 有没有更短的方法来做到这一点 谢谢 public List
  • 使用 HttpURLConnection 设置自定义标头

    我只是在做一个GET使用 Rest API 请求HttpURLConnection 我需要添加一些自定义标头 但我得到了null同时试图找回他们的价值观 Code URL url try url new URL http www examp
  • 使用指向单个值的指针作为数组

    请注意 该问题已针对 注册 变量进行了扩展 简而言之 我的问题是 这个合法的 C 代码是否合法 按照不同 ISO 9899 C 规范的标准字母 最好在标准的文字中加上 证明 int a 0 int b a 0 const int c 0 b
  • 如何在ajax请求中将带有formdata的数组发送到mvc操作

    我试图将带有表单数据的数组发送到带有 Ajax 请求的操作 但每当我这样做时 我都会收到表单数据和空数组 scope SubmitForm function var sLangs supportedLanguages data kendoM
  • D3 变更检测如何工作?

    如果我有一个 JSON 对象数组 D3 如何确定哪些进入enter set 如果我有一个对象数组 如下所示 var data label a value 1 label b value 3 label c value 2 然后我将它绑定到一
  • 如何实现Actor.Ask以一定速率控制数据流

    我使用了下面的方法 但它使用了大量的 CPU 所以我想使用 Actor Ask 而不是下面的方法 任何人都可以帮助我如何使用 Actor Ask KafkaConsumer PlainSource consumerSettings subs
  • JavaScript:没有alert()函数就无法工作

    可能的解决方案 https stackoverflow com questions 11309802 javascript only works if i do an alert 各位程序员大家好 我写信给您是为了请求您帮助解决我最近遇到的
  • 沉默 Spork 的 Rails 模式加载

    我在 Rails 3 0 环境上运行 rspec 我们刚刚切换到在内存数据库中使用 sqlite3 进行测试 要使其正常工作 您需要在每次运行时加载架构 这样做的问题是您会从模式加载中获得大量输出 根据this http www rubyi
  • 使用 JavaScript(node.js)“反转”正则表达式

    用这样的正则表达式 w 我可以匹配字符串a q 有没有惯用的方法来生成与 JS 中的某些正则表达式匹配的所有字符串 不要考虑无限的情况 我只是想简单地描述一些可能的符号集 一些有意义的东西而不是 var s 0123456789 lt gt
  • Visual Studio中有没有宏可以获取TFS Sourcecontrol的根目录?

    Visual Studio中是否有任何内置宏可以获取TFS Sourcecontrol Root目录 例如 就像 ProjectDir 一样 我会使用 TFSSourceControlRoot 或类似的东西 我需要这个的原因是为了在 xco
  • 在 Python 中将 .sav 文件转换为 .csv 文件

    我想在Python中将 sav文件的内容转换为 csv文件 我编写了以下代码行来访问 sav 文件中变量的详细信息 现在 我不清楚如何将访问的变量数据写入带有标题的 csv 文件 import scipy io as spio on2fil
  • 使用带有 return-join 的 Hibernate 本机查询重复行

    我正在使用 Hibernate 3 3 x 并且有两个实体 public class FtChargeAcctPkgDtl private FtChargeAcctPkgDtlId id private Set
  • 布朗尼安装故障排除

    我正在准备 chainlink 训练营 我的布朗尼安装似乎没问题 但是当我尝试时brownie init即使我以管理员身份运行并且指定了文件 我也会收到错误 请参阅下面的链接获取屏幕截图 C WINDOWS system32 gt brow
  • 如何调试SQLite3中的绑定参数?

    In the 其他问题 https stackoverflow com q 31806336 4675398我学习了如何正确地将参数绑定到准备好的 SQL 语句 但是 我发现如果我不绑定所有参数 sqlite3 step 将返回 SQLIT
  • 与在 32 位操作系统中本机运行相比,32 位程序在 64 位操作系统上运行速度是否相对较慢?

    我在这里阅读有关 WOW 64 的内容http en wikipedia org wiki WOW64 http en wikipedia org wiki WOW64 并了解到它是 64 位 Windows 操作系统中运行 32 位程序的