cpu的调度分为高级,中级和低级三种方式(CPU调度是什么)
CPU 是最重要的计算机资源之一 ,CPU 调度指的是操作系统将 CPU 资源分配给不同进程的过程 。CPU 调度的整个过程 ,由操作系统中的短期调度程序(一种进程调度程序)负责完成 。每当 CPU 处于空闲状态时 ,短期调度程序就会从位于内存的就绪队列中挑选一个进程 ,交给 CPU 执行 。
CPU调度方式
CPU 调度的方式有 2 种 ,分别称为非抢占式调度和抢占式调度 。
1) 非抢占式调度为了充分利用 CPU 资源 ,当进程正常执行结束或者由运行状态切换至等待状态(例如执行 I/O 操作 、等待子进程执行完毕)时 ,调度程序会从就绪队列中挑选出一个进程并交给 CPU 执行 ,这样的 CPU 调度称为非抢占式调度 。
也就是说 ,在非抢占式调度的模式中 ,执行的进程可以一直占用 CPU 资源 ,直至其执行完毕或者切换到等待状态 。
2) 抢占式调度所谓抢占式调度 ,是指进程在执行过程中被强制中止执行,同时调度程序将 CPU 资源分配给另一个进程的过程 。
支持抢占式调度的操作系统 ,通常会为各个进程设置不同的优先级 ,优先级低的进程必须等待优先级高的进行执行完毕后才能继续执行 。因此,如果有优先级更高的进程从等待状态切换到就绪状态 ,则当前执行的进程就会被强行中断 ,同时 CPU 资源会分配给优先级高的进程 。
以我们最熟悉的 Windows 操作系统为例 ,最初的 Windows 系统(例如 Windows 3.x)采用非抢占式调度的方法 ,自 Windows 95 开始引入抢占式调度方法 ,并且之后所有的 Windows 系统都采用的是抢占式调度方法 。
CPU调度算法
基于不同的设计初衷 ,先后诞生了很多 CPU 调度算法 。
评价一个 CPU 调度算法的“好坏 ” ,可以从多个方面进行考量 ,如表 1 所示 。
表 1 CPU调度算法“好坏 ”的衡量标准 衡量标准 描 述 CPU 利用率 能够充分利用 CPU 资源 ,使 CPU 大部分时间都处于工作状态。 吞吐量 单位时间内执行完成的进程数量 。 周转时间 完成同一个任务所要花费的总时间 ,即该任务从进入系统到执行完毕的时间 。 等待时间 一个进程从就绪状态切换到运行状态所花费的时间。 平均负载 驻留在就绪队列中的进程的平均数量 。 响应时间 从提交请求到系统生成第一个响应所花费的时间 。根据表 1 中的衡量标准 ,CPU 利用率和吞吐量越大 ,其它衡量标准值越小,则 CPU 调度算法越好 。
CPU 调度算法有很多 ,例如先来先服务调度算法 、最短作业优先调度算法 、优先级调度算法等 ,我们会在《进程调度算法》一节做详细讲解 。
CPU调度和进程调度
不同的操作系统中,可能同时包含 3 种进程调度程序 ,分别是长期调度程序 、短期调度程序和中期调度程序 ,它们相互配合进而形成一个完整的进程调度机制 。
与进程调度不同 ,CPU 调度强调的是将 CPU 资源分配给不同进程的过程 ,整个调度过程由操作系统中的短期调度程序负责完成 。
因此 ,进程调度描述的是操作系统中整个进程调度机制的工作过程 ,而 CPU 调度更侧重于描述短期调度程序的实现机制和运行过程 。通常情况下 ,进程调度代指的仅是短期调度程序 ,因此它常常和 CPU 调度混用 ,这也是某些教程将它们合并在一起讲解的原因 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!