☰
计算机系统|零基础术语大全【庖丁解牛版】
2026/10/7 2:43:39 网站建设 项目流程

核心思路:把一台计算机当成一个工厂,顺着「程序代码 → CPU执行 → 内存暂存 → 磁盘持久化 → 网络传输」这条流水线切开。不讲晦涩数学,全部拆成血肉骨架,从底层硬件到操作系统,再到进程、内存、IO,一层层剖开,搞懂每个术语到底在流水线里承担什么角色。
前置一句话总纲:硬件是身体,操作系统是大脑管家,程序是任务,进程是正在干活的工人,内存是工作台,磁盘是仓库,CPU是车间核心加工机。

一、硬件层(计算机的身体骨架)

1. CPU 中央处理器

  • 是什么:整台机器的运算+指挥核心。负责做加减乘除、逻辑判断,执行一条条机器指令。
  • 类比:工厂车间的加工主机。
  • 关键术语:
    • 核心 Core:一个独立运算单元。多核 = 车间里多个加工头,可以同时并行干活。
    • 线程 Thread(硬件线程):单个核心的分身技术(超线程),一个核心可以交替处理两个任务,提升利用率。
    • 时钟频率 GHz:每秒能执行多少轮指令,频率越高,单核处理速度越快。不代表整体性能唯一标准。
    • 指令集:CPU能识别的原始命令(x86、ARM)。x86:电脑服务器;ARM:手机、Mac M系列、嵌入式。

重点:CPU运算速度极快,最怕等待(等内存、等磁盘、等网络),这就是系统性能瓶颈根源。

2. 内存 RAM(主存)

  • 是什么:临时工作台。CPU要处理的数据、正在运行的程序,全部先加载到内存。断电数据全部消失。
  • 特点:速度远快于磁盘,容量小,价格贵。

底层:CPU不能直接读取磁盘数据,磁盘的内容必须读到内存,CPU才能操作。

3. 高速缓存 Cache(CPU缓存 L1/L2/L3)

  • 是什么:CPU芯片内置的一小块超高速临时存储,比内存还要快得多,容量很小。
  • 目的:解决「CPU太快、内存跟不上」的速度鸿沟。CPU会把经常要用的数据预先放到Cache。
  • L1最快最小,L3最慢容量最大。

例子:反复读取同一个变量,数据留在L1缓存,几乎不用等待内存。缓存失效,就会产生性能断崖。

4. 磁盘(硬盘)HDD / SSD

  • HDD机械硬盘:磁头+盘片,机械转动读写,速度慢、容量大、便宜。有寻道时间。
  • SSD固态硬盘:闪存芯片,无机械结构,比HDD快很多,但仍然比内存慢几百上千倍。

定位:永久仓库,断电数据保留。程序不运行时,躺在磁盘里。启动时加载进内存。

5. 总线 Bus

硬件之间通信的通道。CPU、内存、磁盘、网卡靠总线互相传递数据。类比工厂的传送管道。

6. 网卡 NIC

负责计算机收发网络数据包,连接网络。

二、操作系统 OS(机器的大管家,核心重点)

操作系统本质:管理硬件资源,向上给程序提供一套统一接口,隔离硬件细节。Windows、Linux、macOS都是操作系统。后端开发最常用 Linux。

7. 内核 Kernel

操作系统最核心的程序,开机后常驻内存。

  • 负责:管理CPU、内存、磁盘、网络;所有硬件操作,应用程序不能直接碰硬件,必须请求内核完成。
  • 用户态 User Mode:普通应用程序运行空间。权限低,不能直接操作硬件。
  • 内核态 Kernel Mode:内核运行空间,拥有全部硬件权限。

用户态 ↔ 内核态切换:叫上下文切换,有开销。频繁切换会降低性能。

8. 进程 Process

  • 定义:正在运行程序实例。程序是磁盘上的静态文件;把程序加载到内存,分配资源,就变成进程。
  • 类比:工厂里开工的工人。同一个程序(比如PHP)可以启动多个工人(多个进程)。
  • 每个进程独立:有独立内存空间,进程之间互相隔离。A进程不能随便读写B进程内存。
  • PID:进程ID,操作系统给每个进程分配唯一编号。

9. 线程 Thread(软件线程)

进程内部的执行分支。一个进程至少有1个主线程,可以创建多个子线程。

类比:一个工人(进程),分出多只手(线程),同时做多件事。

  • 特点:同一个进程内所有线程共享同一份内存空间,互相访问数据很方便,但会带来竞争问题。线程切换开销 < 进程切换开销。

区分一句话:进程是资源分配单位;线程是CPU调度单位。

10. 并发 Concurrency

多个任务交替使用同一个CPU核心,宏观看起来同时在跑。不是真正同一时刻执行。

单核CPU,靠快速切换线程实现并发。

11. 并行 Parallelism

多个任务在多个CPU核心上,同一时刻真正一起运行。必须多核CPU才能并行。

12. 上下文切换 Context Switch

CPU放下当前线程/进程,保存现场,切换去执行另一个。

动作:保存寄存器、内存现场,切内核态。代价:消耗CPU。高并发场景过多上下文切换是性能杀手。

13. 内存管理(操作系统模块)

虚拟内存 Virtual Memory

操作系统给每个进程编造一套独立的虚拟地址空间。进程以为自己独占一整块完整内存。

  • 物理内存:真实内存条。
  • 地址映射:内核把进程使用的虚拟地址,翻译成真实物理内存地址。
页 Page / 页表

虚拟内存最小管理单位(通常4KB);页表是内核用来记录虚拟页和物理页映射关系的表格。

缺页中断 Page Fault

