【操作系统学习笔记06】

发布时间 2023-11-21 02:35:05作者: Yukkurii

以下是下面链接中教程的笔记,如有侵权请联系我删除。随便学学可能不严谨,但如果有离谱错误烦请指正。
https://www.bilibili.com/video/BV1YE411D7nH?p=19&vd_source=febdc1a8028af6b442667407286a2750

调度类型

  • 低级调度(进程调度):给就绪队列中的进程分配处理机,最基本的调度,频率很高。内存 -> CPU
  • 中级调度(内存调度):挂起队列中哪个进程先重新调入内存。外存 -> 内存
  • 高级调度:哪个作业调入内存,每个作业只调入一次,调出一次,调入的时候才建PCB,调出的时候撤销PCB。外存 -> 内存

挂起:内存不够时,可能会把一些进程放到外存中,重新激活时再处理。

  • 就绪挂起:就绪态、创建态、运行态、阻塞挂起可能进入
  • 阻塞挂起:阻塞态可能进入

需要调度的场景:

  • 进程主动放弃CPU:终止、异常、请求阻塞
  • 进程动放弃CPU:时间片用完、紧急事件(中断)、更高优先级进程

不能调度的场景:

  • 处理中断时
  • 进程在操作系统内核程序临界区时(临界区:访问临界资源的代码。临界资源:进程需要互斥访问的资源)
  • 原子操作中

进程调度方式

  • 非剥夺:只允许进程主动放弃
  • 剥夺:可以被更重要更紧急的任务抢占处理机