自1990年以來,Bill lamie親自設計、開發和銷售了三種成功的商業RTOS產品——Nucleus RTX、Nucleus PLUS和ThreadX,后兩者在當今市場上仍然活躍。他的RTOS現在運行在超過25億臺嵌入式設備中,包括市場領先的消費品,如蘋果iPhone和惠普的噴墨打印機。Bill還發明并實施了搶占門限,這是一種在管理關鍵資源時消除不必要的上下文切換的新方法, 最近Bill Lamie創建了PX5 RTOS ,開始新的創業創新旅程,以下是Bill 發表的社交網絡上短文, 上一篇討論了實時性、文檔和處理器支持三個指標,本篇繼續討論工具、安全和網絡能力三個指標。
像大多數嚴謹的開發人員一樣,嵌入式開發工具每天對我的工作影響最大。這與Aspencore最近的嵌入式調查(2023年5月)研究一致,我個人最喜歡的開發工具是IAR的embedded workbench。PX5 RTOS的開發在很大程度上依賴于IAR bembedded workbench,特別是IDE、編譯器、調試器、代碼覆蓋率和靜態分析功能。所有這一切都集成在一個IDE,這真是太好了。更好的是,IAR工具套件的每個功能都是一流的。例如,我發現IAR調試器是最簡單、功能齊全、最直觀的使用(多年來,我已經使用了一百種不同的工具?。N疫€發現IAR C編譯器優化是最好的。IAR還提供功能安全和信息安全支持。大多數半導體供應商免費提供的Eclipse/GCC工具都很好。Arm開發工具也不錯。然而,我的個人經驗是,IAR工具非常優越,非常值得使用,許可證成本不高。
在運行時方面,我喜歡使用的另一個工具是Percepio的Tracealyzer。此工具可幫助您觀察運行時發生的事情。我發現這在系統崩潰情況下特別有用——讓您確切地看到崩潰前發生了什么,這極大地有幫助您找到原因。優化是另一個常見的案例,使用Tracealyzer查看代碼關鍵區域的確切處理,將極大地幫助您了解如何改進代碼。
調查顯示,嚴謹的開發人員關心他們的工具,作為一名嚴謹的開發人員,我強烈建議您看看IAR Systems和Percepio!
安全仍然是嵌入式的熱門話題之一,Aspencore最近的嵌入式調查(2023年5月)以第6名的排名證實了這一點。當然,在嵌入式中,總是存在安全真正意味著什么這樣的問題。需要保護的內容價值在應用程序之間差異很大,基礎硬件資源也是如此。正因為如此,將嵌入式安全性視為更多的細分的要求,而不是適用于所有設備和任何費用的最大要求,這通常是有幫助的。例如,銀行所需的安全性與餐廳所需的安全性大不相同。
在嵌入式世界中,有各種各樣的硬件資源可用于增強您的設備安全性——所有這些都需要對您的特定應用程序進行成本效益分析。以下是一些常用的功能:
·防篡改
·執行步驟鎖定
·故障阻力
·僅從閃存執行
·硬件堆棧限制保護
·真實隨機數生成器(TRNG)
·內存管理單元(MMU)
·內存保護單元(MPU)
·用于聯網的安全元素(SE)或可信平臺模塊(TPM)
無論您擁有什么硬件功能,您都可以在軟件中做一些事情來幫助提高安全性,包括以下內容:
·確保安全的固件更新
·硬化設備固件-所有代碼都應該是100%的語句和分支決定測試
·使用靜態分析工具
·使用更大的堆棧,直到驗證它們可以更小
·明確指定并檢查所有緩沖區大小/邊界
·在使用之前驗證所有C函數指針
·切勿在I/O緩沖區中嵌入C函數指針
·將堆棧放在重要數據區域(低內存地址)上方,因為它們通常溢出到低內存地址
·在(高內存地址)重要數據區域后放置I/O緩沖區,因為它們通常溢出到高內存地址
·在堆棧和緩沖區之間使用cookie來幫助檢測損壞
利用您的硬件資源以及遵循軟件中的一些最佳實踐將有助于您提高設備安全性。還要記住,所有措施——在設備端和設備所在的網絡層面——都是整體防御策略的一部分,唯一的目標是讓對手越來越難以獲得不必要的訪問。
網絡能力是Aspencore最近的嵌入式調查(2023年5月)中的一個問題。連接的設備數量不斷增加。在20世紀90年代初,當我第一次編寫并介紹Nucleus RTOS時,情況并非如此。當時,我們可能有10-20%的客戶需要網絡能力。與此形成鮮明對比的是,當今大多數基于RTOS的設計都需要連接。當然,網絡連接也需要安全性——這是本次調查的前一個主題。RTOS提供基本的TCP/IP是不夠的,它還必須具備所有必要的安全功能,包括軟件加密庫和TLS功能。此外,RTOS本身應該具有內置的功能安全和信息安全功能,以幫助檢測和緩解內存損壞,這反過來又可以幫助阻止未經授權的訪問。嚴謹的開發人員知道,安全性一定是任何網絡連接解決方案不可分割的一部分!
編輯:黃飛
?
評論
查看更多