2.2  进程控制

  1. 进程控制是进程管理中最基本的功能。
  2. 进程控制包括:

    ◆ 创建进程

    ◆ 终止进程

    ◆ 进程状态转换

  1. 进程控制是由OS的内核完成的。

2.2.1  进程的创建

2.进程的创建

调用进程创建原语Create(),按下述步骤创建一个进程

(1)申请空白PCB;

(2)为新进程分配资源。主要是内存空间。

(3)初始化PCB。包括:

(4)将新进程插入就绪队列

2.2.2  进程的终止

2.进程的终止过程

OS调用终止原语,按下述过程终止进程:

  1. 根据被终止进程的标识,从PCB集合中找除该进程的PCB,读出该进程状态。
  2. 若被终止进程正处于执行状态,应立即终止其执行,并置调度标志为真,用于指示该进程被终止后应重新进行调度。若该进程还有子孙进程,应将其所有子孙进程终止,以防止它们成为不可控进程。
  3. 将被终止进程的所有资源,或者归还给其父进程,或者归还给系统。
  4. 将被终止进程(它的PCB)从所在队列中移出,等待其他进程来搜索信息。 

2.2.3  进程的阻塞和唤醒

2.进程阻塞过程

调用阻塞原语block把自己阻塞。(主动行为)

阻塞(block)过程:

  1. 立即停止执行;
  2. 把PCB中进程状态由“执行”改为“阻塞”;
  3. 将PCB插入具有相同事件的阻塞队列;
  4. 转进程调度程序,将处理机分配给某个就绪进程,并进行进程切换——保留被阻塞进程的处理机状态(在PCB中),再按新进程的PCB中处理机状态设置CPU的环境。 
  5. 3.进程唤醒过程
  6. 调用唤醒原语wakeup( ),将等待事件的进程唤醒。
  7. 唤醒原语执行过程:
  8. ▲将被唤醒进程的PCB从阻塞队列移出;
  9. ▲将其PCB中进程状态由“阻塞”改为“就绪”;
  10. ▲将改PCB插入到就绪队列中。

2.2.4  进程的挂起和激活

1.进程的挂起

当出现了引起进程挂起的事件时(用户进程请求将自己挂起,或父进程请求将子进程挂起),系统将用挂起原语suspend( )将指定进程或处于阻塞状态的进程挂起。

挂起原语的执行过程

2.进程的激活

计算机操作系统(8):进程的控制相关推荐

  1. 计算机操作系统之进程

    目录 进程的定义 基本概念 进程实体与进程 PCB的组成 进程的组织 链接方式 索引方式 进程的特征 进程的状态 进程的三种基本状态 进程的另外两种状态 进程状态的转换 进程控制 何谓进程控制 如何实 ...

  2. 计算机操作系统——经典进程的同步问题

    计算机操作系统--信号量机制与经典进程的同步问题 信号量机制 随着发展,信号量从整型信号量经记录型信号量,进而发展为"信号量集"机制. 一般来说,信号量的值与相应的资源的使用情况有 ...

  3. 【计算机操作系统】-进程切换什么时候会发生呢?

    进程切换一定发生在中断/异常/系统调用处理过程中,常见的有以下情况: 时间片中断.IO中断后 更改优先级进程:(导致被中断进程进入就绪态): 阻塞式系统调用.虚拟地址异常:(导致被中断进程进入等待态) ...

  4. 计算机操作系统之进程与线程

    ⭐️前面的话⭐️ 本篇文章将介绍计算机操作系统的相关内容,主要内容有进程,进程调度,并行与并发的概念,进程间通信,进程与线程的区别.

  5. 【Linux操作系统】进程的控制

    文章目录 一.✔进程创建 1.再谈fork函数 2.写时拷贝 二.✔进程终止 1.进程终止的场景 查看进程退出码所代表的含义 2.进程终止的常见方法 3.进程终止,内核做了什么工作 三.✔进程等待 1 ...

  6. 计算机操作系统和进程

    ✨个人主页:bit me

  7. 计算机操作系统 - 目录

    计算机操作系统 概述 进程管理 死锁 内存管理 设备管理 链接 参考资料 Tanenbaum A S, Bos H. Modern operating systems[M]. Prentice Hal ...

  8. 计算机操作系统-进程的描述与控制

    目录 进程的描述 进程的定义和特征 什么是进程 所以进程到底什么呢? 进程控制块(PCB) PCB的作用 进程的特点 进程的缺点 进程的基本状态 就绪状态 执行状态 阻塞状态 创建状态 终止状态 挂起 ...

  9. 考研OR工作----计算机操作系统简答题及疑难知识点总结(第二章 进程的描述与控制)

    计算机操作系统从第二章开始内容会变得异常多,还是希望能够帮助到大家,在这一章阿婆主还会把书上的典型的PV操作题给打上来,给大家用作参考,如果有问题的地方,还请大家在文章下方留言,我好更正,或者你们有更 ...

  10. 『操作系统』 进程的描述与控制 Part 1 前驱图与程序执行

    文章目录 2.1 前趋图和程序执行 2.1.1 程序的顺序执行及其特征 1. 程序的顺序执行 2.程序顺序执行时的特征 2.1.2 前趋图 2.1.3 程序的并发执行及其特征 1. 程序的并发执行 2 ...

最新文章

  1. 多进程PHP脚本实现海量数据转移总结
  2. Cordic的学习初步
  3. Sed教程(一):简介、环境设置、工作流程
  4. openpyxl方法记录
  5. linux下使用make指令生成程序时提示“XXX is up to date”问题的解决办法
  6. 记Booking.com iOS开发岗位线上笔试
  7. qt显示rgba8888 如何改 frame_Qt开源作品17-IP地址输入控件
  8. 这半年来的飞秋官网磕磕碰碰
  9. 移动端取消iphone ipad默认按钮
  10. javaScript 解析 xml
  11. php课程设计学生信息管理系统,学生成绩管理系统/学生信息管理系统
  12. 二叉树基础题(五):二叉树的下一个节点最低公共祖先节点
  13. Springboot定时任务【多线程处理】
  14. 中国经济八问-中国视角下的宏观经济
  15. 阿波罗apollo使用方法+领英使用
  16. 二分查找的左右逼近法
  17. 电力爱陆通公专一体模块,国网加密模块,国网硬件加密模块的工作原理
  18. 什么是buffer?
  19. matplotlib之pyplot模块之坐标轴配置(axis():设置坐标轴外观、设置坐标轴范围)
  20. 2C领域最后一个资本宠儿,快看成“超新Z世代”娱乐平台

热门文章

  1. 概括ADO.NET数据库连接的所有形式(基础)
  2. [导入]相片: 53787515.jpg
  3. 使用PhpSpreadsheet将Excel导入到MySQL数据库
  4. flask jinja2 如何遍历新闻列表
  5. 主动型页面性能利器:Page Status
  6. linux 中查找文件,并且将目标文件按时间顺序排序
  7. 学习《css世界》笔记之使用vertical-align数值实现文字和小图标对齐
  8. [html] 编写html时,你有没有用过Emmet插件呢?说说它的优点及规则有哪些?
  9. [html] 你知道什么是反向链接吗?它有什么应用场景呢?
  10. 工作392-选择Hbuilder x导入项目