摘要:这篇文章主要介绍了x86是多少位(什么是x86架构),需要的朋友可以参考下,如果你喜欢还可以浏览x86是多少位(什么是x86架构)的最新相关推荐信息。
32位架构
实模式
好了,大前提终于讲完了。现在来说说32位架构的实模式(也叫真8086模式或快8086模式)。
如上所述,32位架构是基于16位架构的扩展版本。虽然这样可以保证CPU能够运行前期遗留下来的相对“低端”的程序,但是也学到了当时8086的一些“生活习惯”,比如视野比较小(寻址1M)、脑子比较直(单任务)等等。
可以说,从80386开始,这份来自8086的“遗产”就代代相传。你不知道的是,当你启动重启的时候(只有你启动重启的时候),电脑会悄悄进入实模式,然后切换到保护模式。虽然真实模式运行的时间很短,但是它确实运行了。悄悄告诉你一个秘密,就是8086模式下第21条地址总线的(A20门),通过它计算机从实模式切换到保护模式。(商盟百科网chnore.com)
计算机从启动到真正运行之前都处于实模式。在这种模式下,32条地址总线中只有20条被使能。通过这种启用的20条地址总线,最多可以访问1M大小的常规存储器。1M不算多,但是细算一下,这个1M包括了BIOS-ROM和一些内存条。如果需要访问1M以上的内存,需要启用更多的地址总线(8086和8088除外,只有20条地址总线)。
综上所述,实模式是为了兼容历史遗留下来的程序而做出的让步,这也是为什么你打开电脑需要这么长时间的原因。物理地址= 4位左段地址偏移地址
保护模式
严格来说,保护模式是286处理器中首次引入的概念,也称为“虚拟地址保护模式”。当然,在286时代,保护模式只是一个概念,真正出现在80386处理器上,虽然16位286也可以模拟32位保护模式。286的虚拟保护模式导致了混乱。为了避免这样的事情,286的虚拟保护模式从80386开始就被彻底抛弃了。从这个角度来说,286是一个过渡产品。(商盟百科网chnore.com)
说了保护模式的出现,现在来说说它的好处。简单来说就是在进程所属的内存中安装了一扇门,程序只能访问自己的地址空。比如你在电脑上同时听音乐(音乐软件:任务A)和玩游戏(游戏客户端:任务B),系统会给每个音乐软件和游戏客户端分配一段内存空。在保护模式下,音乐软件不可能访问游戏客户端的数据。我们再做一个假设。如果两个软件兼容(实际上不可能),没有保护模式的介入会怎么样?软件突然变成了打怪物的角色,本来要打怪物的游戏却放出了音乐。
以上例子是为了说明一些问题,不要当真。当然好处不仅仅是对进程内存的保护,还有硬件的分页机制和虚拟存储。这么多特性构成了保护模式,旨在提高系统的多任务性和稳定性。
当然,保护模式下的寻址与真实模式完全不同。在实模式下,偏移地址存储在段寄存器中。在保护模式下,段寄存器存储的不是偏移地址,而是指向GDT(全局描述符表)和LDT(局部描述符表)的指针。简单来说,偏移地址的赋值已经被这两个货取代了,只有在GDT和LDT的帮助下才能获得真实的物理地址。
虚拟8086模式(商盟百科网chnore.com)
解释真实模式相对来说要简单很多。说白了就是运行在保护模式下的虚实模式。我们都知道Intel CPU从8086开始就编写了很多应用程序,为了保证这些历史遗留下来的程序在新版CPU上完美运行,虚拟8086模式出现了。虽然有些程序在CPU添加(启动)和复位(重启)时已经在实模式下运行,但远远不能满足需求。
在程序真正运行后,也就是处于保护模式时,如果用户运行较老的程序,比如8086开发的程序,系统会自动进入虚拟8086模式运行这些程序。虽然这看起来和真实模式差不多,但实际上是不同的。最大的区别是虚拟8086模式支持多任务,每个人的任务都在真实模式下工作。
x86是多少位(什么是x86架构)