计算机系统概述:从冯诺依曼机到性能指标

Date 2026-06-02 · Category tech · Status finished · Confidence likely
学习笔记, 计算机系统

一条清晰的主线

计算机系统概述并不复杂,真正重要的是先把主线看清:

  1. 计算机为什么能自动执行程序。
  2. 一台计算机由哪些基本硬件组成。
  3. 软件和硬件之间是怎样一层层抽象起来的。
  4. 写下来的源程序为什么最后能变成可执行文件。
  5. 性能指标里哪些概念最容易混。

计算机系统 = 硬件 + 软件,而“硬件怎么被软件稳定驱动起来”正是这门课的入口。


1. 冯诺依曼机:系统如何开始运转

现代计算机的基本组织方式,仍然建立在 存储程序思想 上。程序和数据先进入主存,程序启动后,机器按指令顺序自动执行,直到运行结束。

冯诺依曼机与五大部件

围绕这一结构,最核心的事实有三点:

  • 计算机采用“存储程序”工作方式。
  • 计算机由 运算器、控制器、存储器、输入设备、输出设备 五大部件组成。
  • 指令和数据在机器里都以二进制形式表示,形式上看起来很像,但 CPU 能区分它们的用途。

如果把它看成一套分工明确的系统:

  • 运算器负责算。
  • 控制器负责指挥。
  • 存储器负责记。
  • 输入/输出设备负责和外界交换信息。

CPU 本质上就是在把“取指令、分析指令、执行指令”这件事不断重复。


2. 抽象层:软件和硬件如何接上

计算机并不是一整块不可拆分的黑箱,它是由多层抽象逐步堆起来的。

计算机系统抽象层

从上往下看:

  • 应用、算法、编程语言、操作系统/虚拟机 属于软件视角。
  • ISA 是软件和硬件之间最关键的分界线。
  • 微体系结构、功能部件/RTL、电路、器件 逐层落到真正的硬件实现。

上层只需要看到下层对它暴露出来的接口,不需要关心下层内部怎么做,这就叫“抽象”。

因此,不同角色看到的计算机也并不相同:

  • 最终用户更关心应用能不能用。
  • 应用程序员更关心语言、库、操作系统接口。
  • 系统程序员更关心 ISA、硬件结构和底层控制。

3. 从源文件到可执行文件

写下来的程序,并不会直接变成可以运行的结果,它要经过一条完整的翻译和组装链路。

从源文件到可执行文件

这条路径的顺序是:

源程序 -> 预处理 -> 编译 -> 汇编 -> 链接 -> 可执行文件

每一步各自承担不同的工作:

  • 预处理:处理 #include#define 这类预处理命令,得到修改后的源程序。
  • 编译:把高级语言翻译成汇编语言。
  • 汇编:把汇编语言翻译成机器指令,形成可重定位目标文件。
  • 链接:把多个目标文件和库文件合并,得到最终可执行文件。

真正容易混淆的地方主要有三处:

  • 编译后不是直接得到可执行文件,而是先得到汇编代码。
  • 汇编后也不是最终程序,而是目标文件 .o
  • 真正把 printf 这类外部目标拼进来的步骤是 链接

4. 性能指标:把几个关系理顺

性能指标常常看起来名词很多,但真正高频的关系并不多。

吞吐率 vs 响应时间

  • 吞吐率:单位时间内完成了多少工作。
  • 响应时间:一个任务从开始到完成花了多久。

吞吐率看“做了多少”,响应时间看“等了多久”。

时钟周期、主频、CPI

  • 时钟周期:时钟信号一次脉冲所持续的时间。
  • 时钟频率:时钟周期的倒数,也就是常说的主频。
  • CPI:执行一条指令平均需要多少个时钟周期。

常用公式可以直接写成:

CPU执行时间 = 指令条数 × CPI × 时钟周期
CPU执行时间 = 指令条数 × CPI / 时钟频率

如果讨论的是单条指令,也可以写成:

CPU执行时间 = 该指令所需时钟周期数 × 时钟周期

另外一个常见指标是 MIPS:

MIPS = 主频 / (CPI × 10^6)

5. 几个关键结论

  • 冯诺依曼机的核心是 存储程序
  • 五大部件是 运算器、控制器、存储器、输入设备、输出设备
  • CPU 是核心部件,内部至少要理解成 数据通路 + 控制器
  • 主存是程序运行时临时存放程序和数据的地方,辅存负责长期保存。
  • 软件和硬件之间最关键的边界是 ISA
  • 源程序变成可执行文件的顺序是 预处理 -> 编译 -> 汇编 -> 链接
  • 性能题里最常用的是 CPU执行时间CPI时钟周期主频 之间的换算。

总结

《计算机系统概述》更像整门计算机组成原理的入口地图。

前半部分回答“计算机是什么”,中间部分回答“软件和硬件如何衔接”,后半部分回答“程序如何落地执行,以及性能如何衡量”。把这条线理顺之后,后面的存储器、指令系统、CPU 与总线,都会自然落在同一张图里。


See also