2.2进程控制
进程控制的基本过程:
¡进程的创建
¡进程的终止
¡进程的阻塞与唤醒
¡进程的挂起和激活
1.进程的创建
1)一个进程创建另一进程的事件(原因)
u用户登录:分时情况下用户的请求
u作业调度:批处理中
u提供服务:运行中的用户程序提出功能请求,要创建服务进程(如打印服务)
u应用请求:应用程序自己创建进程,完成特定功能的新进程。(木马程序)
2)创建过程µ 5
(1)申请空白PCB
(2)为新进程分配资源
主要是内存资源的处理
(3)初始化进程控制块
标识符(包括父进程的)、程序计数器指向程序入口地址,就绪态、优先级等信息的填写。
(4) 将新进程插入就绪队列
原语是由若干指令构成的原子操作过程,作为整体实现功能,不可被打断。
[OS通过调用进程创建原语Creat()创建新进程。
[其他各控制工作也都是由OS内核以“原语”的方式实现,以保证不被打断。
2.进程的终止
1)引起进程终止的事件
2)终止过程
由进程调用阻塞原语阻塞自己,是主动行为:
(1)将PCB中的状态改为阻塞
(2)该PCB加入到阻塞队列中
(3)转进程调度,将处理机分配给另一进程
(4)进行进程切换,即根据两切换进程的PCB,保护与重新设置处理机状态。
4.进程的挂起与激活a4cec
挂起原语将指定进程或阻塞进程挂起。
(1)检查被挂起进程的状态,活动就绪则改为静止就绪,活动阻塞则改为静止阻塞
(2)将该PCB复制到内存(方便检查)/外存(对换)指定区域
(3)*若挂起的进程是执行态,则需重新进行进程调度。
2.3进程同步
进程间有什么相互影响?
两种制约关系:
1.间接相互制约关系:主要源于资源共享,表现为
进程A---打印机资源---进程B(互斥)
2.直接相互制约关系:主要源于进程合作,表现为
进程A写缓冲---进程B读缓冲(有序)
1.进程同步的基本概念
1)进程同步的主要任务:
使并发执行的诸进程之间能有效地共享资源和相互合作,从而使程序的执行具有可再现性。
2)临界资源
¡一次仅允许一个进程使用的资源。