父进程请求请求终止子进程 终止原语的主要功能 进程终止原语的主要功能是撤消一个进程其算法思想如下 从PCB总链中查找到被终止进程的PCB若无则出错返回; 若被终止进程正处于运行状态则立即停止该进程的执行设置重新调度标志; 若被终止进程有子孙进程还应将该进程的子孙进程予以撤消; 对于被终止进程所占有的资源或者归还给父进程或者归还给系统; 最后撤消它的进程控制块若需要转调度程序 进程阻塞 引起进程阻塞的原因有 请求系统服务如请求分配资源但尚无资源分配 新数据尚未到达如合作进程之间 无新工作可做进程已完成了给定任务新任务未到 阻塞原语的主要功能 阻塞原语的主要功能是将进程由执行状态转为阻塞状态其算法思想如下 停止当前执行进程将进程状态改为阻塞; 保存该进程的现场信息; 将该进程PCB插入到等待队列; 转进程调度程序 进程唤醒 当进程等待的事件发生时由发现者进程将其唤醒 唤醒原语的主要功能是将进程唤醒其算法思想如下 从等待队列中移出相应进程; 将该进程状态改为就绪并将进程插入就绪队列; 转进程调度或返回 阻塞与唤醒的关系 一个进程由执行状态转变为阻塞状态是这个进程自己调用阻塞原语去完成的 进程由阻塞状态转变为就绪状态是另一个发现者进程调用唤醒原语实现的 一般发现者进程与被唤醒进程是合作的并发进程 进程的挂起 在某些系统中希望人为将进程挂起使之处于静止状态 进程挂起的原因有 内存不足在外存挂起 用户要求可以挂起进程以腾出资源 进程特性周期性执行等待下一次执行时可能挂起 父进程请求父进程希望挂起子进程检查 操作系统要求挂起一个问题进程 挂起状态 基于上述原因需引入一个新的状态挂起状态 挂起原语的主要功能 挂起原语的主要功能是将指定进程挂起其算法思想如下 若进程执行则停止其执行; [] [] [] [] [] [] [] [] [] |