当前位置: 首页 > article >正文

Linux CPU调度算法

简述

● CPU数量 <= 进程数
● 每次CPU都要决定下一个运行的进程,这个选择叫做CPU调度;这个选择工作就叫做CPU调度程序
● 如果一个进程中有多个线程的话,内核管理的线程就以线程为基本单位
在这里插入图片描述
● 进程通常分为两种,一种长时间占用CPU进行计算称为计算密集型,另一种CPU计算时间短但访问外接设备时间长、次数多称为IO密集型
● 随着芯片的计算速度越来越快,磁盘读写速度相对较慢,IO密集型进程数量越来越多,更加考虑优化IO密集型进程
● 因此不同的场景需要不同的调度策略
● 大致可以把环境分为三类:批处理、交互式、实时系统

批处理
○先来先服务
○最短作业优先
○最短剩余时间优先

交互式
○轮转调度
○优先级调度

实时系统
○准时比正确的运行更重要

● 进程切换需要从用户态到内核态进行处理再回到用户态,所以时间片不能太短;但也不能太长,所以时间片通常在20ms到50ms之间


http://www.kler.cn/a/457619.html

相关文章:

  • 嵌入式入门Day35
  • ts总结一下
  • Django Settings 优化与常用配置指南
  • Linux-mac地址
  • 【vim】vim常用操作总结
  • 计算机体系结构期末复习3:GPU架构及控制流问题
  • 领克Z20结合AI技术,革新自动驾驶辅助系统
  • 无需配置设备,借助GitHub快速编译项目并直接运行!
  • 更新本地 specs 仓库时,出现 SSL 证书验证失败错误 临时解决方案
  • GSM PDU解码在Linux下的C语言实现
  • [oeasy]python055_python编程_容易出现的问题_函数名的重新赋值_print_int
  • ARM64 CSEL条件 B条件一览
  • 【畅购商城】详情页模块之评论
  • STM32完全学习——使用定时器1精确延时
  • Docker离线安装简易指南
  • 0基础跟德姆(dom)一起学AI 自然语言处理06-文本数据增强
  • DAY4 登陆界面补充对话框
  • 【机器学习】深度学习(DNN)
  • 【JavaEE进阶】Spring传递请求参数
  • 总结TCP/IP四层模型
  • 机器学习基础-神经网络与深度学习
  • ID读卡器UDP协议Delphi7小程序开发
  • Java编程题_面向对象和常用API01_B级
  • 电动汽车用永磁同步电机控制系统研究与设计
  • Streamlining QA with Automated Testing for 3D Models
  • Vue计算属性、侦听器