长程、中程、短程调度

简述

方式 解释
短程调度 从准备队列中选择线程送到CPU执行
中程调度 从将外存中挂起的线程中选择线程送到内存
长程调度 从外存中选择一个任务(作业)送到内存中,为之创建线程,并将这个线程加入准备队列

简单结构

在这里插入图片描述

短程调度

又叫低级调度,习惯上所说的进程调度指的就是短程调度,短程调度是指将准备队列(Ready)中的进程调度到CPU中执行
在这里插入图片描述

中程调度

挂起有两个队列,就绪挂起和阻塞挂起
内存准备队列中被挂起的线程会进入就绪挂起队列
内存阻塞队列中被挂起的线程会进入阻塞挂起队列
在挂起状态时,阻塞挂起队列中的线程会继续执行阻塞,如果直到阻塞完成还没有被调入内存的话,他就会进入就绪挂起队列

中程调度又称中级调度, 是指挂起之间的调度,他是将在外存中被挂起的、还未执行完毕的进程调回内存,调回内存时会根据他的挂起类型,进入阻塞队列或者准备队列
在这里插入图片描述

长程调度

又叫高级调度,作业调度,随着CPU的执行,就会一些线程被执行完,内存中线程数量减小,为了让CPU高效率运行,就要拿一些任务到内存中执行,有两种方式

  1. 通过中程调度把外存中挂起的线程拿回内存执行
  2. 将外存中“想要执行的其他任务(作业)”拿到内存中,并为其创建线程,等待执行

这第二种方法就是所谓的长程调度
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章