进程访问一个虚拟内存地址,发现对应数据不在物理内存。内核触发中断,去磁盘把数据加载进内存。缺页会产生IO,很慢。

Swap 交换分区

磁盘划出一块空间,当作内存临时替补。物理内存不够时,内核把暂时不用的内存页挪到Swap。

坑:Swap本质磁盘,一旦大量使用,性能暴跌。服务器尽量避免Swap。

14. 文件系统 File System

操作系统管理磁盘数据的一套规则。磁盘裸盘不能直接存文件,需要格式化,建立文件系统。
Linux常用:ext4、xfs;Windows:NTFS。

  • 管理:文件、目录、权限;记录文件数据存在磁盘哪些块。
  • Inode(Linux):文件元数据,记录文件大小、权限、磁盘块位置,不存文件名。文件名存在目录项。

15. IO 输入输出 Input / Output

程序和外部设备读写数据统称IO:读磁盘、写磁盘、网络读写都是IO。

  • CPU计算速度 >>> 内存 >>> SSD >>> HDD >>> 网络
    IO等待,就是CPU没事干,原地等磁盘/网络返回数据。系统大部分性能瓶颈都在IO。
阻塞IO Blocking IO

调用IO操作,线程卡住,原地等待IO完成,才能继续往下跑。PHP-FPM就是典型阻塞模型。

非阻塞IO Non-blocking IO

发起IO请求,线程不会卡住;立刻返回,不管IO有没有完成。程序不断轮询检查结果。消耗CPU。

IO多路复用 IO Multiplexing

单个线程同时监听多个IO事件,哪个IO就绪就处理哪个。
Linux:select、poll、epoll。Swoole、Nginx底层核心就是epoll。

事件循环 Event Loop

基于IO多路复用,循环监听事件,IO就绪就执行回调。Nginx、Node.js、Swoole。

16. 中断 Interrupt

硬件主动通知内核:有事处理。比如网卡收到数据包、磁盘读完数据,硬件发送中断信号打断CPU当前工作。

17. 信号 Signal(Linux)

内核给进程发送的通知消息。比如 kill 命令本质发送信号:SIGTERM终止、SIGKILL强制杀死进程。

三、网络栈术语(操作系统网络子系统)

18. Socket 套接字

操作系统提供给程序的接口,用来收发网络数据。

类比:两个程序通信的电话听筒。IP地址定位机器,端口Port定位机器上对应的进程。

19. TCP

面向连接、可靠传输协议。通信前三次握手建立连接;数据有确认、重传、拥塞控制,保证数据有序不丢包。代价:开销大。HTTP/HTTPS底层基于TCP。

20. UDP

无连接,不可靠。不握手,不确认。速度快,可能丢包。直播、DNS用UDP。

21. 端口 Port

一台机器上多个网络服务区分标记。0~65535。80 HTTP,443 HTTPS。端口不是硬件,是内核的逻辑编号。

22. 协议栈 TCP/IP

Linux内核里面一套分层网络模块:应用层→传输层(TCP/UDP)→网络层(IP)→链路层。程序发数据包,一层层封装;接收一层层解包。

四、程序编译、链接、存储(代码如何变成机器指令)

23. 机器码 Machine Code

CPU原生可以直接执行的二进制指令,只有0和1。

24. 汇编语言

机器码的人类可读简写。和CPU指令集一一对应。

25. 编译型语言(C/C++)

源码 → 编译器一次性翻译成机器码,生成可执行文件,保存在磁盘。运行时直接执行机器码,不依赖解释器。

优点:性能高;缺点:修改代码要重新编译。

26. 解释型语言(PHP、Python)

源码不提前编译成完整机器码。运行时,由解释器程序,边读源码边执行。
PHP特殊:源码编译成Opcode(中间码),交给Zend虚拟机执行,属于解释执行+中间字节码方案。

27. 虚拟机 VM

不直接跑硬件机器码,跑自定义中间指令(Opcode)。PHP Zend VM、Java JVM。好处:跨平台,同一套字节码在不同操作系统运行。

28. 链接 Link

多个代码模块合并,把外部函数地址补齐,生成最终可执行程序。分静态链接、动态链接。

29. 静态库 / 动态库 so/dll

  • 静态库:编译时把库代码直接拷贝进程序文件。
  • 动态库:程序运行时才加载库到内存,多个程序可以共享同一份库文件。Linux后缀.so,Windows .dll。

五、并发同步术语(多进程多线程抢资源)

30. 临界区 Critical Section

一段代码,多个线程不能同时执行。操作同一个共享变量的代码块。

31. 互斥锁 Mutex

保护临界区。线程进入临界区前拿锁;离开释放。拿到锁才能执行,没拿到就阻塞等待。防止多个线程同时修改共享数据造成错乱。

32. 死锁 Deadlock

多个线程互相持有对方需要的锁,循环等待,谁都无法继续。前面MySQL锁那里也出现过。

33. 原子操作 Atomic

不可拆分的操作。要么完整执行完,要么完全没执行,中间不会被CPU打断。不需要锁就能保证安全。

六、庖丁总骨架总结(一句话串完整链路)

源代码(磁盘静态文件)→ 加载到内存 → 生成进程,分配虚拟内存空间,创建线程;
CPU从内存读取指令,L1/L2/L3缓存加速;程序读写磁盘/网络时发起IO;
IO操作进入操作系统内核,内核负责硬件交互;
多线程/进程靠CPU并发调度;靠锁保护共享资源;网络通信走内核Socket和TCP/IP协议栈。

所有性能问题根源:CPU等待内存、内存等待磁盘、程序等待网络,还有上下文切换、锁竞争。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询