调度的概念与层次

调度的概念与层次

image


一、调度解决的问题

理解:在资源有限不能同时处理所有任务的情况下,需要确定某种规则来确定处理这些任务的顺序(划分权级或短时优先或其他等)

二、调度的层次划分

image

(一)高级调度/长程调度/作业调度

内存的空间有限,无法将所有任务同时装入内存。则按一定的原则从外存的作业后备队列中挑选一个作业调入内存,并创建进程。每个作业只调入一次,调出一次。作业调入时会建立 PCB ,调出时才撤销 PCB。

(二)中级调度/中程调度/内存调度

按照某种策略决定将哪个处于挂起状态的进程重新调入内存。

内存不够时,可将某些进程的数据调出外存。等内存空闲或者进程需要运行时再重新调入内存。暂时调到外存等待的进程状态为挂起状态。被挂起的进程 PCB 会被组织成挂起队列。

从就绪挂起到就绪,从阻塞挂起到阻塞,引入中程调度的主要目的,是为了提高内存利用率和系统吞吐量。

(三)低级调度/短程调度/进程调度/CPU调度

按照某种策略从就绪队列中选取一个进程,将处理机分配给它。

进程调度是操作系统中最基本的一种调度,在一般的操作系统中都必须配置进程调度。进程调度的频率很高,一般几十亳秒一次。

——理解:

区分作业调度和内存调度,主要在于作业调度会建立 PCB ,包括分配唯一进程号等,只会执行一次。而内存调度时在此前已经有唯一 PID 的 PCB,调度区分在是否存在于内存,可执行多次。两者即面向作业和面向进程的区别。

三、进程的挂起和七状态模型

image

​​image

image

posted @   Wind_730  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示