操作系统重点:
- 进程
进程是程序关于某个数据集合的一次执行过程,是一个可并发执行的具有独立功能的动态实体,也是操作系统进行资源分配、调度和保护的基本单位。
有些系统称进程为“任务”(task)或活动(“active”)
进程包括:程序(代码/文本)、数据、工作栈、堆、进程控制块PCB
- 进程的三种状态
进程从创建而产生至撤销而消亡的整个生命周期,可用一组状态加以刻画:
运行态(running):进程占有处理器正在运行。
就绪态(ready):进程具备运行条件,系统若为之分配处理器便可运行。
等待态(wait):又称为阻塞(blocked)态或睡眠(sleep)态,进程不具备运行条件,正在等待某个事件的完成。
- 状态变化
运行 <=> 就绪 (调度)
运行 => 阻塞 => 就绪 (IO、事件)
线程
把进程等待两项功能---“独立分配资源”与“被调度分派执行”分类离开来:
进程作为系统资源分配和保护的独立单位,不需要频繁地切换
线程作为系统调度和分派的基本单位,会被频繁地调度和切换
什么是线程---thread 是一个cpu调度单位,是进程中的一个执行路径。
它由线程ID、程序计数器、寄存器集合和堆栈组成
它与同属于一个进程的其他线程共享代码段、数据段和其他操作系统的资源(如文件)
同一个进程中的所有线程共享进程获得的主存空间和资源
进程在任一时刻只有一个执行控制流,通常将这种结构的进程成为单线程结构进程。
多线程结构进程是在同一进程中设计出多条控制流,每一个控制流称为一个线程,多条控制流之间可以并行执行,多控制流之间可通过内存区直接通信,切换开销小

网友评论