进程控制
#进程控制
基本概念:
1.进程控制就是要实现进程状态的转换
2.进程控制用原语来实现
相关原语:
1.进程的创建
2.进程的终止
3.进程的阻塞(与唤醒要成对出现)
4.进程的唤醒(与阻塞要成对出现)
5.进程的切换
#原语
原语的执行具有原子性,即整个执行过程一气呵成,不允许中断,可以使用“关中断指令”和“开中断指令”这两个特权指令来实现原子性
#进程控制相关原语
创建原语:
1.申请空白PCB
2.为新进程分配所需资源
3.初始化PCB
4.将PCB插入就绪队列(创建态->就绪态)
引起进程创建的事件:
1.用户登录
2.作业调度
3.提供服务
4.应用请求
#进程的终止
撤销原语:
1.从PCB集合中找到终止进程的PCB
2.若进程正在运行,立即剥夺CPU,将CPU资源分配给其他进程
3.终止其所有子进程(进程的关系是树形结构,进程之下还可能有其子进程)
4.将该进程拥有的所有资源归还给父进程或者操作系统
5.删除PCB
引起进程结束的事件:
1.正常结束:进程自己请求终止(exit系统调用)
2.异常结束:整数除以0,非法使用特权指令,被操作系统强行杀死
3.外界干预:用户选择杀死进程
#进程的切换

拓展:操作系统中CPU一些须知寄存器
由于并发的性质,进程之间需要来回切换,在进程切换时,PCB会保存这个进程的运行环境(即cpu中一些必要寄存器中的信息),当进程再次被启用时,可通过PCB恢复它的运行环境。
#进程的阻塞与唤醒
