程序的排程演算法 作業系統的分類

2021-09-21 18:16:02 字數 993 閱讀 2142

作業系統管理了系統的有限資源,當有多個程序(或多個程序發出的請求)要使用這些資源時,因為資源的有限性,必須按照一定的原則選擇程序(請求)來占用資源。這就是排程。目的是控制資源使用者的數量,選取資源使用者許可占用資源或占用資源

程序排程演算法要求:高資源利用率、高吞吐量、短周轉時間,使用者滿意等原則。

作業系統中的資源分為兩類:

硬體資源:cpu,印表機等

軟體資源:資料,程式等

高資源利用率:讓作業系統給各個程序分配這些資源,讓執行的效率提高。

吞吐量:單位時間內cpu完成作業的數量。

周轉時間:評價批處理系統的效能指標。ti = 作業完成時刻 - 作業提交時刻

排程演算法的原則

在系統角度來說,公平性:每個程序(不論優先順序)都有機會被執行;較大的吞吐量

linux核心的三種排程方法:

1. sched_other 分時排程策略

2. sched_fifo實時排程策略,先到先服務

3. sched_rr實時排程策略,時間片輪轉

實時程序將得到優先呼叫,實時程序根據實時優先順序決定排程權值,分時程序則通過nice和counter值決定權值,

nice越小,counter越大,被排程的概率越大,也就是曾經使用了cpu最少的程序將會得到優先排程。

作業系統大致可分為6種型別

① 簡單作業系統

② 分時系統

③ 實時作業系統

④ 網路作業系統

⑤ 分布作業系統

⑥ 智慧型作業系統

詳情自行搜尋 >_< !

作業系統的程序排程演算法

作業系統的程序排程也稱 dispatcher,其實簡單來說作業系統的程序排程不外乎人類社會的兩大原則 先來後到和優先順序,乙個良好的任務排程演算法主要體現在以下幾個方面 公平的保證每個程序得到合理的cpu時間 高效的使cpu保持忙碌狀態即總有程序在cpu上執行 使互動使用者的響應時間盡可能短 周轉時...

作業系統 程序排程演算法

cpu利用率 cpu忙碌的時間佔總時間的比例 利 用率 忙碌的 時間總時 間利用率 frac 利用率 總時 間忙碌的 時間 系統吞吐量 單位時間完成作業或程序的數量 吞 吐量 完成的 作業數量 總時 間吞吐量 frac 吞吐量 總時 間完成的 作業數量 周轉時間 完成作業需要花費的總時間 周 轉時 ...

常見的作業系統程序排程演算法

一 先來先服務和短作業 程序 優先排程演算法 1 先來先服務排程演算法 先來先服務 fcfs 排程演算法是一種最簡單的排程演算法,該演算法既可用於作業排程,也可用於程序排程。當在作業排程中採用該演算法時,每次排程都是從後備作業佇列中選擇乙個或多個最先進入該佇列的作業,將它們調入記憶體,為它們分配資源...