文章目录

  • 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的工作是追踪进程的执行,并响应系统资源的请求。
  • 资源包括内存、磁盘文件和输人输出设备等。

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


C86架构高性能处理器 x86架构的处理器有哪些?_物联网

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位,虚拟地址空间C86架构高性能处理器 x86架构的处理器有哪些?_物联网_02字节
  • 按照当前芯片实现情况,只能用地址低48位
  • 3)可用64位通用寄存器
  • 允许指令有64位整数操作数
  • 4)比x86多8个通用寄存器
  • 5)物理地址为48位,支持256T RAM