自1990年以來,Bill lamie親自設計、開發(fā)和銷售了三種成功的商業(yè)RTOS產(chǎn)品——Nucleus RTX、Nucleus PLUS和ThreadX,后兩者在當今市場上仍然活躍。他的RTOS現(xiàn)在運行在超過25億臺嵌入式設備中,包括市場領先的消費品,如蘋果iPhone和惠普的噴墨打印機。Bill還發(fā)明并實施了搶占門限,這是一種在管理關鍵資源時消除不必要的上下文切換的新方法, 最近Bill Lamie創(chuàng)建了PX5 RTOS ,開始新的創(chuàng)業(yè)創(chuàng)新旅程,以下是Bill 發(fā)表的社交網(wǎng)絡上短文, 上一篇討論了實時性、文檔和處理器支持三個指標,本篇繼續(xù)討論工具、安全和網(wǎng)絡能力三個指標。
像大多數(shù)嚴謹?shù)拈_發(fā)人員一樣,嵌入式開發(fā)工具每天對我的工作影響最大。這與Aspencore最近的嵌入式調(diào)查(2023年5月)研究一致,我個人最喜歡的開發(fā)工具是IAR的embedded workbench。PX5 RTOS的開發(fā)在很大程度上依賴于IAR bembedded workbench,特別是IDE、編譯器、調(diào)試器、代碼覆蓋率和靜態(tài)分析功能。所有這一切都集成在一個IDE,這真是太好了。更好的是,IAR工具套件的每個功能都是一流的。例如,我發(fā)現(xiàn)IAR調(diào)試器是最簡單、功能齊全、最直觀的使用(多年來,我已經(jīng)使用了一百種不同的工具?。N疫€發(fā)現(xiàn)IAR C編譯器優(yōu)化是最好的。IAR還提供功能安全和信息安全支持。大多數(shù)半導體供應商免費提供的Eclipse/GCC工具都很好。Arm開發(fā)工具也不錯。然而,我的個人經(jīng)驗是,IAR工具非常優(yōu)越,非常值得使用,許可證成本不高。
在運行時方面,我喜歡使用的另一個工具是Percepio的Tracealyzer。此工具可幫助您觀察運行時發(fā)生的事情。我發(fā)現(xiàn)這在系統(tǒng)崩潰情況下特別有用——讓您確切地看到崩潰前發(fā)生了什么,這極大地有幫助您找到原因。優(yōu)化是另一個常見的案例,使用Tracealyzer查看代碼關鍵區(qū)域的確切處理,將極大地幫助您了解如何改進代碼。
調(diào)查顯示,嚴謹?shù)拈_發(fā)人員關心他們的工具,作為一名嚴謹?shù)拈_發(fā)人員,我強烈建議您看看IAR Systems和Percepio!

安全仍然是嵌入式的熱門話題之一,Aspencore最近的嵌入式調(diào)查(2023年5月)以第6名的排名證實了這一點。當然,在嵌入式中,總是存在安全真正意味著什么這樣的問題。需要保護的內(nèi)容價值在應用程序之間差異很大,基礎硬件資源也是如此。正因為如此,將嵌入式安全性視為更多的細分的要求,而不是適用于所有設備和任何費用的最大要求,這通常是有幫助的。例如,銀行所需的安全性與餐廳所需的安全性大不相同。
在嵌入式世界中,有各種各樣的硬件資源可用于增強您的設備安全性——所有這些都需要對您的特定應用程序進行成本效益分析。以下是一些常用的功能:
·防篡改
·執(zhí)行步驟鎖定
·故障阻力
·僅從閃存執(zhí)行
·硬件堆棧限制保護
·真實隨機數(shù)生成器(TRNG)
·內(nèi)存管理單元(MMU)
·內(nèi)存保護單元(MPU)
·用于聯(lián)網(wǎng)的安全元素(SE)或可信平臺模塊(TPM)
無論您擁有什么硬件功能,您都可以在軟件中做一些事情來幫助提高安全性,包括以下內(nèi)容:
·確保安全的固件更新
·硬化設備固件-所有代碼都應該是100%的語句和分支決定測試
·使用靜態(tài)分析工具
·使用更大的堆棧,直到驗證它們可以更小
·明確指定并檢查所有緩沖區(qū)大小/邊界
·在使用之前驗證所有C函數(shù)指針
·切勿在I/O緩沖區(qū)中嵌入C函數(shù)指針
·將堆棧放在重要數(shù)據(jù)區(qū)域(低內(nèi)存地址)上方,因為它們通常溢出到低內(nèi)存地址
·在(高內(nèi)存地址)重要數(shù)據(jù)區(qū)域后放置I/O緩沖區(qū),因為它們通常溢出到高內(nèi)存地址
·在堆棧和緩沖區(qū)之間使用cookie來幫助檢測損壞
利用您的硬件資源以及遵循軟件中的一些最佳實踐將有助于您提高設備安全性。還要記住,所有措施——在設備端和設備所在的網(wǎng)絡層面——都是整體防御策略的一部分,唯一的目標是讓對手越來越難以獲得不必要的訪問。

網(wǎng)絡能力是Aspencore最近的嵌入式調(diào)查(2023年5月)中的一個問題。連接的設備數(shù)量不斷增加。在20世紀90年代初,當我第一次編寫并介紹Nucleus RTOS時,情況并非如此。當時,我們可能有10-20%的客戶需要網(wǎng)絡能力。與此形成鮮明對比的是,當今大多數(shù)基于RTOS的設計都需要連接。當然,網(wǎng)絡連接也需要安全性——這是本次調(diào)查的前一個主題。RTOS提供基本的TCP/IP是不夠的,它還必須具備所有必要的安全功能,包括軟件加密庫和TLS功能。此外,RTOS本身應該具有內(nèi)置的功能安全和信息安全功能,以幫助檢測和緩解內(nèi)存損壞,這反過來又可以幫助阻止未經(jīng)授權的訪問。嚴謹?shù)拈_發(fā)人員知道,安全性一定是任何網(wǎng)絡連接解決方案不可分割的一部分!

編輯:黃飛
?
電子發(fā)燒友App









評論