一、什么是进程控制
进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态之间的转换等功能。
简而言之就是:进程控制就是实现进程状态的转换。
二、如何实现进程控制
使用原语实现,原语的执行具有原子性,会一气呵成。
思考:那么为何进程控制(状态转换)过程要一气呵成呢?
如果不能一气呵成,就有可能导致操作系统中某些关键的数据结构信息不统一的情况,这些影响操作系统进行别的管理工作。
三、如何实现原语的原子性
1.原语的执行具有原子性,即执行过程只能一气呵成,期间不予许被中断。可以用“关中断指令”和“开中断指令”这两个特权执行实现原子性。
2.CPU执行了关中断指令后,就不再例行的检查中断信号,直到执行开中断指令之后才会恢复检查,这样关中断、开中断之间的这些指令序列是不可被中断的,这就实现了“原子性”。
四、进程控制相关的原语
**注意:**其实不论是哪个进程的控制原语,要做的无非是三类事情:
1)更新PCB中的信息(修改进程的状态state,保存/恢复运行环境)
2)将PCB插入合适的队列
3)分配/回收资源
1