Professional Documents
Culture Documents
CH 1
CH 1
存储器:不仅能存放数据,也能存放指令,形式
上数据和指令没有区别
冯诺依曼体系结构基本思想 计算机有运算器、存储器、控制器、输入和输出
控制器:能够自动执行指令
设备五个基本部件组成
运算器:能进行算术运算
计算机内部以二进制的形式表示指令与数据
主存储器:用来存放指令和数据的元件
算术逻辑单元:用来进行算术逻辑运算的元件
吞吐率:单位时间内完成的工作量
控制器:逐条取出指令并进行译码的元件
带宽:单位时间内传输的信息量 计算机性能的定义
通用寄存器:临时存放从主存取来的数据或者运
算结果的寄存器
响应时间:作业提交开始到作业完成所用的时间
标识寄存器:临时存放标识信息的寄存器
用户CPU时间:真正用于运行用户代码的CPU时
间 指令寄存器:临时保存从主存中取来的指令的寄
冯诺依曼基本结构 计算机的基本硬件结构
存器
系统CPU时间:为了执行用户程序而需要CPU运
执行时间
行操作系统的时间 程序计数器:保存将执行的下一条指令的地址的
冯诺依曼体系结构
寄存器
其他时间:等待I/O操作完成的时间或CPU用于执
行其他用户程序的时间 中央处理器:控制部件、运算部件和各类寄存器
计算机性能的测试
互联组成的集成电路
时钟周期:CPU主脉冲信号的宽度
主存单元地址:主存中每个存储单元的编号,也
时钟频率:CPU时钟周期的倒数,也称为CPU的 称为主存地址
描述CPU性能的概念和指标
主频
总线:连接不同部件进行信息传输的介质
CPI:执行一条指令所需的平均时钟周期数
取数指令:从主存单元中取出数据存放到通用寄
MIPS:指令速度的计量单位,含义是平均每秒执 存器中的指令
行百万条指令 计算机系统性能评价
指令:用0和1表示的一串0/1序列,用来指示CPU 存数指令:将通用寄存器的内容写入主存单元的
GFLOPS 完成一个特定的原子操作 指令
用指令执行速度进行性能评估
TFLOPS 传送指令:将一个寄存器的内容送到另一个寄存
:指令速度的计量单位,含义是平均每
FLOPS
M 器中的指令
PFLOPS 秒执行百万次浮点运算操作,使用操作次数衡量
而不是指令数
指令通常被划分成多个字段,有操作码和地址码
等字段,操作码字段指出指令的操作类型,地址
EFLOPS 程序和指令的执行过程
码字段指出指令所处理的操作数的地址,例如寄
ZFLOPS 存器编号或者主存单元编号等
基准程序:进行计算机性能评估的一种工具 指令执行的各个阶段包括若干个微操作,微操作
需要相应的控制信号
用基准程序进行性能评估
S :一个应用最广泛最全面的测评基准程序
PEC
时钟周期:时钟信号的宽度,一条指令执行的时
集,包括一组标准的测试程序,标准输入和测试
间包含一个或者多个时钟周期
报告
Amdahl定律:描述部分硬件或者软件性能增强对 CPU中所有微操作都由时钟信号进行定时
于总体的性能的改进程度
改进后的执行时间=(改进部分执行时间/改进的倍
数)+未改进部分的时间
Amdahl定律 第 章 计算机系统概述
1 机器语言:使用特定的计算机规定的指令格式而
形成的0/1序列称为机器语言
整体改进的倍数=改进前的执行时间/改进后的执 机器语言程序:机器能够理解并执行的代码,也
行时间 称为机器代码
机器指令:机器语言程序中的指令,由0/1组成
指令集体系结构(ISA):也称为体系结构或者系统
结构,包含了软件和硬件之间结构的定义,是计 汇编语言:使用简短的英文符号和机器指令建立
算机硬件和软件之间的桥梁 对应的关系,方便程序员编写和阅读的语言
指令集体系结构定义了计算机可执行的所有指令 汇编指令:机器指令对应的符号表示
的集合,每条指令规定了计算机能过做的操作,
以及指令处理的操作数存放的地址空间和操作数
计算机系统抽象层的转化
使用汇编语言编写的程序必须先被转化成机器语
程序设计语言和翻译程序
的类型 言程序,才能被计算机执行
指令集体系结构是软件能够感知到的部分 机器级语言:与特定的机器结构相关的语言,汇
编语言和机器语言都统称为机器级语言
微体系结构:软件不可感知的部分,是指令集体
系结构的具体实现,位体系结构是由逻辑电路实 翻译程序:将高级编程语言转化成机器语言的程
现的,逻辑电路是由器件技术实现的 序,主要有汇编程序、解释程序和编译程序三种
计算机系统的层次结构
类型
应用程序二进制接口(ABI):为运行在特定的ISA
以及特定的操作系统上的应用程序规定的一种机 汇编程序:将汇编语言源程序翻译成机器语言的
器目标代码层接口 程序,也称为汇编器
ABI包含了特定ISA和特定操作系统上运行的应用 解释程序:将源程序中执行语句逐条翻译成机器
程序所对应的目标代码生成时必须遵守的约定 指令并立即执行的程序,也称为解释器
过程调用约定 计算机系统核心层之间的关联
编译程序:将高级程序设计语言翻译成汇编语言
或者机器语言的程序,也称为编译器
系统调用约定
预处理阶段:对源程序以字符 # 开头的命令进行
目标文件二进制格式 A 描述了应用程序和操作系统之间、应用程序和
BI
调用的库之间、不同组成部份之间在较低层次上
程序的开发与运行
处理,将.h文件内容嵌入到源程序文件中,输出
的结果还是一个源程序文件
函数库约定 的机器级代码接口
编译阶段:编译程序对预处理后的源程序进行编
寄存器使用规定 译,生成一个汇编语言文件
从hello.c源程序到可执行文件的几个阶段
虚拟地址空间划分 汇编阶段:汇编程序对汇编语言源程序进行汇
编,生成一个可重定位目标文件
链接阶段:链接程序将多个可重定位目标文件和
标准库中的可重定位目标文件合并成为一个可执
行目标文件
shell程序从用户键盘输入的每个字符逐一读进寄
存器中
CPU将这些读到的字符送到主存储器中,并且缓
存成字符串"./hello"
shell从键盘接收到Enter信号的时候,调出操作系
可执行文件hello的启动和执行的几个阶段 统中相应的服务例程,由内核将磁盘上的可执行
文件hello加载到存储器
内核加载完可执行文件中的指令和数据以后,将
可执行文件的第一条指令送往PC
然后CPU开始执行可执行文件hello