X86:2:X86处理器架构

news/2025/2/22 1:56:12/

文章目录

    • 2.1.3读取内存
    • 2.1.4加载并执行程序
  • 2.2 32位x86处理器
    • 2.2.1操作模式
  • 2.3 64位X86-64处理器

2.1.3读取内存

  • 从内存读取一个值经
  • 将想要读取的值的地址放到地址总线
  • 设置处理器RD(读取)引脚(改变RD的值)
  • 等待一个时钟周期给存储器芯片进行响应
  • 将数据从数据总线复制到目标操作数

  • 上述每一步常常只需一个时钟周期
  • 1.2GHz意味时钟节拍或振荡为每秒12亿次。
  • 因此,4个时钟周期也是非常快的。
  • 但与CPU寄存器相比,
    • 访问寄存器一般只需要1周期

  • CPU设计者很早就指出
    • 绝大多数程序都需要访问变量,计算机内存成为了速度瓶颈
  • 当CPU开始执行一个程序时,它会预先将后续(比如)一千条指令加载到 cache

开玩笑,能加载这么多条啊??

  • 如果这种情况重复发生在一个代码块中,则 cache中就会有相同的指令
  • 当处理器能够在 cache存储器中发现想要的数据,则称为 cache命中
  • 如果CPU在 cache中没有找到数据,则称为 cache未命中

  • x86系列中的cache有两类:
    • 一级 cache(主cache)位于CPU上;
    • 二级cache速度略慢,通过高速数据总线与CPU相连。
  • 这两种 cache以最佳方式工作

  • 还有一个原因使得 cache存储器比传统RAM速度快
  • cache存储器是由静态RAM的特殊存储器芯片构成
  • 贵,不要为了保持其内容不断刷新
  • 动态RAM就需要持续刷新。
    • 速度慢一些,更便宜

2.1.4加载并执行程序

  • 程序执行前,要一种工具程序将其加载到内存,程序加载器( program loader)。
  • 加载后,OS必须将CPU指向程序的入ロ,即程序开始执行的地址。

  • OS在当前磁盘目录下搜索程序的文件名。
    • 找不到,则在预定目录列表(称为路径(path)下搜索文件名。
    • OS无法检索到文件名时,它会发出一个出错信息。

  • 如果程序文件被找到,OS就访问磁盘目录中的程序文件基本信息,包括文件大小,及其在磁盘驱动器上的物理位置。

  • OS确定内存中下一个可使用的位置,将程序文件加载到内存。
  • 为该程序分配内存块,并将程序大小和位置信息加入表中(有时称描述符表( descriptor table)。
  • 另外,OS可能调整程序内指针的值,使得它们包括程序数据地址。

  • OS开始执行程序的第一条机器指令(程序入口)。当程序开始执行后,就成为ー个进程( process)OS为这个进程分配一个标识号(进程ID),用于在执行期间对其追踪。

  • 进程自动运行。
  • OS的工作是追踪进程的执行,并响应系统资源的请求。
  • 资源包括内存、磁盘文件和输人输出设备等。

  • 进程结東后,就会从内存中移除。

2.2 32位x86处理器

  • 所有x86处理器的基本架构特点
  • Intel IA-32系列中的成员和所有32位AMD处理器

2.2.1操作模式

  • x86处理器三个主要
    • 保护模式、
    • 实地址模式
    • 系统管理模式;
  • 一个子模式:虚拟8086模式
    • 这是保护模式的特殊情

  • 保护模式是处理器的原生状态
  • 所有指令和特性都可用的
  • 分配给程序的独立内存区域被称为段,
  • 处理器会阻止程序使用自身段范围之外的内存

  • 虚拟8086模式
  • 保护模式下处理器可以在一个安全环境中直接执行实地址模式软件
    • 如MS-DOS程序
  • 如果一个程序崩溃了或是试图向系统内存区域写数据,
    • 都不会影响到同一时间内执行的其他程序
  • 现代OS可同时执行多个独立的虚拟8086会话

  • 实地址模式实现的是早期 Intel处理器编程环境
  • 但增加了一些其他的特性,如切换到其他模式
  • 当程序需要直接访问系统内存和硬件设备时
    • 这种模式就很有用

  • 系统管理模式(SMM)向OS
    • 提供了实现诸如电源管理和系统安全等功能的机制
  • 这些功能通常是由计算机制造商实现的,
    • 他们为了一个特定的系统设置而定制处理器

2.3 64位X86-64处理器

  • 所有使用x86-64指令集的64位处理器的基本架构细节
  • Intel 64和AMD64处理器
  • 指令集是已讨论的x86指令集64位扩展
  • 1)向后兼容x86指令集
  • 2)地址长度64位,虚拟地址空间 2 64 2^{64} 264字节
    • 按照当前芯片实现情况,只能用地址低48位
  • 3)可用64位通用寄存器
    • 允许指令有64位整数操作数
  • 4)比x86多8个通用寄存器
  • 5)物理地址为48位,支持256T RAM


http://www.ppmy.cn/news/246865.html

相关文章

ARM与X86 CPU架构区别

CISC(复杂指令集计算机)和RISC(精简指令集计算机)是当前CPU的两种架构。它们的区别在于不同的CPU设计理念和方法。早期的CPU全部是CISC架构,它的设计目的是 CISC要用最少的机器语言指令来完成所需的计算任务。 RISC和CISC是设计制造微处理器的两种典型技术&#xff…

Linux x86 和ARM什么区别?

问题: 最近在用三星的一款i5处理器的Windows平板,和iPad,以及其他使用ARM处理器的手机相比,发热量大很多,甚至需要借助风扇来散热,耗电量也大了不少。 那么就很奇怪,在主频相差不大&#xff0…

x86,x86_64,ARM是什么?

http://in.ali213.net/news/201603/1057.html 它们都是处理器CPU. 处理器(CPU)x86x86_64ARM位数3264 性能(速度/功耗) 常用设备台式机台式机手机

平板电脑的ARM和X86架构

平板电脑(英文:Tablet Personal Computer,简称Tablet PC、Flat Pc、Tablet、Slates),是一种小型、方便携带的个人电脑,以触摸屏(也称为数位板技术)作为基本的输入设备。平板电脑介于…

解析Windows 8 ARM版平板电脑

解析Windows 8 ARM版平板电脑 为了吸引用户购买,ARM版Windows 8平板会包含Office 15程序,只是若用户可免费取得,则部分成本可能得由制造商来吸收。微软是在1年前宣布开发可用在ARM架构芯片的Windows 8版本,ARM芯片常见用在平板等移…

X86架构与Arm架构的主要区别分析

​ X86架构和ARM架构是主流的两种CPU架构,X86架构的CPU是PC服务器行业的老大,ARM架构的CPU则是移动端的老大。 X86架构和arm架构实际上就是CISC与RISC之间的区别,很多用户不理解它们两个之间到底有哪些区别,实际就是它们的领域不…

X86架构与Arm架构区别

X86架构与Arm架构区别 X86架构和ARM架构是主流的两种CPU架构,X86架构的CPU是PC服务器行业的老大,ARM架构的CPU则是移动端的老大。X86架构和arm架构实际上就是CISC与RISC之间的区别,很多用户不理解它们两个之间到底有哪些区别,实际…

ARM和x86比较

信不信,随便逮住一个人问他知不知道CPU,我想他的答案一定会是肯定的,但是如果你再问他知道ARM和X86架构么?这两者的区别又是什么?绝大多数的人肯定是一脸懵逼。今天小编就带你深入了解CPU的这两大架构:ARM和X86。以后出去装X就靠…