作業調度,也稱為批處理調度,是分配系統資源以控制無人值守后臺程序執行的過程。調度程序決定在什么時間執行哪些作業,以及完成作業所需的中央處理單元 (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個工作日內處理。