知识阅读 计算机入门 第一章 计算机的基本组成
返回知识图谱
计算机入门 文炎同学 2024-03-18

第一章 计算机的基本组成

从输入、处理、存储与输出出发,理解计算机各部分如何协作,为后续的软件、网络和系统学习打底。

ARTICLE / 05 SECTIONS
START READING05 SECTIONS

电脑卡顿、网页打不开、文件不知道存在哪,表面上是不同的问题。拆开看会发现,它们都发生在同一套系统协作里。

我更愿意先不从参数和名词入手,而是先看清一个整体框架:程序在哪里运行,数据放在哪里,结果又如何回到你面前。

1. 什么是计算机

计算机不只是摆在桌上的电脑,而是一类能够按照程序自动处理信息的机器。它接收输入,执行程序中的计算和规则,保存需要保留的数据,再把结果输出出来。

这里的“自动”并不意味着它自己产生目的,而是它会按照人提前写好的程序,重复、准确地完成一组任务。台式机、笔记本、手机、服务器和许多嵌入式设备,都属于这类计算机。

台式机、笔记本与服务器都属于计算机的不同形态

1.1 计算机在做什么

输入信息 -> 处理信息 <-> 保存信息 -> 输出结果
  • 输入:键盘输入、鼠标点击、摄像头画面、网络请求。
  • 处理:计算、判断、排序、生成、执行程序指令。
  • 保存:文件、图片、软件、数据库记录和程序状态。
  • 输出:屏幕画面、声音、写入文件、发回网络响应。

我觉得 保存 常常被低估。很多事情之所以能在下次继续,不是因为计算还没有结束,而是因为数据已经被写进了能够长期保留的存储介质。

下面这张图展示它们如何分层协作:

计算机从输入到输出的系统协作图计算机从输入到输出的系统协作图

这不是从左到右依次发生的流程,而是三层同时协作的关系。把这个关系看清后,应用软件负责完成任务,操作系统负责调度资源,硬件负责实际执行、保存与连接。

2. 硬件、软件与操作系统如何配合

理解计算机时,我通常先把它分成三类角色:硬件提供能力,软件提供指令,操作系统负责协调两者。

层次它是什么它在做什么
硬件CPU、内存、硬盘、显卡、屏幕、网卡等实体设备计算、存储、显示、联网
操作系统Windows、macOS、Linux、Android、iOS 等基础软件管理硬件资源,给应用提供运行环境
应用软件浏览器、微信、编辑器、游戏、AI 工具等程序完成用户要做的具体事情

“硬件像身体、软件像技能”这个类比可以帮助入门,但不要把它理解得太死。真正重要的是:软件不能脱离硬件运行,硬件也需要软件和操作系统来组织。

先把操作系统看成资源的协调者就够了:它决定一个程序如何获得 CPU 时间、内存空间、文件和网络等资源。下一章会专门把这件事拆开。

3. 程序运行时,哪些部件在配合

硬件的名字很多,但第一次理解它们时,我觉得先抓住一条最有用的路径就够了:

存储中的程序和文件 -> 读入内存 -> CPU 执行 -> 屏幕、文件或网络中的结果

先看一眼主机内部,会更容易把后面的部件放回正确的位置:它们不是互相孤立的零件,而是通过主板连接起来,由电源供电,再共同完成一次程序运行。

半透明电脑主机内部结构示意图

这不是严格的一次性流水线。程序运行时,CPU 会反复从内存读取内容,也会不断和存储、显示器、网络接口交换数据。不过这条路径足够帮我们分清:谁负责计算,谁负责临时放置,谁负责长期保存,谁负责与外界交换信息。

3.1 CPU:真正执行程序指令的处理器

CPU 是通用处理器。它从内存中取出程序指令和数据,完成计算、比较、判断与控制流程。打开应用、解压文件、运行代码时,CPU 都在执行其中一部分工作。

CPU 处理器示意图

CPU 不是独自工作的核心。操作系统决定哪些任务获得 CPU 时间;内存提供正在使用的内容;存储保存程序和文件。把 CPU 说成大脑可以帮助记忆,但更准确的说法是:它负责执行,不负责包办一切。

电脑变慢也不等于 CPU 一定不够用。内存不足、存储读写慢、网络等待或设备过热,都可能让体验变差。

3.2 内存:程序正在使用的工作区

