您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
x86是多少位(什么是x86架构)
模式,架构,地址x86是多少位(什么是x86架构)
发布时间:2016-12-08加入收藏来源:互联网点击:
很多朋友想了解关于保护模式的一些资料信息,下面是小编整理的与保护模式相关的内容分享给大家,一起来看看吧。很多朋友想了解关于架构的一些资料信息,下面是小编整理的与架构相关的内容分享给大家,一起来看看吧。
我们都知道英特尔生产了无数的CPU产品。如果按照架构来分类的话,8086也是一样的,因为8086之前没有架构这个概念。在这漫长的一段时间里,直到今天,总有两种架构,32位架构(又称x86)和64架构.说到架构,我们不得不说每种架构下的模式。虽然很多人都在写相关的文章,但是看完之后还是很迷茫。不知作者境界是否太高。今天,如果你敢谈自己的理解,难免会有疏忽。不要责怪它。
首先,我们来谈谈这些特殊的处理器:8086,80186和80286.虽然这些处理器都是16位的,但它们也包含在32位架构的范围内。真正的第一款32位的处理器是80386**可以说是32位架构是16架构的扩展版本和64位架构是16位架构扩展的扩展.毫不夸张地说,现在连新的64位CPU都依赖于x86架构(x86 16位架构)。
应该解释一下这是如何做到的。市场上所谓的32位和64位其实指的是寄存器能够存储的最大数是32位或者是64位.当然,这里所说的32位和64位并不是生活中的十进制数,而是计算机中的二级数。不要对此感到困惑。
众所周知,CPU有匹配的指令集,没有指令集的CPU是没用的。所以要从8086开始。毕竟是一个“最初蓝本”。8086使用16位寄存器,80386使用32位寄存器。为了坚持兼容的设计理念,设计者对8086原有的指令集进行了扩展。也就是说,从x86-16到x86-32,的过渡和这些扩展(新增加的)指令是为了使寄存器的额外部分正常工作。毕竟以前是16,现在是32,多了一倍。64位CPU也是如此。(当然这些不仅仅体现在指令集上,还需要额外的技术,软硬件的支撑)
32位架构
实模式
好了,大前提终于完成了。现在我们来谈谈32位架构的真实模式(也叫真8086模式或http://www . Sina . com/)。
如上所述,32位架构是基于16位架构的扩展版本。虽然这样可以保证CPU能够运行早期遗留下来的相对“低端”的程序,但是也学到了当时8086的一些“生活习惯”,比如视野比较小(寻址1M)、思维比较直(单任务)。
可以说,这份来自8086的“遗产”,从80386年开始,就一代一代地传承了下来。你不知道的是,在启动重启的时候(也只有在启动重启的时候),电脑会悄悄进入实模式,然后切换到保护模式。虽然真实模式运行的时间很短,但是它确实运行了。我告诉你一个秘密,是关于8086模式的21号地址总线(A20门)。正是通过这一点,计算机从实模式切换到保护模式。
计算机从开机到不真正运行时都处于实模式。在这种模式下,32条地址总线中只有20条被使能。通过这些启用的20个地址总线,可以访问高达1M的常规内存,这并不多。不过这1M包括BIOS-ROM和一些内存条。如果需要访问1M以上的内存,需要启用更多的地址总线(8086和8088除外,只有20条地址总线)。
综上所述,实模式是为了兼容历史遗留的程序而做出的让步,这也是你开机需要这么长时间(露齿)的原因。快速8086模式
物理地址=左移4位的段地址 偏移地址
严格来说,保护模式是在保护模式,引入的第一个概念,也称为“http://www . Sina . com/”
”。当然在286时代保护模式只是一种概念,真正出现是在80386处理器上,虽然16位的286也可以模拟出32位的保护模式。286的虚拟保护模式导致了混乱出现,为了避免这样的事发生,从80386开始就完全抛弃了286的这种虚拟的保护模式,从这一点来说286就是一个过渡产品。说完了保护模式的出现,现在我们来说说它的好处。简单来说就是给进程所属的内存装了一道门,程序只能访问属于自己的地址空间。打个比方来说,在电脑上同时听音乐(音乐软件:任务A)和玩游戏(游戏客户端:任务B),系统会给音乐软件和游戏客户端各分配一段内存空间。在保护模式下,音乐软件是不可能访问到游戏客户端的数据的,不妨再做个假设,假如这两个软件是兼容的(实际上根本不可能),没有保护模式的干预,会出现什么情况?音乐软件突然变成人物去打怪了,本该去打怪的游戏却放出了音乐。
上面的例子旨在说明一些问题,千万不要当真。好处当然不止对进程内存的保护,还有对分页机制和硬件的虚拟存储什么的,这么多的特性构成了保护模式,保护模式是为了提升系统的多任务和系统的稳定性。
当然保护模式下的寻址和实模式可以说完全不同了,在实模式下,段寄存器内存储的是偏移地址,在保护模式下,段寄存器里存储的不在是偏移地址,而是一个指向GDT(全局描述符表)和LDT(局部描述表)的指针。简单来说,就是分配偏移地址的工作被这两货给取代了,也只有在GDT和LDT的帮助下才能获得真正的物理地址。
虚拟8086模式
解释完实模式这个解释起来就相对的简单多了,说白了就是运行在保护模式下的虚拟的实模式。我们都知道Intel CPU从8086年代就已经编写了许多应用程序,为了保证这些历史遗留的程序在新版的CPU上比较完美地运行,就出现了虚拟8086模式,虽然在CPU加点(开始)和复位(重启)的时候已经在实模式下运行了一些程序,但是这远远不能满足需求。
在程序真正运行起来后,也就是处于保护模式下时,用户如果运行了比较老的程序,比如8086年代开发的程序,系统就会自动进入虚拟8086模式来运行这些程序。虽然这看起来和实模式差不多,但事实上还是有区别的,最大的区别在于虚拟的8086模式支持多任务,且每个人任务都是以实模式的方式工作的。
本文到此结束,希望对大家有所帮助呢。
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |