作业调度,也称为批处理调度,是分配系统资源以控制无人值守后台程序执行的过程。调度程序决定在什么时间执行哪些作业,以及完成作业所需的中央处理单元 (CPU) 资源。它确保所有工作都按照设定的优先级完成。
作业调度软件可以实时执行调度和监控作业或批次。现代作业调度程序具有带有单点控制系统的图形用户界面 (GUI)。许多公司使用工作负载自动化软件来自动化与作业调度、处理和仓储相关的容易出错的任务。
工作负载自动化软件帮助企业减少人工交互,使 IT 部门能够专注于更高优先级的任务。IT 专业人员可以快速解决集中记录和报告问题,并利用自动修复、警报和通知等其他功能。
什么是作业调度?
公司通过多种类型的调度流程来调度作业或批次。以下是 IT 团队用于优化其环境的三种常见作业调度类型。
短期调度主要使用作业调度算法来分配进程和优化系统行为。以下是一些影响应将哪些进程分配给 CPU 的常见调度算法或策略。
先到先服务(FCFS)作业调度算法遵循先进先出的方法。当进程加入就绪队列时,调度程序会选择队列中最旧的作业并将其发送给处理。这些作业的平均处理时间相对较长。
最短作业优先 (SJF),也称为最短作业下一个 (SJN),它选择需要最短处理时间的作业并将其分配给 CPU。该算法将每个进程与下一个 CPU 突发的长度相关联。CPU 爆发是指进程在 CPU 不再准备好之前使用它。
假设两个作业具有相同的 CPU 突发。然后调度程序将使用 FCFS 算法来解决关系并将其中一个移动到执行。
优先级调度为每个进程关联一个优先级(一个整数)。优先级最高的将首先执行。通常,最小的整数被分配给具有最高优先级的作业。如果有两个具有相似优先级的作业,则该算法使用 FCFS 来确定哪个将进入处理。
循环调度是为分时系统设计的。它是一个基于时钟的抢占式调度器,通常被称为时间分片调度器。每当出现周期性时钟间隔时,调度程序将当前正在处理的作业移动到就绪队列。它以先到先得的方式处理队列中的下一个作业。
在这种调度算法中,决定时间片或时间片是很棘手的。如果时间片很短,小型作业的处理速度会更快。
企业作业调度软件由作业调度接口和执行代理组成。这些元素在作业调度系统的整体功能中起着至关重要的作用。
以下是作业或批处理调度程序的一些主要职责:
另一方面,执行代理负责以下进程:
执行代理是指技术信息,例如 CPU 可用性、预计执行时间和执行期间的依赖关系。
公司可以使用工作负载调度软件自动执行各种任务。
作业调度和 CPU 调度都与进程执行相关联。作业调度是决定应将哪个进程移至就绪队列的机制。通常,长期调度程序执行作业调度。
另一方面,CPU调度是一种确定接下来应该执行哪个进程并相应地分配CPU的机制。短期调度程序通常执行 CPU 调度。
传统的作业调度工具自动执行特定平台或应用程序的任务。另一方面,工作负载自动化软件将作业控制集中在多个平台上,增加了操作系统之间的协调并减少了冲突。
[免责声明]
文章标题: 什么是作业调度?
文章内容为网站编辑整理发布,仅供学习与参考,不代表本网站赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时沟通。发送邮件至36dianping@36kr.com,我们会在3个工作日内处理。