日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

【操作系统】实时调度

發(fā)布時間:2023/12/14 windows 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【操作系统】实时调度 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

實現(xiàn)實時調(diào)度的基本條件

  • 提供必要的調(diào)度信息(就緒時間、開始截止時間和完成截止時間、處理時間、資源要求、優(yōu)先級)
  • 系統(tǒng)處理能力強。在實時系統(tǒng)中,若處理機的處理能力不夠強,則有可能因處理機忙不過來而致使某些實時任務(wù)不能得到及時處理。
  • 采用搶占式的調(diào)度機制
  • 具有快速切換機制

實時調(diào)度的 CPU 處理能力

單處理機:

m: 實時任務(wù)數(shù)目,ci: 每次處理時間,pi: 周期時間

例如:有 6 個硬實時任務(wù),周期時間都是 50 ms,每次的處理時間為 10 ms,則系統(tǒng)是不可調(diào)度的。

多處理機:(N: 處理機數(shù)目)

實時調(diào)度算法的分類

按實時任務(wù)性質(zhì)(即對時間約束的強弱程度)

  • 硬實時調(diào)度:必須滿足任務(wù)截止期要求,錯過后果嚴重。
  • 軟實時調(diào)度算法:期望滿足任務(wù)截止期要求,錯過可容
    忍。

按調(diào)度方式

非搶占式調(diào)度算法

  • 非搶占式輪轉(zhuǎn)調(diào)度算法:用于工業(yè)生產(chǎn)的群控系統(tǒng)中。
  • 非搶占式優(yōu)先調(diào)度算法:用于有一定時間要求的實時控制系統(tǒng)之中。

搶占式調(diào)度算法 (按搶占發(fā)生的時間)

  • 基于時鐘中斷搶占的優(yōu)先權(quán)調(diào)度算法
  • 立即搶占的優(yōu)先權(quán)調(diào)度算法

搶占式調(diào)度算法

最早截止時間優(yōu)先算法

算法是根據(jù)任務(wù)的開始截止時間和完成截止時間來確定任務(wù)的優(yōu)先級。截止時間越早,其優(yōu)先級越高。就緒隊列中任務(wù)按其截止時間排列,隊首任務(wù)先分配處理機。

非搶占式調(diào)度方式用于非周期實時任務(wù)
搶占式調(diào)度方式用于周期實時任務(wù)

非搶占式調(diào)度方式用于非周期實時任務(wù)

搶占式調(diào)度方式用于周期實時任務(wù)

有兩個周期性任務(wù),任務(wù) A 的周期時間為 20ms,每個周期處理時間為 10ms;任務(wù) B 的周期時間為 50ms,每個周期處理時間為 25ms。兩個任務(wù)的到達時間,最后期限和執(zhí)行時間如下圖:

固定優(yōu)先級調(diào)度(A 有較高優(yōu)先級)

固定優(yōu)先級調(diào)度(B 有較高優(yōu)先級)

最早截止完成時間優(yōu)先算法

最低松弛度優(yōu)先算法

最低松弛度優(yōu)先算法(LLF,Least Laxity First)
低松弛 = 高緊急

算法是根據(jù)任務(wù)緊急(或松弛)的程度,來確定任務(wù)的優(yōu)先級。任務(wù)的緊急度越高,其優(yōu)先級越高,并使之優(yōu)先執(zhí)行。

算法采用搶占調(diào)度方式,可用于調(diào)度具有完成截止時間的周期性實時任務(wù)。

松弛度 = 必須完成時間 - 本身剩余運行時間 - 當前時間

例如:

在一個實時系統(tǒng)中,有兩個周期性實時任務(wù) A 和 B,任務(wù) A 要求每 20ms 執(zhí)行一次,執(zhí)行時間為 10ms;任務(wù)B 只要求每 50ms 執(zhí)行,執(zhí)行時間為 25ms。試按最低松弛度優(yōu)先算法進行調(diào)度。

優(yōu)先級倒置

優(yōu)先級倒置現(xiàn)象
高優(yōu)先級進程(或線程)被低優(yōu)先級進程(或線程)延遲或阻塞。

例如:有三個完全獨立的進程 Task A、Task B 和 TaskC,Task A 的優(yōu)先級最高,Task B 次之,Task C 最低。Task A 和 Task C 共享同一個臨界資源 X。

根據(jù)優(yōu)先級原則,高優(yōu)先級進程優(yōu)先執(zhí)行。但此例中Task A 和 Task C 共享同一個臨界資源,出現(xiàn)了不合理的現(xiàn)象。

高優(yōu)先級進程 Task A 因低優(yōu)先進程 Task C 被阻塞,又因為低優(yōu)先進程 Task B 的存在延長了被阻塞的時間。

優(yōu)先級倒置的解決方法

Priority Ceiling

進程 Task C 在進入臨界區(qū)后,Task C 所占用的處理機就不允許被搶占。這種情況下,Task C 具有最高優(yōu)先級(Priority Ceiling) 。

如果系統(tǒng)中的臨界區(qū)都較短且不多,該方法是可行的。反之,如果 Task C 臨界區(qū)非常長,則高優(yōu)先級進程Task A 仍會等待很長的時間,其效果無法令人滿意。

Priority Inheritance

當高優(yōu)先級進程 Task A 要進入臨界區(qū)使用臨界資源 X時,如果已經(jīng)有一個低優(yōu)先級進程 Task C 正在使用該資源,可以采用優(yōu)先級繼(Priority Inheritance)的方法。

此時一方面 Task A 被阻塞,另一方面由 Task C 繼承Task A 的優(yōu)先級,并一直保持到 Task C 退出臨界區(qū)。

總結(jié)

以上是生活随笔為你收集整理的【操作系统】实时调度的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。