X86 与 X64

广义上的X86 包括 狭义X86 和 狭义X64

  • X64
目前(2022-2-18 11:01:43)市场上常见的 PC CPU架构主要是一种
	AMD的AMD64架构 // (英特尔的IA64)没人用
  • X64 与 X86 硬件不兼容
	以前的CPU架构是x86的,也就是32位。
	X86 和 X64是硬件上不兼容的,即32位软件不能直接在64位上运行。

	X86 :又名 i686
	X64 :又名 X86_64 AMD64
  • X64 CPU 如何运行 X86 程序
64位CPU如何运行32位程序
	1. windows的处理方法
		把x86架构的翻译成x64。
		在c:\windows\system32就是64位运行库,c:\windows\syswow64就是32位运行库。
		因此实际上32位程序依旧好好的在64位上跑,64位windows运行32位程序是通过 WOW64这么个子系统运行的。
运行模式
实模式
	16 bit
	早期 CPU 是为了支持单道程序运行而实现的,
	单道程序能掌控计算机所有的资源,早期的软件规模不大,内存资源也很少,所以实模式极其简单,
	仅支持 16 位地址空间,分段的内存模型,对指令不加限制地运行,对内存没有保护隔离作用
保护模式
	32 bit
	保护模式相比于实模式
	增加了一些控制寄存器和段寄存器,
	扩展通用寄存器的位宽,
		所有的通用寄存器都是 32 位的,还可以单独使用低 16 位,这个低 16 位又可以拆分成两个 8 位寄存器
	随着多道程序的出现,就需要操作系统了。
	内存需求量不断增加,所以 CPU 实现了保护模式以支持这些需求。
	保护模式包含特权级,对指令及其访问的资源进行控制,对内存段与段之间的访问进行严格检查,没有权限的绝不放行,
	对中断的响应也要进行严格的权限检查,扩展了 CPU 寄存器位宽,
	使之能够寻址 32 位的内存地址空间和处理 32 位的数据,
	从而 CPU 的性能大大提高。
长模式
	64 bit
	长模式相比于保护模式,
	增加了一些通用寄存器,
	并扩展通用寄存器的位宽,
	所有的通用寄存器都是 64 位,
		还可以单独使用低 32 位。这个低 32 位可以拆分成一个低 16 位寄存器,低 16 位又可以拆分成两个 8 位寄存器
	长模式,又名 AMD64 模式,最早由 AMD 公司制定。
	由于软件对 CPU 性能需求永无止境,
	所以长模式在保护模式的基础上,把寄存器扩展到 64 位同时增加了一些寄存器,
	使 CPU 具有了能处理 64 位数据和寻址 64 位的内存地址空间的能力。
	长模式弱化段模式管理,只保留了权限级别的检查,
	忽略了段基址和段长度,而地址的检查则交给了 MMU。
参考


https://github.com/sqm2050/wiki/tree/master/Books/x861:basic-architecture
	https://www.intel.cn/content/www/cn/zh/architecture-and-technology/64-ia-32-architectures-software-developer-vol-1-manual.html2:instruction-set-reference
	https://www.intel.cn/content/www/cn/zh/architecture-and-technology/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.html3:system-programming-guide
	https://www.intel.cn/content/www/cn/zh/architecture-and-technology/64-ia-32-architectures-software-developer-system-programming-manual-325384.html

其他 : 64-ia-32-architectures-software-developer 在 intel 网站的搜索结果
	https://www.intel.com/content/www/us/en/search.html?ws=text#q=64-ia-32-architectures-software-developer&t=All

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值