文章目录

  • 进程调度的时机、切换与过程、方式
    • 知识总览图
    • 进程调度的时机
    • 进程的调度方式
    • 进程的切换与过程

进程调度的时机、切换与过程、方式

知识总览图

进程调度的时机

进程调度(低级调度),就是按照某种算法从就绪队列中选择一个进程为其分配处理机。

例题

临界资源:一个时间段内只允许一个进程使用的资源。各进程需要互斥地访问临界资源。

临界区:访问临界资源的那段代码。

内核程序临界区一般是用来访问某种内核数据结构的,比如进程的就绪队列(由各就绪进程的PCB组成)

如果还没退出内核程序临界区(还没解锁)就进行进程调度,但是进程调度相关的程序肯定要访问就绪队列这个临界资源,因为它需要从就绪队列中挑选一个线程,为它分配处理机,但此时就绪队列被锁住了,因此又无法顺利进行进程调度。

内核程序临界区访问的临界资源如果不尽快释放的话,极有可能影响到操作系统内核的其他管理工作。因此在访问内核程序临界区期间不能进行调度与切换。

在打印机打印完成之前,进程一直处于临界区内,临界资源不会解锁。但打印机又是慢速设备,此时如果一直不允许进程调度的话就会导致CPU一直空闲。

普通临界区访问的临界资源不会直接影响操作系统内核的管理工作。因此在访问普通临界区时可以进行调度与切换。

进程的调度方式

进程的切换与过程

“狭义的进程调度”与“进程切换”的区别:

狭义的进程调度指的是从就绪队列中选中一个要运行的进程。(这个进程可以是刚刚被暂停执行的进程,也可能是另一个进程,后一种情况就需要进程切换)

进程切换是指一个进程让出处理机,由另一个进程占用处理机的过程。

广义的进程调度包含了选择一个进程和进程切换两个步骤。

进程切换的过程主要完成了:

1.对原来运行进程各种数据的保存

2.对新的进程各种数据的恢复

(如:程序计数器,程序状态字,各种数据寄存器等处理机现场信息,这些信息一般保存在进程控制块中)

注意:进程切换是有代价的,因此如果过于频繁的进行进程调度、切换,必然会使整个系统的效率降低,使系统大部分时间都花在了进程切换上,而真正用于执行进程的时间减少。

进程调度的时机、切换与过程、方式相关推荐

  1. 2.2.2.进程调度的时机切换与过程、方式

    2.2.2.进程调度的时机切换与过程.方式 文章目录 2.2.2.进程调度的时机切换与过程.方式 1.知识概览 2.时机 3.切换与进程 3.1进程的切换与过程 4.方式 4.1抢占式和非抢占式 5. ...

  2. 2.2.2 进程调度的 时机 切换与过程 调度方式

    目录 思维导图 进程调度的时机 进程调度的切换与过程 进程调度的方式 思维导图 进程调度的时机 简言之: 临界区有两种 一种是内核程序临界区 它不能进行调度与切换 另一种是普通的临界区 它可以进行处理 ...

  3. 进程调度的时机切换与过程调度方式

    进程调度的时机 进程调度和切换程序是操作系统内核程序. 请求调度的事件发生后,才可能运行进程调度程序,调度了新的就绪进程后,才会进行进程的切换.理论上这三件事情应该顺序执行,但在实际设计中,操作系统内 ...

  4. 20135202闫佳歆--week 8 实验:理解进程调度时机跟踪分析进程调度与进程切换的过程--实验及总结...

    week 8 实验:理解进程调度时机跟踪分析进程调度与进程切换的过程 1.环境搭建: rm menu -rf git clone https://github.com/megnning/menu.gi ...

  5. 实验八---理解进程调度时机跟踪分析进程调度与进程切换的过程

    实验目的: 使用gdb跟踪分析一个schedule()函数,理解Linux系统中进程调度的时机. 实验过程: 登陆实验楼虚拟机http://www.shiyanlou.com/courses/195 ...

  6. 理解进程调度时机跟踪分析进程调度与进程切换的过程

    虞啸川 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 Linux既支持 ...

  7. Linux内核分析--理解进程调度时机、跟踪分析进程调度和进程切换的过程

    学号后三位:426  原创作品转载请注明出处 + https://github.com/mengning/linuxkernel/ 1.进程的创建 除了0号进程(系统创建的)之外,linux系统中都是 ...

  8. linux每隔多久调度y,Linux 进程调度+Linux系统一般执行过程 笔记

    进程的调度时机与进程的切换 操作系统原理中介绍了大量进程调度算法,这些算法从实现的角度看仅仅是从运行队列中选择一个新进程,选择的过程中运用了不同的策略而已. 对于理解操作系统的工作机制,反而是进程的调 ...

  9. 2.2.2 操作系统之进程调度的时机(主动放弃与被动放弃)、切换与过程(广义与狭义)、方式(非剥夺与剥夺)

    文章目录 0.思维导图 1.时机 (1)什么时候进行进程调度? (2)什么时候不能进行进程调度? (3)OS内核程序临界区与普通临界区的进程调度情况 2.进程调度的方式 3.进程的切换和过程 0.思维 ...

  10. 王道操作系统考研笔记——2.1.7 进程调度的时机、切换与过程、方式

    文章目录 2.1.7 进程调度的时机.切换与过程.方式 2.1.7.1 进程调度的时机 2.1.7.2 进程调度的方式 2.1.7.3 进程的切换和过程 2.1.7.4 小结 2.1.7 进程调度的时 ...

最新文章

  1. ios navigation的返回按钮长按_Android Jetpack架构组件 — Navigation入坑详解 [转]
  2. HTML连载14-文字属性补充简写
  3. [PHP] 面向对象
  4. windows系统上安装mysql操作过程及常见错误处理
  5. 创意排版!直通车简约正方形推广设计灵感
  6. html查看ie版本,jquery怎么判断浏览器是否是ie
  7. jdk优先级队列是如何实现的
  8. 2000-2019年中国地级市人均GDP
  9. html js定义json对象,JS中的JSON对象的定义和取值实现代码
  10. 推荐一个超级好用的XML编辑器
  11. 【Grafana】个人体验
  12. PADS的四层板转换成2层板
  13. 2021年美容师(初级)新版试题及美容师(初级)证考试
  14. 高德地图坐标转平面坐标
  15. css:绘制一角是圆角的三角形
  16. python 多版本共存
  17. 《道德经》的三个重要版本
  18. 视频教程-PPT吸金大法 20+万年薪工作总结不用愁-Office/WPS
  19. N皇后问题(java)
  20. 快速get进程、线程基础知识

热门文章

  1. Go语言圣经(中文版)读书笔记
  2. 本地搭建gitlab环境,配置邮件通知和基本操作
  3. 智能算力的枢纽如何构建?中国云都的淮海智算中心打了个样
  4. ARChon 分析之六:native-client 的加载、显示与事件传递浅析
  5. 用matlab画(求)没有原函数的不定积分图像(定积分值)
  6. python接口测试实战--sign签名
  7. 自学K60时的部分小结
  8. 怎么用计算机圣诞节快乐,2019圣诞节快乐祝福 最新圣诞节快乐祝福的话
  9. JavaScript--【JS】排他思想
  10. 陶瓷贴片电容的容值和封装对应的选择关系