x86-64 - 是否可以在具有 64 位处理器的 32 位操作系统上运行 64 位代码?
问题描述
我们可以在 64 位操作系统上从 32 位模式转换到 64 位模式,将 CS 寄存器更改为 0x33 并相应地对齐堆栈。
是否可以这样做,但对于在 64 位处理器上运行的 32 位操作系统?我试过了,但遇到了访问冲突。看起来,CS 寄存器在 32 位操作系统上为 0x1B,与 64 位操作系统上的 0x23 不同。
解决方案
推荐阅读
- node.js - 如何对我的 http 服务器上的 /socket.io 路由进行速率限制?
- jenkins - 可以将隐藏值从 pipelineJob 传递到 Jenkins Scripted Pipeline 中的脚本吗?
- c# - 在没有 ASP.Net Core 服务器的情况下使用 SignalR
- google-cloud-platform - 我可以为 BigTable 节点提供少于 2.5TB 的磁盘吗?
- python - 如何从 Odoo 中的 Many2Many 列表元素(3 级)中获取 One2Many 列表?
- salesforce - Salesforce Bulk Upsert 引发重复错误
- c++ - 防止控制台在 ch 字符中输入空格(即空格、制表符和换行符)(在 c++ 中)
- vue.js - VueJS:将对象存储在数组中不起作用
- regex - Notepad++ 正则表达式查找不包含某些子 XML 标记的 XML 标记
- asp.net-core - 无法将修改后的 HttpResponse 发送回 Response.Body