进程控制

进程控制是进程管理中最基本的功能,用于创建撤消进程,并对进程在整个生命周期中各种状态转换进行有效控制。进程控制一般是由OS的内核中的原语来实现的。
操作系统内核
   
操作系统内核中含有许原语,可以划分为:
       
(1) 系统状态          (2) 用户状态

    1. 支撑功能
  (1) 中断处理。  (2) 时钟管理。  (3) 原语操作。
 2. 资源管理功能
  
(1) 进程管理。  (2) 存储器管理。  (3) 设备管理。

进程的创建

  1. 进程的层次结构
  在OS中,创建新进程是通过创建原语完成的,允许一个进程创建另一个进程,通常把创建进程的进程称为父进程,而把被创建的进程称为子进程。子进程可继续创建更多的孙进程,从而形成一棵有向的进程树,即进程图

2. 引起创建进程的事件
  
为使程序之间能并发运行,应先为它们分别创建进程。导致一个进程去创建另一个进程的典型事件有四类:
      
(1) 用户登录 (2) 作业调度 (3) 提供服务 (4) 应用请求

3. 进程的创建(Creation of Process)
  (1) 申请空闲 PCB  (2) 为新进程分配内存等资源

进程的终止

  1. 引起进程终止(Termination of Process)的事件
  (1) 正常结束  (2) 异常结束  (3) 外界干预
       
2. 进程的终止过程
  (1) 找出进程PCB,读出状态;
  
(2) 若处于执行状态,应立即终止该进程的执行;并重置标志;终止子孙进程;释放 全部资源 ; 移出队列并收回 PCB。
     (3)  初始化PCB            (4) 新进程插入就绪队列

进程的阻塞与唤醒

  1. 引起进程阻塞和唤醒的事件
  有下述几类事件会引起进程阻塞或被唤醒:
(1) 向系统请求共享资源失败。(2) 等待某种操作的完成。
(3) 新数据尚未到达。(4) 等待新任务的到达。
  
2. 进程阻塞过程
   如发生上述事件,应停止进程的执行,将其状态改为阻塞状态, 并把它的 PCB 插入相应的阻塞队列, 转调度程序进行重新调度。

      3. 进程唤醒过程

    当阻塞进程所等待的事件完成时,应调用wakeup将该进程的状态从阻塞状态转换成 就绪状态。具体的操作过程是: 在等待队列中移出该进程的 PCB, 将其置成就绪状态,并把它插入就绪队列。

进程的挂起与激活

  进程的挂起与激活过程
   
首先把被阻塞的进程从等待该事件的阻塞队列中移出,将其PCB 中的现行状态由阻塞改为就绪,然后再将该PCB 插入到就绪队列中。
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值