- 1 x86的历史
- 1.1 x86的发展历程
- 1.2 x86_64
- 1.2.1 AMD 64
- 1.2.2 Intel 64
- 2 操作系统概述
1 x86的历史
从1978年8086/8088处理器的问世到现在的Core 2 Duo和Core 2 Quad, 以及Xeon 5300和7300系列处理器, Intel x86体系接口已经经历了整整30年的历史.
1.1 x86的发展历程
Intel公司是世界上最大的CPU制造厂商,占据了80%以上的CPU市场份额。本节以Intel公司的处理器为例介绍x86的发展历程,如图1-1所示。
x86的发展历程:
1978年,最早的x86处理器8086初次登场。8086是16位的处理器,这个位数指的是CPU GPR(General-Purpose Register,通用寄存器)的数据宽度为16位。8086处理器拥有16位的寄存器和16位的外部数据总线,使用20位地址寻址(拥有1MB的地址空间)。
在20世纪80年代初,IBM选择了8086的衍生产品8088作为IBM PC的处理器。IBM的这一举动给x86带来了巨大的发展机遇,并且帮助它成为行业的标准直到今天。
1982年, Intel发布80286处理器, 引入了保护模式的概念.
1985年后, Intel公司发布了x86体系结构下的第一款32位处理器80386, 并且引入虚拟内存.
1989年, 80486发布, 采用了5级流水线机制, 并且引入了片上一级缓存和能量管理.
当时数字不能作为商标, 1993年, Intel公司发布第一款奔腾处理器(Pentium), 此款处理器在80486基础上, 进一步增大一级缓存, 并将其分成指令缓存和数据缓存两部分, 进一步加快处理器对主存的访问时间. 同时, 奔腾处理器还引入了MMX技术, 使得处理器对多媒体处理的支持进一步增强.
1995到1999年, Intel发布一系列基于x86体系结构的处理器, 这一系列被称为P6家族处理器, 包括奔腾Pro(Pentium Pro), 奔腾2(Pentium Ⅱ), 奔腾2至强(Pentium Ⅱ Xeon), 赛扬(Celeron), 奔腾3(Pentium Ⅲ)以及奔腾3至强(Pentium Ⅲ Xeon)处理器. P6家族采用了超标量(Superscalar)技术, 以乱序执行的方式进一步增强了处理器的速度.
从2002年开始到2006年, 奔腾4(Pentium 4)家族处理器(!!!一系列!!!)占据了主导地位. 奔腾4家族的处理器基于NetBurst微处理结构, 在提升性能同时, 进一步增强了对多媒体处理的支持, 并引入超线程的概念(Hyper-Threading), 引领单核处理器的性能走向极致. 与此同时, 在奔腾4的672和662处理器上, Intel还首次加入了虚拟化支持, 即Intel VT技术. 也是在这段时期,由于AMD发展的64位扩充技术的刺激,Intel公司开始推出64位版x86。
从2006年起, 处理器进入多核时代(Multicore), Intel相继发布Core Duo和Core 2 Duo系列处理器.
至此, x86体系结构走过30年历程.
1.2 x86_64
x86-64 是 x86 架构的延伸产品,是一种 64 位微处理器架构及其相应的指令集。 在x86-64出现以前,Intel与惠普联合推出IA-64架构,此架构不与x86兼容,且市场反应冷淡。于是,与 x86 兼容的 x86-64 架构应运而生。1999 年, AMD首次公开64位集为IA-32提供扩展,称为x86-64(后来改名为AMD64)。此架构后来也为Intel所采用,也就是现在的Intel 64。
x86-64能有效地把 x86架构移植到 64位环境,并且兼容原有的 x86应用程序,市场前景广阔。外界使用x84-64或者x64称呼这个64位架构,以保持中立,不偏袒任何一家厂商。
1.2.1 AMD 64
AMD 64指令集被应用在Athlon 64、Athlon 64 FX、Athlon 64 X2、Turion 64、Turion 64 X2、Opteron及较新款的Sempron和Phenom处理器上。
其主要特点有:支持64位通用寄存器、64位整数及逻辑运算和64位虚拟地址。AMD 64架构相比之前的32位架构有如下重大改进。
-
新增寄存器。
-
地址宽度加长。
-
新增扩充指令集SSE2、SSE3。
-
新增“禁止运行”位(No-Execute,NX bit):此位的设置可以防止蠕虫病毒的缓存溢出攻击。
1.2.2 Intel 64
Intel 64指令集被应用于Pentium 4、Pentium D、Pentium Extreme Edition、Celeron D、Xeon、Intel Core 2、Intel Core 2 Quad、Intel Core i3、Intel Core i5及Intel Core i7处理器上。
Intel 64架构加入了额外的寄存器和其他改良的指令集,可使处理器直接访问超过4GB的存储器,允许运行更大的应用程序。通过64位的存储器地址上限,其理论存储器容量上限达16 000 000TB(16EB),但大多数操作系统和应用程序在可见的未来都用不到如此巨大的地址空间,在初期的应用上并未支持完整的64位地址。Intel 64架构相比之前的32位架构有如下重大改进。
- 新增寄存器。
- 地址宽度加长。
- 新增改良指令集。
- 新增“禁止运行”位(eXecute Disable,XD bit):相当于AMD 64的NX bit,通过设置此位可以防止蠕虫病毒的缓存溢出攻击。
2 操作系统概述
操作系统对下负责管理平台硬件, 对上向应用程序提供标准接口. 操作系统中最重要的部分称为操作系统内核, 运行在CPU最高的特权级上, 可访问系统的一切资源, 称内核运行的状态是内核态. 应用程序通常运行在CPU最低的特权级上, 只能访问部分资源, 此种状态称为用户态.
操作系统利用平台架构提供的各种功能, 使用硬件资源, 其实现和平台架构紧密相关.