【操作系统学习笔记06】
以下是下面链接中教程的笔记,如有侵权请联系我删除。随便学学可能不严谨,但如果有离谱错误烦请指正。
https://www.bilibili.com/video/BV1YE411D7nH?p=19&vd_source=febdc1a8028af6b442667407286a2750
调度类型
- 低级调度(进程调度):给就绪队列中的进程分配处理机,最基本的调度,频率很高。内存 -> CPU
- 中级调度(内存调度):挂起队列中哪个进程先重新调入内存。外存 -> 内存
- 高级调度:哪个作业调入内存,每个作业只调入一次,调出一次,调入的时候才建PCB,调出的时候撤销PCB。外存 -> 内存
挂起:内存不够时,可能会把一些进程放到外存中,重新激活时再处理。
- 就绪挂起:就绪态、创建态、运行态、阻塞挂起可能进入
- 阻塞挂起:阻塞态可能进入
需要调度的场景:
- 进程主动放弃CPU:终止、异常、请求阻塞
- 进程动放弃CPU:时间片用完、紧急事件(中断)、更高优先级进程
不能调度的场景:
- 处理中断时
- 进程在操作系统内核程序临界区时(临界区:访问临界资源的代码。临界资源:进程需要互斥访问的资源)
- 原子操作中
进程调度方式
- 非剥夺:只允许进程主动放弃
- 剥夺:可以被更重要更紧急的任务抢占处理机
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)