Linux嵌入式實時作業系統開發與設計(八)
阿新 • • 發佈:2019-01-30
第五章RTLINUX的效能測試<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
根據2.2節有關中斷延遲的介紹。在這一章,我們將對RTLinux的中斷延遲進行測試。測試的機器為Celeron 412MHz,196MB記憶體,RTLinux3.1+Linux-2.2.19(與前面測試的Linux版本相同)的機器上進行了測試(測試程式在附錄2)。測試的結果如表5.1所示:
負載型別 |
平均值 |
最小值 |
最大值 |
無負載 |
2.36 |
2.10 |
15.50 |
硬碟迴圈拷貝 |
3.20 |
2.10 |
19.40 |
計算負載 |
2.56 |
2.20 |
14.50 |
表5.1實時中斷延遲時間(單位:微秒)
n無負載:所有程序已經殺死
n硬碟迴圈拷貝:一個硬碟迴圈拷貝shell指令碼在執行
n計算負載:一個迴圈執行浮點運算的C程式
從測試結果看,RTLinux的中斷響應時間明顯小於標準Linux的中斷響應時間。在磁碟拷貝負載下最大延遲為19.40微秒,在這種負載情況下,標準Linux的延遲達到了500微秒。
為了計算排程精度,我們運行了一個週期實時任務。在每個週期任務喚醒時,記錄下並比較它的時間,記錄下最大的時間值。時間值在10微秒左右。
從上結果看,RTLinux是完全可以勝任實時運算的作業系統。