一、进程的定义
1、进程是可并发执行的程序在某个数据集合上的一次计算活动,也是操作系统进行资源分配和保护的基本单位
2、可以用来共享资源又能描述程序并发
为什么要引入进程概念
1、刻画程序的并发性:程序是并发执行的,这是由于资源共享和竞争问题,程序自身只是计算任务的指令和数据的描述,是静态的,进程是动态描述
2、共享性:可重入程序
二、
进程三态模型及其转换
进程五态模型
进程的挂起?
为了让某些进程暂时不参与低级调度,释放它占有的资源以平滑系统负荷的目的而需引入挂起态;
三、进程上下文以及进程的切换
进程上下文:进程物理实体以及支持进程运行的环境
组成:
用户级上下文
系统级上下文
寄存器上下文
当进程发生切换的时候:进程上下文也必须发生切换
进程控制块PCB:用于记录和刻画进程状态以及有关信息的数据结构,包括进程运行时的状态以及让出处理后的状态以及断点等信息(三类信息:标识信息、现场信息、控制信息)
进程上下文的切换
概念:让出处理器,保存原来老进程的上下文而装入被保护了的新的进程上下文
具体步骤:
1、保存被中断进程的处理器现场信息
2、修改被中断进程的进程控制块的有关状态
3、被中断进程的PSW放入相关队列
4、选择要运行的进程
5、修改要运行的进程的PSW
6、根据被选中进程设置操作系统用到的地址转换和存储保护信息
7、恢复处理器的现场
四、进程的创建、撤销、
(一)进程的创建
1、从PCB池中,申请一个空闲的额PCB,为进程分配唯一的进程标识符
2、为新进程的进程映像分配地址空间
3、分配除了内存之外的其他资源
4、初始化PCB
5、设置为 就绪态
(二)进程的撤销
1、撤销进程的标识符
2、收回进程的资源
3、如果有子进程的话,先撤销他的子进程
4、回收PCB
(三)进程的阻塞
1、停止进程的运行,保存信息到PCB中
2、修改PCB有关内容,如修改状态 从就绪到等待
3、去调度其他进程
(四)、进程的唤醒
1、从等待队列中移出进程
2、修改PCB中的状态
3、判断当前进程与正在运行进程的PCB,看是否抢占处理机