80x86处理器的工作模式
80386处理器有3中工作模式: 实模式.保护模式.虚拟8086模式.其中实模式和虚拟8086模式是为了和8086处理器兼容而设置的.
在实模式下,80386就相当于一个快速的8086处理器.
保护模式是80386处理器的主要工作模式.在此方式下,80386可以寻址4GB的地址空间,同时,保护模式提供了80386先进的多任务,内存分页管理和
优先级保护等机制.
为了在保护模式下继续提供和8086处理器的兼容,80386又设计了一种虚拟8086模式,即cmd.exe程序.内存寻址只支持1MB.
一 实模式
开机时以实模式七点,此时处理器中各寄存器以实模式的初始化值工作.80386处理器在实模式下的存储器寻址方式和8086是一样的,
物理地址 = 段寄存器值x16 + 偏移地址,实模式下32位地址线只用了低20位.实模式下,80386处理器不能对内存进行分页管理,所以实模式下指令
寻址的地址就是内存中实际的物理地址.在实模式下,所有的段都是可读可写可执行的.
实模式下80386不支持优先级,所有的指令相当于工作在特权级(优先级0),所以它可以执行所有特权指令,包括读写控制寄存器CR0等.实际上,80386
就是通过在实模式下初始化控制寄存器GDTR,LDTR,IDTR,TR等管理寄存器以及页表,然后再通过加载CR0的PE位置0来进入保护
模式的.实模式不支持硬件上的多任务切换.
实模式下的中断处理方式和8086处理器相同,也是用中断向量表来定位中断服务程序地址.
二 保护模式
当80386工作在保护模式下时,它的所有功能都是可用的.此时80386所有的32根地址线都可供寻址,物理寻址空间达4GB.在保护模式下,支持内存分页
机制,提供了虚拟内存的支持.如果电脑的内存并没有达到4GB的话,此时就可用到虚拟内存.
保护模式下80386支持多任务,可以依靠硬件用一条指令实现任务切换.
保护模式下80386支持优先级机制,不同的程序运行在不同的优先级(0-3级)上.操作系统运行在0级上,应用程序一般运行在3级上.
三 虚拟8086模式
虚拟8086模式是为了在保护模式下执行8086程序而设置的.windows推出时DOS是如日中天的,如果windows推出时不兼容以前的DOS程序,
恐怕会失去很大的一个市场吧.
虚拟8086模式是以任务的形式在保护模式上执行的.