OS 實時系統中的排程

2021-08-19 15:10:56 字數 638 閱讀 8252

實時系統是一種時間起主導作用的系統。在實時系統中,正確的但是遲到的應答往往比沒有還要糟糕。

實時系統通常可以分為兩類:硬實時,軟實時。前者必須滿足絕對的時間截止,後者最然不希望偶爾的錯失時間截止,但是可以容忍。

實時系統中的事件可以按照響應方式進一步分為週期性時間和非週期性時間。乙個系統可能要響應多個週期性事件流。根據每個時間需要處理時間的長短,系統甚至有可能無法處理完所有事件。假設,如果有m個週期時間,事件i以週期pi發生,並要ci秒cpu時間處理乙個事件,存在處理負載的條件:\sum_^ \cfrac <=1,若不等式成立,則說明實時系統是可排程的,反之則是不可排程的(數學公式不知道怎麼編輯,我用的latex的方式寫的/qaq,語言描述為:每個事件ci/pi的和。看不懂不要緊,我後面會給例題)                

例題:考慮乙個有3個週期性事件的軟實時系統,其週期分別為100ms,200ms,500ms。如果這些事件分別需要50ms,30ms,100ms的cpu時間,那麼這個系統是否是可排程的?

50/100+30/200+100/500 = 0.5+0.15+0.2 = 0.85 <= 1

計算結果滿足處理負載的條件,所以,該系統是可排程的。

實時系統與實時排程

一些概念 計算結果存在時效性,過期無意義,如新聞 2.11.1 實時任務分類 按有無截止時間 按有無週期 2.11.2 實時os特點 2.11.3 實時排程 靜態表排程 輸入週期性到達時間 執行時間 週期性的最後結束期限和每個任務的相對優先順序,輸出排程表,用於排程實時任務 靜態優先順序搶占排程 根...

ucosii實時作業系統的任務排程

嵌入式作業系統的任務排程演算法好壞在很大程度上決定了該系統的執行效率,由於其執行的頻率極高,所以在任務排程函式的實現上,對於效率的要求可以用苛刻來形容。基於優先順序的任務排程總結下來就是做了兩件事 1 找到優先順序最高的就緒態任務 2 切換任務上下文並開始執行該任務 第二步的切換上下文對個各個rto...

python中os模組(2)os中的系統指令

usr bin env python coding utf 8 import os import sys 0 執行作業系統的指令 os.system ls ip os.system ifconfig 執行系統指令 print ip 1 設定python的環境變數 注意getenv從系統中拿到的資料做...