首页 > 系统相关 >翻译《The Old New Thing》- On 64-bit Windows, 32-bit programs run in an emulation layer, and if you ...

翻译《The Old New Thing》- On 64-bit Windows, 32-bit programs run in an emulation layer, and if you ...

时间:2024-06-09 10:04:43浏览次数:37  
标签:仿真 ... Old 32 程序 64 注册表 安装程序 bit

On 64-bit Windows, 32-bit programs run in an emulation layer, and if you don't like that, then don't use the emulator - The Old New Thing (microsoft.com)icon-default.png?t=N7T8https://devblogs.microsoft.com/oldnewthing/20081222-00/?p=19763

Raymond Chen 2008年12月22日


        在64位Windows上,32位程序在仿真层上运行,如果你不喜欢那样,那就不要使用仿真器.

        在64位Windows上,32位程序在一个仿真层上运行。这个仿真层模拟了x86架构,虚拟化了CPU、文件系统、注册表、环境变量、系统信息函数等所有这些东西。如果一个32位程序尝试查看系统,它将看到一个32位的系统。例如,如果程序调用`GetSystemInfo`函数来查看正在运行的处理器,它会被告知它正在一个32位处理器上运行,拥有32位的地址空间,在有一个32位天空和32位树木中32位鸟儿的世界里。

        仿真的目的就是通过模拟一个32位的执行环境来让32位程序感到满意。

        评论者Koro正在编写一个32位程序形式的安装程序,它检测到自己正在64位系统上运行,并且想要将文件(可能还包括设置注册表项和执行其他安装任务)复制到64位目录中,但仿真层将这些操作重定向到了32位位置。问题是“从32位应用程序中找到x64程序文件目录的方法是什么?”

        答案是“与系统合作比与它对抗更好。”如果你是一个32位程序,那么每次你尝试与外界交互时,你都会与仿真器作斗争。相反,只需将你的安装程序重新编译为64位程序。让32位安装程序检测它是否正在64位系统上运行,并启动64位安装程序。64位安装程序不会在32位仿真层上运行,所以当它尝试复制文件或更新注册表键时,它将看到真实的64位文件系统和真实的64位注册表。

标签:仿真,...,Old,32,程序,64,注册表,安装程序,bit
From: https://blog.csdn.net/weixin_41863029/article/details/139551888

相关文章

  • 翻译《The Old New Thing》- Why isn’t there a SendThreadMessage function?
    Whyisn'tthereaSendThreadMessagefunction?-TheOldNewThing(microsoft.com)https://devblogs.microsoft.com/oldnewthing/20081223-00/?p=19743RaymondChen 2008年12月23日为什么没有SendThreadMessage函数?简要文章讨论了Windows中不存在`SendThread......
  • 【RabbitMQ】SpringAMQP--消息转换器
    在SpringAMQP的发送方法中,接收消息的类型是 Object,也就是说我们可以发送任意对象类型的消息,SpringAMQP会帮我们序列化为字节后发送。测试发送Object类型消息1.声明队列@ConfigurationpublicclassFanoutConfig{@BeanpublicQueueobjectQueue(){return......
  • 突发!凌晨4点某制造业大厂国产数据库集群故障...
    ......
  • SpringAMQP使用管理RabbitMQ的五种消息模型
    使用SpringAMQ实现五种消息队列模型1.普通队列2.工作队列(WorkQueue)发布订阅=>根据交换机的不同分为三种3.订阅模型之Fanout(广播)4.订阅模型之Direct(路由)5.订阅模型之Topic(话题)使用前导:1.在生产者和消费者项目上分别导入RabbitMQ依赖<!--AMQP依赖,包含RabbitMQ-->......
  • 自媒体蓝海日本整蛊综艺,撸视频号分成计划收益,每天只需一小时,新手小白轻松上手......
    自媒体蓝海日本整蛊综艺,撸视频号分成计划收益,每天只需一小时,新手小白轻松上手......
  • 玩客云刷armbian+CasaOS+Docker+LED灯控制+QBitTorrent+Cpolar内网穿透+青龙+Home Ass
    一、【玩客云的配置介绍】CPU是晶晨S805这是一款32位处理器的CPU,性能放在现在来看是比较弱鸡的,很多玩法都被这颗CPU的性能局限了。双USB2.0这个同样是被吐槽的地方,严重影响文件的传输速度。千兆网口这点比很多同期的设备强。但刷部分固件后会变成百兆。1GB+8GB存储组合这......
  • ASP.NET Core 中使用基本消息的 RabbitMQ 消费者
    介绍RabbitMQ是一种流行的消息代理,它使应用程序能够通过交换消息进行异步通信。本文中,我们将探讨如何使用基本消息处理程序在ASP.NETCore应用程序中实现RabbitMQ消费者。我们将利用ASP.NETCore中间件的灵活性来创建一个可重复使用的消息处理管道,该管道可以高效地......
  • (4)跨时钟域设计(多bit+FIFO)
    一、引入 以上是多bit指示信号的传输与指示信号不同,多bit数据流具有连续性,即背靠背传输,同时要求信号具有较快的传播速度目前多bit数据流传输有两种,一种是借助SRAM,另一种是借助FIFO二、FIFO 如果FIFO内数据写满则生成满信号,反压上游结点,上游停止写入新......
  • rabbitMq实现系统内的短信发送设计&动态获取BEAN
    rabbitMq实现系统内的短信发送设计&动态获取BEAN1.短信非系统的重要节点操作,可以在任务完成之后,比如下单成功,发送下单成功的mq消息,短信服务接收到mq消息,动态的判断该短信的code,通过全局公共的父类(调用中台等接口获取全部所有需要的对象参数),获取短信中的{mobile}等参数来替换短......
  • C. Given Length and Sum of Digits...
    原题链接一句话题意分别找出长度为n,每位数字和恰好为m的最小数和最大数,如果找不到输出”-1-1“思维怎么确保构造的数最小/大?怎么确保数字和恰好为m?实施遍历每一位,贪心地选取最大/最小的数,直到接下来的数字不足以贪心细节1.没有前导零2.数字和恰好为m3.注意边界特判co......