2.1.3原语对进程的控制

全知识整理目录

操作系统整理的目录,包括了整理的所有操作系统的知识。


概述

进程控制,就是对系统当中所有进程,实施有效的管理,它具有创建新进程,撤销已有进程,实现进程状态转换等功能。

即,控制几种进程状态的转换。

 

 进程控制原语

进程控制会导致进程状态的转换。无论是那个原语,都会做以下事情。

  1. 更新PCB中的信息(修改进程状态标志,将运行环境保存到PCB,从PCB恢复运行环境) 
  • 所有进程原语,一定会修改进程状态标志。
  • 剥夺当前运行进程的CPU使用权,必然需要保存其运行环境。
  • 某进程开始运行前必然要恢复期运行环境。

     2.将PCB插入合适的队列。

     3.分配/回收资源。

进程创建原语  

状态:无-->创建态-->就绪态

执行:申请空白PCB-->为新进程分配所需资源-->初始化PCB-->将PCB插入就绪队列。

进程的终止原语

状态:就绪态/阻塞态/运行态-->终止态-->无

执行:从PCB集合中找到终止进程PCB-->进程正在运行,就剥夺CPU将CPU分配给其他进程-->终止其所有子进程-->删除PCB

进程的唤醒和阻塞原语

  • 进程的阻塞和唤醒原语是成对存在的,且必须成对使用。
  • 阻塞原语:是由被阻塞进程自我调用实现的。
  • 唤醒原语:是由一个被唤醒进程合作或被其他相关进程调用实现的。

唤醒

状态:运行态-->阻塞态

执行:找到需要阻塞的进程对应的PCB-->保护进程运行现场,将PCB状态信息设置为“阻塞状态”,暂时停止进程运行-->将PCB插入相应事件的等待队列

阻塞

状态:阻塞态-->就绪态

执行:在事件等待队列中找到PCB-->将PCB从等待队列移除,设置进程为就绪态-->将PCB插入就绪队列,等待被调度。

进程的切换原语

状态:运行态-->阻塞态/就绪态(或者,就绪态-->运行态)

执行:将运行环境信息存入PCB-->PCB移入相应队列-->选择另一个进程执行,并更新其PCB-->根据PCB恢复新进程所需的运行环境。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ybbgrain

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值