
點擊查看活動詳情:https://t.csdnimg.cn/L4B8
HaaS技術社區
在物聯網方案多樣化與場景碎片化等大背景下,基于阿里云物聯網數億設備落地經驗,阿里云物聯網團隊推出了HaaS這個加速AIoT中小開發者的創新平臺,HaaS(Hardware as a service)硬體即服務,通過向用戶提供物聯網場景中的的標準硬體以及嵌入到硬體中的軟體驅動及功能模塊,為用戶提供物聯網設備高效開發服務,旨在幫助AIoT中小開發者聚焦業務,能做到低門檻快速組裝軟硬體積木,實作設備安全上云,加速AIoT創新迭代,
HaaS設備端搭載阿里IoT團隊全面開源的物聯網作業系統AliOS Things,該作業系統發布于2017年杭州云棲大會,是HaaS家族中面向IoT領域的、高可伸縮的物聯網作業系統,目前已經開源到3.1版本,
HaaS技術社區旨在推廣物聯網作業系統AliOS Things和HaaS云端釘全鏈路解決方案,HaaS技術涵蓋物聯網作業系統AliOS Things,JS輕應用,HaaS UI等軟體積木,以及HaaS標準硬體和周邊生態等硬體積木,HaaS為開發者提供了一種高效的積木的開發方式,
社區之星推薦語
尹鑫,一直從事嵌入式相關的作業,最近兩三年主要研究嵌入式RTOS維測相關的技術,立志于開發一款基于RTOS、適合廣大嵌入式開發者的維測工具,并將很多代碼貢獻給AliOS Things和HaaS技術社區,同時在HaaS技術社區投稿了一系列關于AliOS Things 維測的學習心得,
技術成長之路
跟廣大嵌入式開發者的技術成長路線一樣,我也是從helloworld開始,到點亮數碼管led、驅動傳感器外設、操作LCD顯示、通過WIFI/BT連接各種設備等一步步走過來的,在這程序中,我們需要不斷地學習硬體電路、計算機體系結構、編譯、作業系統、網路協議等一系列知識,深深感受到嵌入式開發堆疊的博大精深,
在最近兩三年的專案研發期間發生了2件事,讓我將注意力轉移嵌入式RTOS的維測工具的設計上來,
第一件事,我還在華為的手機部門,從事手機底層設備驅動的開發作業,有一次需要將手機大核上(跑linux)的傳感器驅動移植到小核(跑嵌入式RTOS)上面去,本來已經經過大量驗證運行很穩定的驅動,在RTOS上出現了問題,系統跑了一段時間就死機了,經過痛苦的不斷加列印--重新編譯--燒錄芯片的定位程序,兩三天過去了,發現是一個典型的記憶體泄漏問題,是在移植程序中新增的一個bug,修改了幾行代碼后解決,當時我就想,雖然嵌入式RTOS上的運行場景沒有linux復雜,但是一旦出現了bug,我們卻沒有順手的工具來快速定位它,這個對比Linux就有巨大差距,Linux的強大無需多說,僅在工具方面,也是有足夠的維測工具來支持的,如Valgrind里的memcheck就可以方便的檢測出記憶體泄漏、釋放記憶體后的使用(use-after-free)等,但是在RTOS上,我們沒有這樣的工具,網上這樣的支持也比較少,但我覺得,維測工具對嵌入式開發也是有價值的,至少減少一些定位bug的時間,也是對作業效率的巨大提升!
第二件事,讓我徹底堅信了RTOS維測工具的價值,在一個智能音箱專案中,我們遇到了可能是RTOS史上最復雜的使用場景—— 執行緒數量100+、多核、幾十人共同開發、WIFI/BT多協議堆疊、云端鏈路、語音喚醒和識別、眾多互動場景....在產品量產測驗程序中不斷遇到死機、踩記憶體、記憶體泄漏、系統卡死、網路吞吐性能下降等一系列穩定性問題和性能問題,從開始的束手無策只能靠加列印定位問題,到后面可以分分鐘定位出80%以上的問題,這個作業效率的巨大提升是基于我們從0到1開發出的一套適用于嵌入式RTOS的維測工具,基于AliOS Things,我們可以不連仿真器,不加列印,快速定位bug是什么,定位記憶體泄漏點,定位踩記憶體點,如果沒有這套維測工具,整個專案的開發難度是不可想象的,
我覺得隨著物聯網的快速普及,嵌入式RTOS作為物聯網的作業系統也一定會受到越來越多的關注,今年有幸遇到了阿里云的HaaS平臺,它為開發者提供了一種高效的積木的開發方式,代表了物聯網發展的方向,HaaS使用的RTOS是AliOS Things,所以我也計劃在為HaaS技術社區貢獻維測工具的代碼和RTOS維測工具的文章系列,希望可以給HaaS技術社區的廣大物聯網開發者和愛好者帶來幫助,
開發者寄語
我們知道,維測工具可以幫助嵌入式開發人員提高bug的解決效率,進而關注自己的事情,提高作業效率;同時,再好的維測工具,它的作用范圍也是有限的,所以也希望大家(包括我自己)繼續修代碼內功,寫出優美代碼,不產生bug才是我們的追求!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/248979.html
標籤:其他
下一篇:2021,JuiceFS 開源啦
