x86-64模式


传统模式(Legacy Mode)
这种模式是为了令64位Xeon能没有障碍地执行现有的32位和16位程序而设计的,实际上就是32位x86时代的IA-32模式,此时现有x86程序无需作任何的改变,和我们目前使用着的32位环境一模一样。因为Nacona Xeon的核心仍然是沿着32位设计的,所以这个模式只是把所有为 64位计算而新增的运算机制都屏蔽起来。
兼容模式(Compatibility Mode)
兼容模式允许64位操作系统(如Windows XP x64 Edition)良好地运行基于32位和16位代码的程序,此时32位程序无需重编译即可以保护模式运行,而16位程序则要依赖于操作系统和 驱动程序是否支持保护模式,情况类似于32位环境下的IA-32虚拟实模式。和传统模式相同,兼容模式允许程序利用物理内存扩展实现64GB的物理内存 寻址,但这并非纯64位模式的准64 位寻址
纯64位模式(Full 64bit Mode)
此模式是三种模式当中最为高效的,同时可充分发挥EM64T的威力,但这种模式需要纯64位环境的支持,包括64位操作系统和64位应用程序。在64位操作系统和相应 驱动程序的支持下,系统和应用程序能够访问EM64T所支持最大容量的 扩展内存,这时Xeon平台的性能可得到最充分的发挥,当然运行于此模式下的程序需要修改其 微代码以便支持64位指令操作。
可以预见,在未来相当长的一段时间里,在64位操作系统下我们最常用的是兼容模式,因为现存的大量32位应用程序不可能在短期内为 x86-64 指令集而重新开发。

Operating mode Operating sub-mode Operating system required Type of code being run Default address size Default operand size Supported typical operand sizes Register file size TypicalGPR width
Long mode
LMA=1
64-bit mode64-bit operating system or boot loader64-bit code64 bits32 bits8, 16, 32, or 64 bits16 registers per file64 bits
Compatibility mode64-bit operating system or boot loader32-bit protected mode code32 bits32 bits8, 16, or 32 bits8 registers per file32 bits
64-bit operating system16-bit protected mode code16 bits16 bits8, 16, or 32 bits8 registers per file32 bits
Legacy mode
LMA=0
Protected mode32-bit operating system or boot loader, or 64-bit boot loader32-bit protected mode code32 bits32 bits8, 16, or 32 bits8 registers per file32 bits
16-bit protected mode operating system or boot loader, or 32- or 64-bit boot loader16-bit protected mode code16 bits16 bits8, 16, or 32 bits8 registers per file16 or 32 bits
Virtual 8086 mode16- or 32-bit protected mode operating system16-bit real mode code16 bits16 bits8, 16, or 32 bits8 registers per file16 or 32 bits
Real mode16-bit real mode operating system or boot loader, or 32- or 64-bit boot loader16-bit real mode code16 bits16 bits8, 16, or 32 bits8 registers per file16 or 32 bits



Intel为支持EM64T技术的处理器设计了两大模式:传统IA-32模式(legacy IA-32 mode)和IA-32e扩展模式(IA-32e mode)。在支持EM64T技术的处理器内有一个称之为扩展功能激活寄存器(extended feature enable register,IA32_EFER)的部件,其中的Bit10控制着EM64T是否激活。Bit10被称作IA-32e模式有效(IA-32e mode active)或长模式有效(long mode active,LMA)。当LMA=0时,处理器便作为一颗标准的32 bit(IA32)处理器运行在传统IA-32模式;当LMA=1时,EM64T便被激活,处理器会运行在IA-32e扩展模式下。 


虽然ia32e (64bit os运行32bit app)和ia32差不多,但是从enable角度而言,ia32e和64full模式,是同一个enable开关。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值