s5-1 CPU调度
基本概念
通过多道程序设计得到 CPU 的最高利用率
(CPU-- I/O 脉冲周期 - - 进程的执行包括进程在 CPU 上执行和等待 I/O )
进程的执行以 CPU 脉冲开始,其后跟着 I/O 脉冲.进程的执行就是在这两个状态之间进行转换.
cpu和I/O burst的交替序列
cpu-burst
CPU 脉冲的分布, 在系统中, 存在许多短 CPU 脉冲,只有少量的长 CPU 脉冲
比如: I/O 型作业具有许多短 CPU 脉冲, 而 CPU 型作业则会有几个长 CPU 脉冲,这个分布规律对 CPU 调度算法的选择是非常重要的.
CPU Scheduler
cpu调度
当CPU空闲时,OS就选择内存中的某个就绪进程,并给其分配CPU
cpu调度器
(CPU调度可能发生在以下情况下): 1.Switches from running to waiting state(从运行转到等待). 2.Switches from running to ready state(从运行转到就绪).
3.Switches from waiting to ready(从等待转到就绪). 4.Terminates(终止运行).
Scheduling under 1 and 4 is nonpreemptive (发生在1、4两种情况下的调度称为非抢占式调度).
All other scheduling is preemptive (其他情况下发生的调度称为抢占式调度).
cpu调度方案
非抢占方式(nonpreemptive)
把处理机分配给某进程后,便让其一直执行,直到该进程完成或发生某事件而被阻塞时,才把处理机分配给其它进程,不允许其他进程抢占已经分配出去的处理机。
优点:实现简单、系统开销小,适用于大多数批处理系统环境
缺点:难以满足紧急任务的要求,不适用于实时、分时系统要求
抢占方式(Preemptive mode)
允许调度程序根据某个原则,去停止某个正在执行的进程,将处理机重新分配给另一个进程。
抢占的原则
时间片原则:各进程按时间片运行,当一个时间片用完后,便停止该进程的执行而重新进行调度。这个原则适用于分时系统。
优先权原则:通常对一些重要的和紧急的进程赋予较高的优先权。当这种进程进入就绪队列时,如果其优先权比正在执行的进程优先权高,便停止正在执行的进程,将处理机分配给优先权高的进程,使之执行
短作业优先原则:当新到达的作业比正在执行的作业明显短时,将暂停当前长作业的执行,将处理机分配给新到的短作业,使之执行。
s5-1 CPU调度相关推荐
- 操作系统原理第五章:CPU调度
目录 1 CPU调度基本概念 1.1 基本概念 1.2 CPU调度的时机 1.3 CPU调度方案 2 CPU调度算法 2.1 先来先服务(FCFS) 2.2 短作业优先(SJF) 2.3 优先级 2. ...
- 【操作系统原理及Linux实践】 四cpu调度scheduling
课程: 操作系统原理及Linux实践 cpu调度 调度算法 先来先服务算法(FCFS) Round robin 时间片轮转 最短作业优先 优先级调度算法
- 操作系统(五)CPU调度
CPU调度是多道程序操作系统的基础. 转载于:https://www.cnblogs.com/bigbigbigo/p/8636332.html
- 操作系统之CPU调度
1.什么是CPU调度? 进程由运行态切换到其他状态,或者由其他状态切换到运行态,也就是进程在CPU中执行情况发生变化: 2.上下文切换(进程)什么时候切换?根据什么切换?是本文的重点 抢占:可能由于某 ...
- 操作系统实验报告16:CPU 调度
操作系统实验报告16 实验内容 实验内容:CPU 调度. 讨论课件 Lecture19-20 中 CPU 调度算法的例子,尝试基于 POSIX API 设计一个简单调度器(不考虑资源竞争问题): 创建 ...
- 操作系统复习笔记 06 CPU Scheduling CPU调度
CPU的三级调度: 1.高级调度(Long-term):作业调度,从外存进内存 2.低级调度(Short-term):进程调度,分配处理机 3.中级调度(Medium-term):对换 通过多道程序设 ...
- 操作系统 cpu调度_CPU调度| 操作系统
操作系统 cpu调度 调度标准 (Scheduling Criteria) There are many criteria which have been suggested for comparin ...
- 带你探索CPU调度的奥秘
摘要:本文将会从最基础的调度算法说起,逐个分析各种主流调度算法的原理,带大家一起探索CPU调度的奥秘. 本文分享自华为云社区<探索CPU的调度原理>,作者:元闰子. 前言 软件工程师们总习 ...
- 总结-linux初识进程(包括cpu调度、进程创建、僵尸进程(重点)、环境变量)
冯诺依曼体系结构--现代计算机的硬件体系结构 输入设备.输出设备(数据输出).存储器(数据缓冲).运算器(数据运算).控制器. 所有设备都是围绕存储器工作---CPU是从存储器中获取数据处理---控制 ...
最新文章
- python 画蝴蝶_ProE常用曲线方程:Python Matplotlib 版本代码(蝴蝶曲线)
- 关于字符串计算size的方法比较
- COM+组件注册方法
- frp后台运行和停止
- 英语笔记-20151209
- 11 个 Linux 上最佳的图形化 Git 客户端
- java 作业调度_Java使用quartz实现作业调度
- Oracle Java认证OCJP考试题库在哪找
- finereport9.0破解版|finereport10.0破解并发数|finereport授权注册|FineBI5.0破解lic
- USB加密狗复制克隆破解软件
- echarts中国省份地图
- Android 三类框架的理解以及MVVM框架的使用
- 初学卡尔曼滤波与扩展卡尔曼滤波
- 手扶电梯缺陷检测图像数据集(VOC标签)
- FaShop-开源拖拽式小程序搭建平台
- CTF之misc-图片隐写
- 读书笔记2014第8本:《追寻生命的意义》
- 移动应用开发跨平台工具imag.js入门
- 如何实现罗克韦尔PLC AB1756的远程监控数据采集?
- Origin数据设置为日期/时间的方法
热门文章
- pandas修改数据类型_如何正确在pandas里使用inplace参数
- 字典序最小是什么意思_《拓扑序简介》第十六讲
- python四大高阶函数求导_4个python常用高阶函数的使用方法
- c++ vlc读取摄像头_Qt音视频开发1-vlc解码播放
- Spark SQL:SQLContext
- 又一个神器!只需一行代码,纯文本秒变Markdown
- openpyxl库,1秒合并多张表格并设置图表格式
- 当心啊!仅仅50行Python,就可以在手机端看小姐姐的电脑桌面!
- 程序员如何用Python了解女朋友的情绪变化?
- php软件升级管理系统,POSCMS开源内容管理系统 v3.6.1 升级说明