进程管理是操作系统的核心,包括进程、线程、处理机调度、进程同步以及死锁五大部分。
一、进程与线程
我们首先介绍进程和线程,先来思考以下问题:
——引入进程的目的?
——进程是什么以及进程的组成?
——进程如何解决问题
1. 进程的概念和特征
引入进程,目的是更好地描述和控制程序的并发执行,实现操作系统的并发性和共享性(最基本的两个特性)
程序段、相关数据段和PCB(进程控制块)构成了进程映像(进程实体)。 所谓创建(或撤销)进程,实质上就是创建(或撤销)进程映像中的PCB。
进程映像是静态的,进程则是动态的。
我们可以将进程定义为:进程是进程实体(进程映像)的运行过程,是系统进行资源分配和调度的一个独立单位。
其中系统资源指的是处理机、存储器和其他服务于某进程的“时间”,所以进程是这些资源分配和调度的独立单位,即“时间片”分配的独立单位
进程的基本特征是动态性(最基本)、并发性、独立性、异步性和结构性
2. 进程的状态与转换
运行状态:单处理机下,每个时刻最多只有一个进程处于运行状态
就绪状态:进程获得了除处理机以为的一切所需的资源,一旦得到处理机即可执行
阻塞状态(等待状态):等待某资源(不包括处理机)或等待某输入/输出完成或等待某一事件
创建状态:创建PCB
结束状态:结束PCB
状态的转换:
就绪状态——>运行状态:获得处理机
运行状态——>就绪状态:处理机时间片用完,或者让出给更高优先级的进程
运行状态——>阻塞状态:请求资源或等待事件发生
阻塞状态——>就绪状态:事件发生或资源获得(不包括处理机)
注意:一个进程从运行状态变为阻塞状态是一个主动的行为,而从阻塞状态变到就绪状态是一个被动的行为,需要其他相关进程的协助
-
进程控制
-
进程的组织
-
进程的通信
-
线程概念和多线程模型