Linux CPU调度算法

简述

● CPU数量 <= 进程数

● 每次CPU都要决定下一个运行的进程,这个选择叫做CPU调度;这个选择工作就叫做CPU调度程序

● 如果一个进程中有多个线程的话,内核管理的线程就以线程为基本单位

● 进程通常分为两种,一种长时间占用CPU进行计算称为计算密集型,另一种CPU计算时间短但访问外接设备时间长、次数多称为IO密集型

● 随着芯片的计算速度越来越快,磁盘读写速度相对较慢,IO密集型进程数量越来越多,更加考虑优化IO密集型进程

● 因此不同的场景需要不同的调度策略

● 大致可以把环境分为三类:批处理、交互式、实时系统

批处理

○先来先服务

○最短作业优先

○最短剩余时间优先

交互式

○轮转调度

○优先级调度

实时系统

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

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

相关推荐
勤劳的进取家12 小时前
如何配置服务器代理转发
运维·服务器
jialan7512 小时前
上海服务器 CentOS7.6 mysql8 redis jdk17 Tomcat10
运维·服务器·redis
sulikey12 小时前
个人Linux操作系统学习笔记1 - Linux权限与工具
linux·笔记·学习
秦歌66612 小时前
RAG-6-高级RAG实战案例:自适应路由 + 自评估重写 + 网络回退
java·服务器·前端·人工智能·python
优化Henry12 小时前
LTE站点频闪退服告警根因定位与处理
运维·网络·信息与通信
zzipeng12 小时前
开发板与ubuntu/windows三者之间联网方式
linux·运维·ubuntu
艾莉丝努力练剑13 小时前
【Linux网络】计算机网络入门:Socket编程预备,从字节序共识到 Socket 地址结构的“伪多态”设计
linux·服务器·网络·c++·学习·计算机网络
学***542315 小时前
换新电脑如何迁移原有数据?4 种高效数据迁移方法详解
服务器·电脑·负载均衡
vortex521 小时前
Debian 包管理全指南:从底层 dpkg 到高层 apt 及其日志追踪
linux·运维·debian
偶尔上线经常挺尸21 小时前
《每日一命令08:scp——安全的远程复制》
linux·安全·scp·文件传输·运维基础·远程复制