mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4mobile wallpaper 5
1393 字
4 分钟
OS笔记(一):进程与线程简介
2026-06-05

OS笔记(一):进程与线程简介#

本文是操作系统笔记系列的第一篇,从最基础的概念讲起,帮助大家理解进程和线程到底是什么、有什么区别、在Linux中如何查看和管理。


📚 目录#


一、什么是进程?#

1.1 程序 vs 进程#

概念定义特点
程序存放在磁盘里的可执行文件静态的,是一个文件
进程程序的一次执行过程动态的,是一个活动

关键理解:同一个程序多次执行会对应多个进程。比如你打开两个Chrome浏览器窗口,虽然程序文件是同一个,但它们是两个不同的进程。

1.2 进程的定义#

进程(Process)是操作系统进行资源分配和调度的基本单位。每个进程都有自己独立的内存空间、文件描述符、环境变量等。


二、进程的组成#

一个进程由三部分组成:

2.1 PCB(进程控制块)#

PCB(Process Control Block)是进程存在的唯一标志。进程创建时会创建PCB,进程结束时会回收PCB。

PCB中存储的信息包括:

信息说明
PID进程ID,系统中唯一标识一个进程
进程状态运行态、就绪态、阻塞态等
程序计数器下一条要执行的指令地址
寄存器值CPU寄存器的当前值
内存管理信息页表、段表等
I/O状态信息打开的文件、分配的设备等

进程组成

2.2 程序段#

程序段存放的是要执行的代码指令

2.3 数据段#

数据段存放的是程序运行时使用的数据(如全局变量、静态变量等)。

重点理解

  • PCB是给操作系统用的,用于管理和控制进程
  • 程序段、数据段是给进程自己使用的

程序运行过程


三、进程的特征#

特征说明
动态性进程是程序的一次执行过程,有创建、执行、消亡的生命周期
并发性多个进程可以同时存在于内存中,并发执行
独立性进程是资源分配的基本单位,各进程的地址空间相互独立
异步性进程按各自独立的、不可预知的速度向前推进
结构性进程由程序段、数据段和PCB三部分组成

进程特征


四、什么是线程?#

4.1 线程的概念#

线程(Thread)可以理解为轻量级进程。它是CPU执行的基本单位,也是程序执行流的最小单位。

4.2 为什么需要线程?#

引入线程的目的:

  1. 提高并发度:一个进程内的多个线程可以并发执行
  2. 减少开销:线程切换比进程切换开销小得多
  3. 共享资源:同一进程的线程共享进程的内存空间和资源

4.3 线程的特点#

特点说明
线程是处理机调度的基本单位CPU分配是分配给线程的
线程几乎不拥有系统资源资源由进程拥有
同一进程的线程共享进程资源共享内存地址空间、文件等
线程切换开销小不需要切换地址空间

五、进程与线程的区别#

对比项进程线程
资源分配资源分配的基本单位CPU调度的基本单位
地址空间每个进程有独立的地址空间同一进程的线程共享地址空间
开销创建、切换、销毁开销大创建、切换、销毁开销小
通信需要IPC机制(管道、消息队列等)可以直接读写共享变量
崩溃影响一个进程崩溃不影响其他进程一个线程崩溃可能导致整个进程崩溃

六、Linux实战:查看进程和线程#

6.1 查看进程#

# 查看当前用户的进程
ps
# 查看所有进程
ps -ef
# 查看进程树
pstree
# 实时监控进程
top

6.2 查看进程详细信息#

# 查看特定进程的详细信息
ps -p <PID> -f
# 查看进程的内存使用
ps -p <PID> -o pid,ppid,cmd,%mem,%cpu
# 查看进程打开的文件
lsof -p <PID>

6.3 查看线程#

# 查看进程的线程
ps -T -p <PID>
# 查看所有线程
ps -eLf
# 使用top查看线程
top -H

6.4 进程管理命令#

# 启动一个进程
./my_program &
# 终止进程
kill <PID>
# 强制终止进程
kill -9 <PID>
# 查看进程状态
cat /proc/<PID>/status

6.5 实际案例:理解进程和线程#

# 启动一个Python程序,观察进程和线程
python3 -c "
import threading
import time
def worker():
time.sleep(60)
# 创建3个线程
for i in range(3):
t = threading.Thread(target=worker)
t.start()
time.sleep(60)
" &
# 查看进程
ps -ef | grep python
# 查看线程
ps -T -p <PID>

七、本章小结#

核心概念#

概念要点
进程程序的一次执行过程,资源分配的基本单位
线程CPU执行的基本单位,轻量级进程
PCB进程存在的唯一标志
区别进程独立、线程共享;进程开销大、线程开销小

考研/期末常见考点#

  1. 进程和程序的区别(动态vs静态)
  2. 进程的组成(PCB、程序段、数据段)
  3. PCB的作用(进程存在的唯一标志)
  4. 进程和线程的区别(资源分配、开销、通信)
  5. 线程的实现方式(用户级、内核级)

思考题#

  1. 为什么说PCB是进程存在的唯一标志?
  2. 引入线程后,进程的作用发生了什么变化?
  3. 用户级线程和内核级线程有什么区别?

下一篇OS笔记(二):进程的状态与转换

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

OS笔记(一):进程与线程简介
https://emilia520.icu/posts/os-211212进程与线程简介/
作者
火花花
发布于
2026-06-05
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

目录