进程管理——进程
一、进程概念
进程是执行中的程序的抽象
进程的定义:进程是具有一定功能的程序在一个数据集合上的运行过程,它是系统进行资源分配和调度管理的一个可并发执行的基本单位
二、进程特性
1、进程的特征
(1)、动态性:进程的实质是程序的一次执行过程。进程是动态产生、动态消亡的
(2)、并发性:任何进程都可以同其他进程一起向前推进
(3)、独立性:进程是一个能够独立运行的基本单位,同时也是系统分配资源和调度的独立单位
(4)、异步性:由于进程间的相互制约,使进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推进
(5)、结构特征:为了控制和管理进程,系统为每个进程设立一个进程控制块——PCB
2、进程与程序
(1)、进程是动态的,而程序是静态的
(2)、1个程序可以对应多个进程
(3)、1个进程只能对应1个程序
3、进程分类
系统进程、用户进程
三、进程的状态与转换
四、进程的组成
1、组成
PCB、临界区、工作区、数据区
2、PCB
(1)、一个进程只有一个PCB
(2)、是进程存在与否的唯一标记
(3)、进程控制块组成
进程标识信息(pid)
进程状态
进程特征
进程位置及大小信息
处理器现场保留区
进程资源清单
进程同步与通信机制
进程间联系
五、进程控制块和进程队列
1、线性方式
2、链接方式
3、索引方式
六、进程控制
进程控制是对系统中所有进程从产生、存在到消亡的全过程实习有效的管理和控制。进程控制一般由操作系统的内核来实现,内核在执行操作时,往往是通过执行各种原语操作来实现的
创建原语、撤销原语、阻塞原语、唤醒原语
原语:操作系统内核中用于完成特定功能的一个过程,此过程在执行过程中呈现原子特征,不可中断
1、进程创建
创建一个PCB
赋予一个统一进程标识符
为进程映象分配空间
初始化进程控制块:如状态为New,无I/O设备或文件···
设置相应的链接:如把新进程加到就绪队列的链表中
2、进程撤销
(1)、原因
正常结束
异常结束,如越界错、保护错、特权指令错、非法指令、运行超时、I/O故障···
外界干预,操作员干预、死锁···
(2)、过程
此处的子进程并不一定被撤销,具体看操作系统如何处理,对于Linux来说,并不会撤销子进程
3、进程阻塞
(1)、功能
停止调用进程的执行,变为等待
(2)、过程
4、进程唤醒