小土刀

【计算机系统导论】对照表

尚未整理


  • arithmetic and logic unit, ALU: 算数逻辑单元
  • control processing unit, CPU: 中央处理单元,中央处理器
  • computer architecture: 计算机体系结构,计算机系统结构
  • computer organization: 计算机组成,计算机组织
  • control unit: 控制器,控制单元
  • main memory: 主存
  • processor: 处理器
  • registers: 寄存器
  • system bus: 系统总线
  • accumulator AC: 累加器
  • Amdahl’s law
  • benchmark: 基准程序
  • chip: 芯片
  • data channel: 数据通道
  • embedded system: 嵌入式系统
  • execute cycle: 执行周期
  • fetch cycle: 取指周期
  • instruction buffer register IBR: 指令缓冲寄存器
  • instruction register IR: 指令寄存器
  • instruction set: 指令集
  • integrated circuit IC: 集成电路
  • memory address register MAR: 存储器地址寄存器
  • memory buffer register MBR: 存储器缓冲寄存器
  • microprocessor: 微处理器
  • multicore: 多核
  • multiplexor: 多路选择器
  • opcode: 操作码
  • original equipment manufacturer OEM: 原始设备制造商
  • program control unit: 程序控制器,程序控制单元
  • program counter PC: 程序计数器
  • SPEC: 系统性能评估公司
  • stored program computer: 存储程序式计算机
  • upward compatible: 向上兼容
  • wafer: 晶片
  • word: 字
  • address bus: 地址总线
  • asynchronous timing: 异步时序
  • bus arbitration: 总线仲裁
  • bus width: 总线宽度
  • centralized arbitration: 集中式仲裁
  • data bus: 数据总线
  • disable interrupt: 禁止中断
  • distributed arbitration: 分布式仲裁
  • instruction cycle: 指令周期
  • instruction execute: 指令执行
  • instruction fetch: 取指令
  • interrupt: 中断
  • interrupt handler: 中断处理
  • interrupt service routine: 中断服务程序
  • peripheral component interconnect PCI: 外设部件互连
  • synchronous timing: 同步时序
  • system bus: 系统总线
  • associative mapping: 全相联映射
  • high-performance computing, HPC: 高性能计算
  • spatial locality: 空间局部性
  • temporal locality: 时间局部性
  • write back: 写回
  • write through: 写直达
  • error-correcting code, ECC: 纠错码
  • Hamming code: 汉明码
  • nonvolatile memory: 非易失性存储器
  • single-error-correcting(SEC) code: 单纠错码
  • single-error-correcting, double-error-detecting(SEC-DED) code: 单纠错双坚错码
  • soft error: 软差错
  • syndrome: 故障,综合故障
  • volatile memory: 易失性存储器
  • floppy disk: 软磁盘
  • magnetoresistive: 磁阻
  • multiple zoned recording: 多重区域记录
  • optical memory: 光存储器
  • pit: 凹坑
  • platter: 盘片
  • rotational delay: 旋转延迟
  • sector: 扇区
  • serpentine recording: 蛇形记录
  • striped data: 条带数据
  • substrate: 衬底
  • cycle stealing: 周期窃取
  • FireWire: 高速串行连接总线标准
  • InfiniBand: 高端宽带 I/O 标准
  • isolated I/O: 分离式 I/O
  • memory-mapped I/O: 存储器映射式 I/O
  • multiplexor channel: 多路转换通道
  • parallel I/O: 并行 I/O
  • peripheral device: 外围设备
  • selector channel: 选择通道
  • batch system: 批处理系统
  • demand paging: 请求分页
  • job control language, JCL: 作业控制语言
  • process control block: 进程控制块
  • resident monitor: 驻留的监控程序
  • segmentation: 分段
  • thrashing: 抖动
  • time-sharing system: 分时系统
  • arithmetic shift: 算术移位
  • biased representation: 移码表示法
  • denormalized number: 非规格化数
  • dividend: 被除数
  • divisor: 除数
  • exponent overflow: 阶值上溢
  • exponent underflow: 阶值下溢
  • guard bits: 保护位
  • mantissa: 尾数(有效值)
  • minuend: 被减数
  • multiplicand: 被乘数
  • negative overflow: 负上溢
  • negative underflow: 负下溢
  • quotient: 商
  • radix point: 小数点
  • sign bit: 符号位
  • sign-magnitude representation: 符号-幅值表示法
  • subtrahend: 减数
  • accumulator: 累加器
  • operand: 操作数
  • operation: 操作,运算
  • packed decimal: 压缩的十进制数
  • procedure call: 过程调用
  • procedure return: 过程返回
  • reentrant procedure: 可重入过程
  • skip: 跳步
  • autoindexing: 自动变址
  • base-register addressing: 基值寄存器寻址
  • displacement addressing: 偏移寻址
  • effective address: 有效地址
  • immediate addressing: 立即寻址
  • indexing: 变址
  • indirect addressing: 间接寻址
  • instruction format: 指令格式
  • postindexing: 后变址
  • preindexing: 前变址
  • register addressing: 寄存器寻址
  • register indirect addressing: 寄存器间接寻址
  • relative addressing: 相对寻址
  • branch prediction: 分支预测
  • condition code: 条件码
  • delayed branch: 延迟分支
  • instruction cycle: 指令周期
  • instruction pipeline: 指令流水线
  • instruction prefetch: 指令预取
  • program status word: 程序状态字
  • high-level language: 高级语言
  • register file: 寄存器组
  • register windows: 寄存器窗口
  • SPARC: 可扩展处理器体系结构
  • flow dependency: 流相关性
  • in-order issue: 按序发射
  • in-order completion: 按序完成
  • micro-operations: 微操作
  • out-of-order completion: 乱序完成
  • out-of-order issue: 乱序发射
  • output dependency: 输出相关性
  • procedural dependency: 读写相关性
  • retire: 回收
  • superpipelined: 超级流水线式
  • write-read dependency: 写读相关性
  • write-write dependency: 写写相关性
  • hardwired implementation: 硬布线实现
  • simultaneous multithreading, SMT: 并发多线程
  • superscalar: 超标量

  • 系统软件 systems software: 提供常用服务的软件,包括操作系统、编译程序、加载程序和汇编程序
  • 操作系统 operating system: 为了使程序更好地在计算机运行而管理计算机资源的监控程序
  • 编译程序 compiler: 将高级语言翻译为计算机所能识别的机器语言的程序
  • 位 bit: 0 或 1,信息的基本组成元素
  • 指令 instruction: 计算机硬件所能理解并服从的命令
  • 汇编程序 assembler: 将指令由助记符翻译成二进制形式的程序
  • 汇编语言 assembly language: 以助记符形式表示的机器指令
  • 机器语言 machine language: 以二进制元形式表示的机器指令
  • 高级编程语言 high-level programming language: 诸如 C C++ Java 等可移植的语言,由一些单词和代数符号组成,可以由编译器转换为汇编语言
  • 输入设备 input device: 为计算机提供信息的装置,如键盘和鼠标
  • 输出设备 output device: 输出计算结果给用户或其他计算机的装置
  • 主板 motherboard: 包含一组继承电路芯片的塑料板,包括处理器、缓存、内存以及连接 IO 设备的接口
  • 集成电路 integrated circuit: 也叫芯片,一种将几十个至几百万个晶体管连接起来的设备
  • 内存 memory: 程序运行时的存储空间,同时还存储程序运行时所需的数据
  • DRAM dynamic random access memory: 动态随机访问内存,可随机访问任何地址的内存
  • 中央处理器单元 central processor unit: 也被称为处理器,处理器是主板上最活跃的部分。严格按照程序中的指令运行,将数字相加,测试结果,并按结果发出控制信号使 IO 设备动作等
  • 数据通路 datapath: 处理器中执行算术操作的部分
  • 控制器 control: 处理器中根据程序的指令,指挥数据通路、存储器和 IO 设备的部分
  • 缓存 cache memory: 缓存是一种小而快的存储器,一般作为大而慢的存储器的缓冲
  • 静态随机访问存储器 static random access memory: 一种存储器的集成电路,但是更快,比 DRAM 集成度低
  • 指令集体系结构 instruction set architecture: 也叫体系结构。是低层次软件和硬件之间的抽象接口,包含了需要写机器语言程序正确运行的所有信息,包括指令、寄存器、存储访问和 IO 等
  • 应用二进制接口 application binary interface: 用户部分的指令加上程序员调用的操作系统接口,定义了二进制层次可移植的计算机的标准
  • 实现 implementation: 遵循体系结构抽象的硬件
  • 易失性内存 volatile memory: 类似 DRAM 的内存,仅在加点时保存数据
  • 非易失性内存 nonvolatile memory: 在掉电时仍可以保持数据的内存用于存储运行间的程序,例如磁盘
  • 主存储器 main memory: 用来保持运行中的程序,在现代计算机中一般由 DRAM 组成
  • 二级存储器 secondary memory: 非易失性存储器,用来保存两次运行之间的程序和数据;在现代计算机中,一般由磁盘组成
  • 磁盘 magnetic disk: 也叫硬盘,是使用磁介质材料构成的以旋转盘片为基础的非易失性存储设备
  • 闪存 flash memory: 一种非易失性半导体内存,价格和速度均低于 DRAM,但比磁盘要快
  • 局域网 local area network: 一种在一定地理区域使用的传输数据的网络
  • 广域网 wide area network: TODO
  • 真空管 vacuum tube: 一种电子元件,是晶体管的前身,因工作的电极封装在 5-10 厘米长的真空玻璃管中而得名,使用电子束传输数据
  • 晶体管 transistor: 一种由电信号控制的简单开关
  • 大规模集成电路 very large-scale integrated circuit: 由数十万到数百万晶体管组成的电路
  • 响应时间 response time: 也叫执行时间(execution time),计算机完成某任务所需的总时间,包括硬盘访问、内存访问、IO 活动、操作系统开销和 CPU 执行时间
  • 吞吐率 throughput: 也叫带宽 bandwidth,性能的另一种度量参数,表示单位时间内完成的任务数量
  • CPI clock cycles per instruction: 每条指令的时钟周期数,表示执行某个程序或者程序片段时每条指令所需的时钟周期平均数
  • 指令数 instruction count: 执行某程序所需的总指令数量
  • 硅 silicon: 一种自然元素,半导体
  • 半导体 semiconductor: 导电能力介于导体和绝缘体之间
  • 硅锭 silicon crystal ingot: 一条由硅晶体组成的棒。直径大约 8-12 英寸,长度约 12-24 英寸
  • 晶圆 wafer: 厚度不超过 0.1 英寸的硅锭片,被用来制造芯片
  • 瑕疵 defect: 晶圆上一个微小的缺陷,或者在图样化的过程中因为包含这个缺陷而导致芯片失效
  • 芯片 die: 从晶圆中切割出来的一个单独的矩形区域,更正式的叫法是芯片(chip)
  • 成品率 yield: 合格芯片数占总芯片数的百分比
  • 工作负载 workload: 运作在计算机上的一组程序,可以直接使用用户的一组实际应用程序,也可以从实际程序中构建
  • 基准测试程序 benchmark: 用于比较计算机性能的程序
  • Amdahl 定律 Amdahl’s law: 阐述了『对于特定改进的性能可能由所使用的改进特征的数量所限制』的规则。它是『收益递减定律』的量化版本(结合经济学?)
  • MIPS million instructions per second: 基于百万条指令的程序执行速度的一种测量。指令条数除以执行时间与 $10^6$ 之积就得到了 MIPS
  • 指令集 instruction set: 一个核定的计算机体系结构所包含的指令集合
  • 存储程序概念 stored-program concept: 多种类型的指令和数据均已数字形式存储于存储器中的概念,存储程序型计算机即源于此
  • 字 word: 计算机中的基本访问单位,通常是 32 位为一组
  • 数据传送指令 data transfer instruction: 在存储器和寄存器之间移动数据的命令
  • 地址 address: 用于在存储器空间中指名特定数据元素位置的值
  • 对齐限制 alignment restriction: 数据地址与存储器的自然边界对齐的要求
  • 二进制数位 binary bit: 二进制状态之一,0 或 1,信息的基本组成单位
  • 最低有效位 least significant bit: 字中最右边的一位
  • 最高有效位 most significant bit: 字中最左边的一位
  • 反码 one’s complement: 使用 10…000(2 进制)表示最大负数,01…111(2 进制)表示最大正数,整数和负数的数量相同,但保留两个零(正零与负零)
  • 偏移表示法 biased notation: 最大的负数用 00…000(2 进制) 表示,最大的正数用 11…111(2 进制)表示,0 一般用 10…000(2 进制) 表示,即通过将数加一个偏移使其具有非负的表示形式
  • 指令格式 instruction format: 二进制数字段组成的指令表示形式
  • 机器语言 machine language: 在计算机系统中用于交流的二进制表示形式
  • 十六进制 hexadecimal: 基数为 16 的数
  • 操作码 opcode: 指令中用来表示操作和格式的字段
  • 按位与 AND: 按位进行与操作,当且仅当两个操作位均为 1 时结果才为 1
  • 按位或 OR: 按位进行或操作,当两个操作位任意一位为 1 时结果就为 1
  • 按位取反 NOT: 按位进行非操作,仅有一个操作数,将 1 变成 0,将 0 变成 1
  • 异或 XOR: 按位进行异或操作,当两个操作位相同时结果为 0,反之为 1
  • 条件分支指令 conditional branch: 该指令先比较两个值,然后根据比较的结果决定是否从程序中的一个新地址开始执行指令序列
  • 基本块 basic block: 没有分支(可能出现在末尾者除外)并且没有分支目标/分支标签(可能出现在开始者除外)的指令序列
  • 转移地址表 jump address table: 又称作转移表(jump table),指包含不同指令序列地址的表
  • 过程 procedure: 根据提供的参数执行一定任务的子程序
  • 跳转和链接指令 jump and link instruction: 跳转到某个地址的同时将下一条指令的地址保存到寄存器中的指令
  • 返回地址 return address: 指向调用点的链接,使过程可以返回到合适的地址
  • 调用者 caller: 调用一个过程并为过程提供必要参数值的程序
  • 被调用者 callee: 根据调用者提供的参数执行一系列存储的指令,然后将控制权返回调用者的过程
  • 程序计数器 program counter, PC: 包含在程序中正在被执行指令地址的寄存器
  • 栈 stack: 被组织成后进先出队列形式并用于寄存器换出的数据结构
  • 栈指针 stack pointer: 指示栈中最近分配的地址的值,它指示寄存器被换出的位置,或寄存器旧值的存放位置
  • 压栈 push: 向栈中增加元素
  • 出栈 pop: 从栈中移除元素
  • 全局指针 global pointer: 指向静态数据区的保留寄存器
  • 过程帧 procedure frame: 也称作活动记录 activation record,栈中包含过程所保存的寄存器以及局部变量的片段
  • 帧指针 frame pointer: 指向给定过程中保存的寄存器和局部变量的值
  • 正文段 text segment: UNIX 目标文件中的段,包含源文件中例程对应的机器语言代码
  • PC 相对寻址 PC-relative addressing: 一种寻址方式,它将 PC 和指令中的常数相加作为寻址结果
  • 寻址模式 addressing mode: 根据对操作数和/或地址的使用不同加以区分的多种寻址方式的一种
  • 数据竞争 data race: 假如来自不同线程的两个内存地址访问同一个地址,它们连续出现,并且至少其中一个是写操作,那么这两个存储访问形成数据竞争
  • 汇编语言 assembly language: 一种符号语言,能被翻译成二进制的机器语言
  • 伪指令 pseudoinstruction: 汇编语言指令的一个变种,常被看做一条汇编指令
  • 符号表 symbol table: 一个用来匹配标记名和指令所在内存字的地址的列表
  • 链接器 linker: 它是一个系统程序,它把各个独立汇编的机器语言组合起来并且解决所有未定义的标记,最后生成可执行文件。
  • 可执行文件 executable file: 一个具有目标文件格式的功能程序,不包含未解决的引用。它可以包含符号表和调试信息。『剥离的可执行程序』不包含这些信息,可能包含加载器所需的重定位信息
  • 加载器 loader: 把目标程序装载到内存中以准备运行的系统程序
  • 动态链接库 dynamically linked libraries, DLL: 在程序执行过程中才被链接的库例程
  • Java 字节码 Java bytecode: 为了解释 Java 程序而设计的指令集中的指令
  • Java 虚拟机 Java Virtual Machine: 解释 Java 字节码的程序
  • 即时编译器 Just In Time compiler: 一类通用编译器的名称,编译器能够在运行时将解释的代码段翻译成宿主计算机上的机器语言
  • 面向对象语言 objected oriented language: 一种针对对象而不是动作的编程语言,或者针对数据而不是逻辑
  • 算数逻辑单元 ALU: 用于执行加法、减法,通常也包括如逻辑与、逻辑或等逻辑操作的硬件
  • 异常 exception: 也叫中断 interrupt,一种打断正常程序执行过程的事件,用于溢出检测
  • 中断 interrupt: 来自处理器外部的异常(在某些体系结构中所有的异常都称为中断)
  • 组合单元 combinational element: 一个操作单元,如与门或 ALU
  • 状态单元 state element: 一个存储单元,如寄存器或存储器
  • 有效 asserted: 信号为逻辑高或真
  • 无效 deasserted: 信号为逻辑低或假
  • 时钟方法 clocking methodology: 用来确定数据相对于时钟何时稳定和有效的方法
  • 边沿出发的时钟 edge-triggered clocking: 一种所有的状态改变发生于时钟沿的时钟机制
  • 控制信号 control signal: 用来决定多选器选择或指示功能单元操作的信号;它与数据信号相对应,数据信号包含由功能单元操作的信息
  • 数据通路部件 datapath element: 一个用来操作或保存处理器中数据的单元
  • 寄存器堆 register file: 包含一系列寄存器的状态单元,可以通过提供寄存器号进行读写
  • 符号扩展 sign-extend: 为增加数据项的长度,将原数据项的最高位复制到新数据多出来的高位
  • 分支目标地址 branch target address: 该地址指定了一个分支,如果分支发生,那么它将称为新的程序计数器 PC
  • 分支发生 branch taken: 分支条件满足而 PC 变为分支目标地址的分支。所有的无条件跳转都是发生的分支
  • 分支未发生 branch not taken: 分支条件不满足而 PC 变为分支指令的下一条指令
  • 延迟的分支 delayed branch: 不管分支条件是否满足,分支指令之后的那条指令总被执行的一种分支
  • 真值表 truth table: 逻辑操作的一种表示方法,即列出输入的所有情况和每种情况下的输出
  • 无关项 don’t care term: 逻辑函数的一个元素,表示输出与该输入取值无关。无关项可以用不同的方式指定
  • 操作码 opcode: 指示指令操作和格式的字段
  • 单周期实现 single-cycle implementation: 也被称为单时钟周期实现 single clock cycle implementation,即一个时钟周期执行一条指令的实现机制
  • 流水线 pipelining: 一种实现多条指令重叠执行的技术,与生产流水线类似
  • 结构冒险 structural hazard: 因缺乏硬件支持而导致指令不能在预定的时钟周期内执行的情况
  • 数据冒险 data hazard: 也称为流水线数据冒险,即因无法提供指令执行所需数据而导致指令不能在预订的时钟周期内执行的情况
  • 转发 forwarding: 也称为旁路 bypassing。一种解决数据冒险的方法,具体做法是从内部寄存器而非程序员可见的寄存器或存储器中提前取出数据
  • 装载 - 使用型数据冒险 load-use data hazard: 一类特殊的数据冒险,指当装载指令要取的数还没取回来时其他指令就需要使用的情况
  • 流水线阻塞 pipeline stall: 也称为气泡 bubble。为了解决冒险而实施的一种阻塞
  • 控制冒险 control hazard: 也称为分支冒险 branch hazard。因为取到的指令并不是所需要的(或者说指令地址的变化并不是流水线所预期的)而导致指令不能在预订的时钟周期内执行
  • 分支预测 branch prediction: 一种解决分支冒险的方法。它预测分支结果并立即沿预测方向执行,而不是等真正的分支结果确定后才开始执行
  • 延迟 latency: 流水线的级数活着顺序执行过程中两条指令间的级数
  • 空指令 nop: 一种不进行任何操作或不改变任何状态的指令
  • 清除 flush: 因发生了意外而丢弃流水线中的指令
  • 动态分支预测 dynamic branch prediction: 根据运行信息在运行中进行分支预测
  • 分支预测缓存 branch prediction buffer: 也称为分支历史记录表 branch history table。一小块按照分支指令的低位地址索引的存储器区,其中包括一位或多位数据用以说明最近是否发生过分支
  • 分支延迟时间片 branch delay slot: 紧跟延迟分支指令的时间片
  • 分支目标缓存 branch target buffer: 一种用于缓存分支目标地址或分支目标指令的结构,其一般形式为带标志位的 cache,因而其硬件开销大于简单的分支预测缓存器
  • 相关预测器 correlating predictor: 综合考虑特定分支的局部行为和最近执行分支的全局行为的分支预测器
  • 竞赛预测器 tournament branch predictor: 具有多种预测机制的分支预测器。其带有一个选择器,对给定分支可选择其中一个作为预测结果
  • 向量中断 vectored interrupt: 由异常原因决定中断控制转移地址的中断
  • 非精确中断 imprecise interrupt: 也称为非精确异常 imprecise exception。流水线处理器中的中断或异常不与导致中断或异常的指令精确地关联
  • 精确中断 precise interrupt: 也称为精确异常 precise exception。流水线处理器中的中断或异常与导致中断或异常的指令精确地关联
  • 指令级并行 instruction-level parallelism: 指令间的并行性
  • 多发射 multiple issue: 一种单时钟周期内发射多条指令的机制
  • 静态多发射 static multiple issue: 实现多发射处理器的一种方式,其中决策实在执行前的编译阶段作出的
  • 动态多发射 dynamic multiple issue: 实现多发射处理器的一种方式,其中决策是由处理器在执行阶段作出的
  • 发射槽 issue slot: 在给定时钟周期内能够发射指令的位置,可以类比于短跑比赛中的起点位置
  • 推测 speculation: 一种编译器或处理器推测指令结果以消除执行其他指令对该结果依赖的技术
  • 发射包 issue packet: 在一个时钟周期内发射的多条指令的集合。这个包可以由编译器静态生成,也可以由处理器动态生成
  • 超长指令字 Very Long Instruction Word, VLIW: 一类可以同时启动多个操作的指令集,其中操作在单个指令中相互独立,并且一般都有独立的操作码域
  • 使用延迟 use latency: 在装载指令与可以无阻塞使用其结果的指令间相隔的时钟周期数
  • 循环展开 loop unrolling: 一种从存取数组的循环中获取更多性能的技术,其中循环体会被复制多份并且不同的循环体中的指令可能会调度到一起
  • 寄存器重命名 register renaming: 由编译器或硬件对寄存器进行重命名以消除反相关
  • 反相关 antidependence: 也被称为名字相关 name dependence,因为寄存器名的重用导致的相关,并非由两条指令中使用同一个值导致的真正相关
  • 超标量 superscalar: 一种高级流水线技术,可以使每个周期处理器能执行的指令数超过一条
  • 动态流水线调度 dynamic pipeline scheduling: 对指令进行重排序以避免阻塞的硬件支持
  • 提交单元 commit unit: 位于动态流水线和乱序流水线中的一个单元,用以决定何时可以安全地将操作结果送至程序员可见的寄存器和存储器
  • 保留站 reservation station: 功能单元的缓冲区,用来保存操作数和操作
  • 重排序缓冲区 reorder buffer: 动态调度处理器中用于暂时保存执行结果的缓冲区,等到安全时才将其中的结果写回寄存器或存储器
  • 乱序执行 out-of-order execution: 流水线执行的一种情况,即执行的指令被阻塞时不会导致后面的指令等待
  • 顺序提交 in-order commit: 流水线执行的结果以取指顺序写回程序员可见寄存器的一种提交方式
  • 微体系结构 microarchitecture: 处理器的组织,包括主要的功能单元及它们的互连关系与流水线控制
  • 体系结构寄存器 architectural register: 处理器中的可见寄存器
  • 指令延迟 instruction latency: 执行一条指令所真正花费的时间
  • 时间局部性 temporal locality: 某个数据在被访问之后可能很快被再次访问的特性
  • 空间局部性 spatial locality: 某个数据项在被访问之后,与其地址相近的数据项可能很快被访问的特性
  • 存储器层次结构 memory hierarchy: 一种由多存储层次组成的结构,存储器的容量和访问时间随着与处理器距离的增加而增加
  • 块 block 或行 line: 可存在于或不存在于 cache 中的信息的最小单元
  • 命中率 hit rate: 在高层存储器中找到目标数据的存储访问比例
  • 缺失率 miss rate: 在高层存粗气中没有找到目标数据的存储访问比例
  • 命中时间 hit time: 访问某存储器层次结构所需要的时间,包括了判断当前访问是命中还是缺失所需的时间
  • 缺失代价 miss penalty: 将相应的块从低层存储器替换到高层存储器所需的时间,包括访问块、将数据逐层传输、将数据插入发生缺失的层和将信息块传送给请求者的时间
  • 直接映射 direct mapped: 一种 cache 结构,其中每个主存地址仅仅对应到 cache 中的一个位置
  • 标记 tag: 表中的一个字段,包含了地址信息,这些地址信息可以用来判断 cache 中的字是否就是所请求的字
  • 有效位 valid bit: 表中的一个字段,用来标识一个块是否含有一个有效数据
  • cache 缺失: 由于数据不在 cache 中而导致被请求的数据不能满足
  • 写直达法 write-through: 也翻译为写通过。写操作总是同时更新主存和 cache,以保持二者一致性的一种方法
  • 写缓冲 write buffer: 一个保存等待写入主存数据的缓冲队列
  • 写回机制 write-back: 当发生写操作时,新值仅仅被写入 cache 块中,只有当修改过的块被替换时才写到较低层存储结构中
  • 分离 cache, split cache: 一级 cache 由两个独立的 cache 组成,两者可以并行工作,一个处理指令,另一个处理数据
  • 全相联缓存 fully associative cache: cache 的一种组织方式,块可以放置到 cache 中的任何位置
  • 组相联缓存 set-associative cache: cache 的另一种组织方式,块可以放置到 cache 中的部分位置(至少两个)
  • 最近最少使用法(LRU, least recently used): 一种替换策略,总是替换很长时间没有被使用的块
  • 多级缓存 multilevel cache: 存储系统由多级缓存组成,而不仅仅只有主存和一个缓存
  • 全局缺失率 global miss rate: 在多级 cache 中所有级中都缺失的那部分访问
  • 局部缺失率 local miss rate: 在多级 cache 中,某一级 cache 的缺失率
  • 虚拟存储器 virtual memory: 一种将主存用作辅助存储器告诉缓存的技术
  • 物理地址 physical address: 主存储器的地址
  • 保护 protection: 一组确保共享处理器、主存、I/O 设备的多个进程之间没有故意地、无意地读写掐进程的数据机制,这些保护机制可以将操作系统和用户的进程隔离开来
  • 缺页 page fault: 访问的页不在主存储器中
  • 虚拟地址 virtual address: 虚拟空间的地址,当需要访问主存时需要通过地址映射转换为物理地址
  • 地址转化 address translation: 也称为地址映射 address mapping。在访问内存时将虚拟地址映射为物理地址的过程。
  • 交换区 swap space: 为进程的全部虚拟地址空间所预留的磁盘空间
  • 引用位 reference bit: 也称为使用位 use bit。每当访问一个页面时该位被置位,通常用来实现 LRU 或其他替换策略
  • 快表 translation-lookaside buffer, TLB: 用于记录最近使用骶椎的映射信息的高速缓存,从而可以避免每次都要访问页表
  • 虚拟寻址缓存 virtually addressed cache: 一种使用虚拟地址而不是物理地址访问的 cache
  • 别名 aliasing: 使用两个地址访问同一个目标的情形,一般发生在虚拟存储器中两个虚拟地址对应到同一个物理地址时
  • 物理寻址缓存 physically addressed cache: 使用物理地址寻址的 cache
  • 超级用户管理模式 supervisor mode: 也称作管态、核心模式 kernel mode。运行操作系统进程的模式
  • 系统调用 system call: 将控制权从用户模式转换到管理员模式的特殊指令,触发进程中的一个异常机制
  • 上下文切换 context switch: 为允许另一个不同的进程使用处理器,改变处理器内部的状态,并保存当前进程返回时需要的状态
  • 使能异常 exception enable: 也称为中断使能 interrupt enable,用于控制处理器是否响应异常的信号或动作;在处理器安全地保存重启所需信息之前,必须阻止异常的发生
  • 可重启指令 restartable instruction: 一种在异常被处理之后能从异常中恢复而不会影响指令的执行结果的指令
  • 处理程序 handler: 用于『处理』异常或中断的软件程序的名字
  • 非映射的 unmapped: 地址空间中的一个部分,在这个区域不会导致缺页异常
  • 3C three Cs model: 将所有的 cache 缺失都归位三种类型的 cache 模型,三类分别为:强制缺失、容量缺失和冲突缺失。因其三类名称的英文单词首字母均为 c 而得名
  • 强制缺失 compulsory miss: 也称为冷启动缺失 cold-start miss。对没有在 cache 中出现过的块第一次访问时产生的缺失
  • 容量缺失 capacity miss: 由于 cache 在全相联时都不可能容纳所有请求的块而导致的缺失
  • 冲突缺失 conflict miss: 也称为碰撞缺失。在组相联活着直接映射 cache 中,很多块为了竞争同一个组导致的缺失。这种缺失在使用相同大小的全相联 cache 中是不存在的
  • 有限状态机 finite-state machine: 由一组输入和输出,以及下一状态函数和输出函数组成的时序逻辑函数。下一状态函数将当前状态和当前输入映射为一个新的状态,输出函数将当前状态和当前输入映射为一组确定的输出
  • 下一状态函数 next-state function: 根据当前状态及当前输入来确定有限状态机下一状态的组合函数
  • 假共享 false sharing: 当两个不相关的共享变量放在相同的 cache 块中时,尽管每个处理器访问的是不同的变量,但是在处理器之间还是将整个块进行交换
  • 非阻塞缓存 nonblocking cache: 在处理器处理前面的 cache 缺失时仍可正常访问的 cache
  • 预取 prefetching: 使用特殊指令将未来可能用到的指定地址的 cache 块提前搬到 cache 中的一种技术
  • 非易失性的 nonvolatile: 当断电时,数据仍保留的存储设备
  • 磁道 track: 磁盘面上的一个同心圆为一个磁道
  • 扇区 sector: 磁道上的一段弧称为扇区,一个扇区是磁盘中被读活着写的最小信息块
  • 寻道 seek: 在一个读或者写操作中,把磁头定位到合适的磁道的过程
  • 旋转时间 rotational latency: 也称为旋转延迟 rotational delay,是使得合适的扇区旋转到读/写头下的时间
  • ATA, Advanced Technology Attachment: 在 PC 中很流行的一种被用作 I/O 设备标准的指令集
  • SCSI, Small Computer Systems Interface: 一种 I/O 设备的标准指令集
  • 处理器-内存总线 processor-memory bus: 连接处理器和内存的总线。通常比较短,速度高,和内存系统匹配,这样可以使得处理器和内存间的带宽达到最大
  • 底板总线 backplane bus: 一个用来连接处理器、内存和 I/O 设备的单一总线
  • I/O 事务 I/O transaction: 在一个互联上的一系列操作,包含了一个请求及可能的回答,它们均可能包含数据。一个事务由一个请求发起,可能包含很多独立的总线操作
  • 同步总线 synchronous bus: 这样的总线的控制线包含了时钟信号,以及依赖这个时钟的固定通信协议
  • 异步互联 asynchronous interconnect: 使用一个握手协议来协调而不用时钟,可以适应速度相异的不同设备
  • 握手协议 hand shaking protocol: 是为了协调异步总线传输而使用的一系列步骤,在这些步骤中,发送者和接受者只有当彼此都对当前的步骤确认时,才可以进行下一个步骤
  • 内存映射 I/O memory-mapped I/O: 一种 I/O 策略,地址空间的一部分被分配给 I/O 设备,而且读和写这些地址被解释为 I/O 设备的指令
  • I/O 指令 I/O instruction: 一种专用指令,用来给 I/O 设备发送指令,而且指定了设备号,以及指令字(或者内存中的指令字的地址)
  • 轮询 polling: 周期性地检查 I/O 设备的状态寄存器的过程,目的是确定是不是需要为设备服务
  • 中断驱动 I/O interrupt-driven I/O: 一种 I/O 策略,利用中断来指示处理器某个设备需要被关注
  • 直接内存访问 direct memory access, DMA: 一种提供设备控制器的机制,具备能够从内存传输数据,而不需要处理器介入的能力
  • 总线控制器 master: 处于 I/O 互联中的一个单元,能够发起传输请求
  • 事务处理 transaction processing: 这是一种应用,包含了处理小的、短的操作(事务),这些事务通常需要 I/O 和计算。事务处理应用通常具有响应时间的需求和基于事务吞吐量的性能度量
  • I/O 速率 I/O rate: 单位时间的 I/O 性能尺度,例如,每秒钟读操作数目
  • 数据速率 date rate: 单位时间字节的性能尺度,例如,GB/s
  • 条带化 striping: 将逻辑上连续的数据块分布到不同的磁盘上,得到比单个磁盘更高的性能
  • 镜像 mirroring: 将相同的数据写到多个磁盘上,目的是增加数据的可用性
  • 保护组 protection group: 共享一个公共校验磁盘的数据磁盘组或者数据块
  • 热交换 hot-swapping: 系统运行的时候,替换一个硬件模块
  • 应急备用 standby spares: 使用预留的硬件资源立即替换发生故障的模块
  • 多处理器器 multiprocessor: 至少含有两个处理器的计算机系统。与之对应的概念是单处理器 uniprocessor
  • 作业级并行 job-level parallelism 活着进程级并行 process-level parallelism: 通过同时运行独立程序的方法来利用多处理器
  • 并行处理程序 parallel processing program: 同时运行在多个处理器上的单一程序
  • 集群 cluster: 通过局域网连接的一组计算机,其作用等同于一个大型的多处理器。一组通过 I/O 接口与标准网络交换机连接而形成的消息传递多处理机
  • 多核微处理器 multicore microprocessor: 在单一集成电路上包含多个处理器(核)的微处理器
  • 强比例缩放 strong scaling: 在多处理器上不需增加问题规模即可获得的加速比
  • 弱比例缩放 weak scaling: 在多处理器上增加处理器数量的同时按比例增加问题规模所能获得的加速比
  • 共享存储多处理器 shared memory multiprocessor, SMP: 具有单一地址空间的并行处理器,存取时采用隐式通信的方式
  • 统一存储访问 uniform memory access, UMA: 无论访存的是哪个处理器,也无论访存的是哪个字,访存时间都大致形同的多处理器
  • 非统一存储访问 nonuniform memory access, NUMA: 使用单一地址空间多处理器的一种类型,某些存储访存速度高于其他访存,访存速度与访问哪个处理器及访问哪个字相关
  • 同步 synchronization: 对可能运行于不同处理器上的两个或者更多进程的行为进行协调的过程
  • 锁 lock: 一个时刻仅允许一个处理器访问数据的同步装置
  • 约简 reduction: 处理一个数据结构并返回单一值的函数
  • 消息传递 message passing: 通过显式发送和接收信息的方式在多个处理器之间通信
  • 发送消息例程 send message routine: 具有私有存储器的机器中一个处理器将消息发送给另一个处理器的例程
  • 接收消息例程 receive message routine: 具有私有存储器的机器中一个处理接收来自其他处理器消息的例程
  • 硬件多线程 hardware multithreading: 在线程阻塞时处理器可切换到另一线程的实现
  • 细粒度多线程 fine-grained multithreading: 硬件多线程的一种形式,其坚毅每条指令执行之后都进行线程切换
  • 粗粒度多线程 coarse-grained multithreading: 硬件多线程的一种形式,其建议仅在一些重要事件(如缓存缺失)之后进行线程切换
  • 同时多线程 simultaneous multithreading, SMT: 多线程的一种形式,其利用多发射、动态调度微体系结构中的资源实现多线程,从而降低多线程的开销
  • SISD Single Instruction stream, Single Data stream: 单指令流单数据流的单处理器
  • MIMD Multiple Instruction streams, Multiple Data streams: 多指令流多数据流的多处理器
  • SPMD Single Program, Multiple Data streams: 单程序多数据流。传统的 MIMD 编程模型,其中一个程序运行在所有处理器之上
  • SIMD Single Instruction stream, Multiple Data streams: 单指令流多数据流。同样的指令在多个数据流上操作,和向量处理器或阵列处理器一样
  • 数据级并行 data-level parallelism: 操作独立的数据所获得的并行
  • 网络带宽 network bandwidth: 非正式用语,用于表示网络传输速度的峰值;既可以指单一链路的速度,也可以指网络中全部链路的共同传输速度
  • 切分带宽 bisection bandwidth: 多处理器中两个相等部分之间的带宽。这种测量可以表示对多处理器的最差拆分情况
  • 全连接网络 fully connected network: 通过专用通信链路连接所有处理器 - 存储器节点的网络
  • 多级网络 multistage network: 每个节点提供一个小开关的网络
  • 交叉开关网络 crossbar network: 任何一个需一次即可与其他任意一个节点通信的网络
  • Pthread: 创建和操作线程的一个 UNIX API。它使用一个库提供
  • OpenMP: 在 C、C++ 或 Fortran 中用于共享内存多处理编程的 API,可以运行于 UNIX 和 Microsoft 平台。它包括编译器指示、一个库和运行时指示
  • 算数密度 arithmetic intensity: 一个程序中浮点操作数量与访问主存字节数量的比值
  • 软件即服务 software as a service: 软件不再是安装运行在客户自己的计算机上,而是运行在远程计算机上,通过 Internet 来使用,典型情况是通过 Web 接口为客户服务。然后根据使用情况向客户收费
  • 图形处理单元 graphics processing unit, GPU: 一种面向 2D 和 3D 图形、视频、可视化计算和显示优化的处理器
  • 可视化计算 visual computing: 图形处理和计算的混合体,使得用户可以通过图形、图像和视频可视化与计算对象进行交互
  • 异构系统 heterogeneous system: 由不同类型处理器组成的系统,如 PC 是 CPU 和 GPU 组成的异构系统
  • 应用程序接口 Application Programming Interface, API: 函数和数据结构定义的集合,为函数库提供一个接口
  • GPU 计算 GPU computing: 通过并行编程语言和 API 使用 GPU 进行计算
  • GPU 上的通用计算 General Purpose computation on GPU, GPGPU: 通过传统的图形 API 和图形流水线进行通用目的的计算
  • 统一计算设备架构 Compute Unified Device Architecture, CUDA: 一个基于 C/C++ 语言的可扩展并行编程模型。它是面向 GPU 和多核 CPU 的一个并行编程平台
  • PCI-Express, PCIe: 一种使用点对点链路的系统标准 I/O 互连,其链路具有可配置的槽数和带宽
  • 统一存储架构 unified memory architecture, UMA: 一种 CPU 和 GPU 共享系统存储器的体系结构
  • AGP: 一个 PCI I/O 总线的扩展版本,为一个单一的卡槽提供高达 8 倍于原始 PCI 总线的带宽。它的主要目的是将图形子系统连接到 PC 系统
  • OpenGL: 一个开放标准图形 API
  • Direct3D: 由微软及其合作伙伴定义的一个图形 API
  • 纹理 texture: 支持使用插值坐标进行采样和过滤的一个 1D、2D 或 3D 的数组
  • 渲染程序 shader programme: 对图形数据,如定点或像素段,进行操作的一个程序
  • 渲染语言 shading language: 一种图形描述语言,通常具有一个数据流或流编程模型
  • 内核 kernel: 适合与一个线程的程序或函数,设计用来被众多线程执行
  • 线程块 thread block: 执行相同线程程序并相互协作以计算结果的一系列并发线程
  • 网格 grid: 执行相同内核程序的一系列线程块
  • 同步栅障 synchronization barrier: 线程在同步栅障处等待,直到线程块中的所有线程到达该栅障
  • 原子存储器操作 atomic memory operation: 一个存储器读、修改、写操作序列,它们直到执行完成不被任何访问打断
  • 局部存储器 local memory: 每个线程的局部存储器,被该线程私有
  • 共享存储器 shared memory: 每个线程块存储器,被块中的所有线程共享
  • 全局存储器 global memory: 每个应用存储器,被所有的线程共享
  • 单程序多数据 single-program multiple data, SPMD: 并行编程模型的一种网格,其所有的线程执行同样的程序。典型地,SPMD 线程通过栅障同步进行协调
  • 单指令多线程 single-instruction multiple-thread, SIMT: 应用一条指令到多个独立的并行线程上的一种处理器结构
  • warp: 在 SIMT 结构下,一起执行相同指令的并行线程集
  • 协作线程组 cooperative thread array, CTA: 一组执行相同的线程程序且可以协作计算出一个结果的并发线程。一个 GPU CTA 实现一个 CUDA 线程块
  • 半精度 half precision: 一个 16 位二进制浮点格式,有 1 位符号为、5 位指数、10 位小数和隐含的整数位
  • 乘加 multiply-add, MAD: 执行一个先乘后加组合操作的单精度浮点指令
  • 特殊功能单元 special function unit, SFU: 一个用于计算特殊功能和插值平面属性的硬件单元
  • 前向引用 forward reference: 一个标签在被定之前就被使用
  • 符号表 symbol table: 用来将标签的名字和指令占用的内存字的地址相匹配的一个表
  • 反向修补 backpatching: 一种将汇编语言翻译成机器指令的办法,其中汇编器在第一遍扫描程序时就构建一个(可能不完整的)每个指令的二进制表示,然后返回对前面没有定义的标签进行替换
  • 代码段 text segment: UNIX 目标文件的一个段,源文件中程序的机器语言代码
  • 数据段 data segment: UNIX 目标文件活着可执行文件的一个段,包含程序初始所使用的数据的二进制表示
  • 重定位信息 relocation information: UNIX 目标文件的一个段,根据绝对地址来区别数据字和指令
  • 绝对地址 absolute address: 内存中标量或者程序的实际地址
  • 形式参数 formal parameter: 过程或者宏的参数变量,一旦这个变量被参数替换,宏就被展开
  • 单独编译 separate compilation: 将程序划分成多个文件,每个文件被编译时,并不知道其他文件的信息
  • 静态数据 static data: 包含数据的那部分内存,其大小为编译器所知,生命周期为整个程序的运行时间
  • 堆栈段 stack segment: 程序用来保存过程调用帧的那段内存
  • 寄存器使用 register use convention: 或者称为 procedure call convention,管理过程(调用)使用寄存器的软件协议
  • 调用者保存的寄存器 caller-saved register: 调用程序保存的寄存器
  • 被调用者保存的寄存器 caller-saved register: 被调用者程序保存的寄存器
  • 过程调用帧 procedure call frame: 用来保存被调用过程的参数,保存可能会被过程修改的寄存器的值,但是这些寄存器的值不会被调用者所修改,并为被调用程序的局部变量提供空间
  • 递归过程 recursive procedure: 就是指某个过程能通过调用链直接或间接地调用自己
  • 中断处理 interrupt handler: 一段代码,座位异常或中断的执行结果
  • 虚拟机 virtual machine: 一种虚拟计算机,它分支和取数指令没有延迟,且指令集比实际硬件更丰富
您的支持是对我创作最大的鼓励!

热评文章