这里的内存通常指 RAM。正在运行的程序、它当前处理的数据,以及需要快速访问的内容,都会暂时放在内存里。

内存条示意图

程序即使原本保存在硬盘中,也通常要先读入内存,CPU 才能高效地执行它。断电后,内存中的内容通常会消失;这也是为什么写完文件还需要保存到存储设备。

内存容量影响的是同时能容纳多少正在工作的程序和数据。内存紧张时,系统会把一部分暂时不用的内容转移到存储设备,电脑往往就会明显变慢。

3.3 存储:让程序和数据长期留下来

存储设备负责长期保存操作系统、软件、文档、图片、代码和数据库文件。硬盘和固态硬盘都属于存储设备,关机后其中的数据仍然存在。

硬盘或固态硬盘示意图

SSD 的访问速度通常更快,HDD 的容量成本往往更低。比起记住型号,更值得留下的区别是:内存服务于正在发生的工作,存储保存可以留到以后再用的内容。

3.4 输入、输出与网络:计算机怎样接触外界

键盘、鼠标、摄像头和麦克风把信息送进计算机;显示器、音箱和打印机把结果带出来。这一整类交互在计算机里通常叫作输入输出,也常写成 I/O

从这个角度看,磁盘和网络接口也属于输入输出设备:前者负责和长期数据交换,后者负责和其他计算机交换数据。网络接口本身不是互联网,它只是让一台设备能够接入局域网或互联网通信。

主板把这些部件连接起来,电源和散热系统让它们稳定工作。它们不直接决定程序做什么,却是整套系统能够持续运行的前提。

3.5 主板与电源:让协作真正发生

主板是整台电脑的连接底座。CPU 插座、内存插槽、硬盘接口和扩展插槽都安装在它上面,数据和控制信号也通过主板上的通道在不同部件之间流动。它不负责替 CPU 做计算,却决定了这些部件能不能接在一起、怎样交换数据,以及还能扩展哪些设备。

电源把墙上的交流电转换成各部件需要的稳定电力,并在不同负载下持续供电。它通常不参与程序逻辑,但供电不稳定,CPU、内存和硬盘就无法可靠地协作。主板负责把部件连起来,电源负责让这套连接持续工作。

主板示意图
主板:连接与通信的基础
电源示意图
电源:稳定供电的基础

3.6 GPU:面向特定任务的并行处理器

GPU 最初主要用于图形画面,如今也擅长同时处理大量相似的计算任务,所以常见于视频处理、科学计算和 AI 训练、推理。

GPU 显卡示意图

它不是所有计算机都必须具备的基础角色。很多日常任务主要依赖 CPU;有些服务器甚至不需要图形能力。把 GPU 理解成为高并行任务准备的专用加速器,比把它泛泛地说成显卡或第二个大脑更准确。

4. 用“打开一个网页”把它们串起来

“打开一个网页”是个很好的观察入口。你在浏览器里输入一个网址并按下回车,背后会发生一连串协作:

  1. 你发出输入:键盘把输入交给系统,浏览器得到这个网址。
  2. 程序获得运行条件:操作系统安排浏览器使用内存、CPU 和需要的文件资源。
  3. 浏览器执行工作:CPU 执行浏览器的程序指令;已经安装在存储设备上的程序和数据,会按需要被读取到内存中。
  4. 设备连接网络:浏览器通过网络接口发出请求,远程服务器返回网页所需的数据。
  5. 结果被组织并输出:浏览器处理拿到的数据,图形系统把页面画面呈现到显示器上。

把它压缩成一句话,大致是:

人的操作 -> 浏览器程序 -> 操作系统协调 -> 硬件与网络协作 -> 页面出现在屏幕上

这里的每一步,后面都会有一章单独展开。现在不必追问每个协议和每条指令;一次看似简单的点击,本来就需要多层系统共同完成。

本章小结

到这里,只留下三件最重要的事:

  • 计算机按照程序处理信息:接收输入,完成处理,保存数据,再输出结果。
  • 应用软件负责完成任务,操作系统负责协调资源,硬件负责实际执行。
  • 程序通常从存储读入内存,再由 CPU 执行;内存服务于正在发生的工作,存储负责长期保留。
LEARNING PATH

沿着这条路径继续

每一篇文章都是下一次理解的起点。

上一步前言
当前阅读第一章 计算机的基本组成计算机入门
下一步第二章 操作系统与资源管理