您好,登錄后才能下訂單哦!
這篇文章主要介紹vxworks中實時是什么意思,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
所謂“實時”,是從Real Time直譯過來的,我覺得更應該翻譯為“及時”,因為實時系統是指系統能夠及時響應外部事件的請求,在規定的時間內完成對該事件的處理,并控制相關任務協調一致的運行。
直覺上可能覺得實時系統要"快",但實時系統更側重于“準”, 或者說是“確定性”或“可預測性”
比如操作系統A最快可以在5秒內完成任務x,99%的情況下,耗時不會超過8秒,但忙碌的時候,有萬分之一的幾率需要20秒才能完成任務x。
操作系統B最快也要10秒才能完成任務x,但忙碌的時候,最多只需要12秒就可以完成任務x。
從性能來說,A更強大;但從實時性角度,就是B要高一些了。
也就是說,實時性,比的是最差執行時間!因為對于實時系統,只要有一次遲到,很可能就是致命的。
即使搭配了再好的硬件,所要處理的工作也有可能超過其處理能力的上限。這時軟件,也就是操作系統,就要做出取舍。不同的系統,就會采用不同的策略。
通用系統(例如Windows或者桌面Linux)的目的是盡可能滿足所有用戶的所有需求,所以為了處理所有工作,很可能就會導致所有工作延時,相信你在Windows上遇到過系統變的很慢的情況。
而實時系統是盡可能保證用戶最重要的工作在限定時間內完成,所以重要的工作優先處理,不重要的工作只能進行更多的延時。也就是說理論上,實時系統里,有的工作可能永遠不會被處理。
實時系統能夠支持的這個限定時間越短,就說明實時性越好,有人根據這個限定時間的長短,提出了強實時和弱實時的概念,其實并沒有嚴格的界限,取決于用戶的具體需求。
另外,這個限定時間超時后,所需的工作如果沒有完成,那根據這個后果的嚴重程度,又可以分為硬實時和軟實時,同樣也沒有嚴格界限的。
實時系統為了保證限定時間,讓其行為“可預測”,有一個很重要的指標,就是響應時間要盡可能的短。
這個響應時間,并不是為了完成任務而消耗的執行時間。因為執行時間的長短,更多的取決于任務的復雜度和硬件的性能。而指的是,從系統需求(可能是外部的硬件事件,也可能是內部的軟件調度)被提出,然后實時系統放下手頭的工作,最后開始執行這個新需求的時間差。也就是說實時系統不僅僅是要執行快,更重要的是要響應快。
例如在普通的Linux里,進程(或者線程)優先級的高低只是決定了它執行時間片的長短,并不保證它是否優先執行。也就是說它的執行順序不是確定的,也就不是可預測的了。
而在VxWorks的任務調度里,優先級高的任務,就會搶占優先級低的任務。所以重要的工作,設置為高優先級就可以了。這就是VxWorks實時性的體現之一。
各種操作系統各有千秋,沒有好壞之分,正如宋代盧梅坡在《雪梅》中所說:梅須遜雪三分白,雪卻輸梅一段香。
我們要做的就是要找到最適合當前項目的系統。就像清代阮元在《吳興雜詩》所說:深處種菱淺種稻,不深不淺種荷花。
那如何判斷一個操作系統是否適合自己的項目呢?不同的角色,肯定有不同的依據。我提供幾點,僅供參考
較好的驗證 - 業界是否有大量成功案例;
可靠性 - 該系統是否成熟穩定
裁剪性 - 系統的裁剪能力,以及如何裁剪
易用性 - 是否容易上手,學習門檻高不高,文檔是否齊全
技術支持 - 是否有本地化支持,支持的方式有哪些
所支持的處理器類型 - 是否支持后續項目的軟硬件升級
源代碼 - 是否完全安全可控
工具 - 開發是否方便,故障定位能力如何
價格 - 是否符合項目預算
其實項目的參考因素有很多很多,決定權很可能也不是在一個人手里,甚至很多時候上述因素都不重要,只看一個條件:
甲方讓用啥,就用啥!
以上是“vxworks中實時是什么意思”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。