物聯網操作系統HelloX已成功移植到MinnowBoard MAX開發板上

 

在HelloX開發團隊的努力下,以及Winzent Tech公司(總部在瑞典斯德哥爾摩)的支持下,HelloX最新版本V1.78已成功移植到MinnowBoard MAX開發板上。相關源代碼已經發布到github上(github.com/hellox-project/HelloX_OS),歡迎感興趣的朋友下載測試。

MinnowBoardMAX是在Intel的支持下,由Circuit公司開發的一款基於Intel ATOM處理器的卡片式電腦,具備超高的性能,豐富的擴展性,以及相對較低的功耗和成本。是Intel進軍物聯網領域的重大舉措。在今年第三季度發佈的Windows 10 IoT版本,就是以該款開發板作爲主要的硬件開發平臺。下面是MinnowBoard MAX的外觀:


本質上,MinnowBoard MAX是一款PC架構的卡片電腦,所不同的是,它不帶顯示器,也不帶鍵盤和鼠標等用戶輸入設備,只提供USB,SPI,GPIO等常用的計算機接口,這些也是物聯網領域最常用的通信接口。對HelloX來說,移植到該開發板上的難點有兩個:

1.    缺省情況下,MinnowBoard MAX的固件是基於UEFI標準的計算機固件,而當前版本的HelloX尚不支持UEFI,因此需要一份傳統計算機上的BIOS來引導HelloX。Winzent公司專門爲MinnowBoard MAX開發板定製了一個傳統的BIOS,同時提供了及時專業的技術支持。在他們的支持下,我們成功刷新了MinnowBoard MAX的引導固件,成功完成HelloX的啓動;

2.    由於MinnowBoard MAX沒有傳統的鍵盤和鼠標等輸入設備,只能採用USB接口的鍵盤和鼠標。而當前版本的HelloX尚不具備USB支持功能,因此爲了支持MinnowBoard MAX,不得不增加USB功能的支持。這不是一個簡單的工作,我們用了將近兩個月的時間,移植和優化了大約1萬行代碼,才實現了完整的USB功能,包括對USB OHCI/UHCI(USB 1.0/1.1)的支持,USB EHCI(USB2.0)的支持,甚至USB3.0(xHCI)的支持。

目前來說,HelloX已經可以完整的運行在MinnowBoard MAX開發板上,能夠支持USB的鍵盤和鼠標,能夠訪問USB接口的存儲設備。

在此,感謝HelloX開發團隊,尤其是Tywind Huang做出的努力。

後續我們將把MinnowBoard MAX開發板作爲HelloX的主要開發環境之一,在此基礎上,充分利用該板子提供的物聯網接口能力,實現各種各樣的物聯網應用。甚至考慮對MinnowBoard MAX進行優化和定製,推出基於該板子的產品。

對於HelloX操作系統的應用定位,再在這裏解釋澄清一下:

1.    HelloX始終定位爲物聯網操作系統,具備物聯網操作系統的主要特徵,比如內核高度伸縮,高度可裁剪,以適應硬件碎片化的需要。當前版本的HelloX,通過調整配置,能夠實現從10幾K大小,到500K大小的伸縮,幾乎可以適應任何物聯網領域的需要。除此之外,還支持軟硬件分離特徵,通過Java虛擬機機制,實現應用代碼與CPU指令的完整隔離。畢竟在物聯網領域,CPU的種類太多,不像PC時代,只要針對x86實現一款軟件就可以打遍天下。如果沒有軟硬件分離的特徵,從理論上說,每個應用都需要去適配所有的CPU類型,這無疑是不現實的。同時,HelloX還通過動態可加載的機制,來動態變化物聯網後臺支持。這也是非常關鍵的特徵,據統計,目前市面上已經商用的物聯網後臺系統,就已經超過了165個。顯然一款物聯網產品,不可能綁定到一個物聯網平臺上。通過實時的加載和卸載物聯網後臺支持代碼,可以輕鬆實現後臺的切換。這類似於個人手機,可以通過更換SIM卡的方式,實現運營商的更換;

2.    第二種應用場景,本質上也是物聯網領域,但是單獨拿出來說明一下,那就是物聯網網關。所謂物聯網網關,基本上就是一個通信轉換設備,可以把局域內的無線通信,比如藍牙,Zigbee,Z-Wave,NFC,等等,轉換爲IP協議,並送到物聯網後臺上。同時,物聯網網關也根據物聯網平臺發佈的策略或規則,來進行本地事件的邏輯處理。比如,在電視機被關閉的情況下,立即切斷智能開關的電源。這種聯動機制,是不需要上升到物聯網後臺處理的,只需要在網關層面處理就可以了。HelloX瞄準這種物聯網網關應用場景,因爲這個關鍵設備,會是未來物聯網領域最關鍵的一個環節。我們基於MinnowBoard MAX構築開發環境,也是基於這個應用場景考慮的;

3.    第三種應用場景,可以概括爲“給您一個新的選項”。隨着功能的逐漸豐富,HelloX已經具備通用操作系統的基礎能力,比如網絡支持,文件系統,USB支持等等,而且從一開始就是以個人計算機作爲硬件環境。如果您的應用場景很單純,不需要windows這樣的巨無霸,同時又不願意去裁剪Linux內核,或者不想用GCC去開發應用,而想用更易用的Visual Studio開發應用,那麼HelloX或許是您可以考慮的一種選項,至少可以評估一下。

下圖是最新版本的HelloX,在我的DELL電腦上運行了一天之後的情況,截至目前,沒有發現任何異常:


歡迎感興趣的朋友加入我們,讓我們一起構築物聯網時代的基礎軟件平臺。聯繫方式:

QQ羣:38467832,QQ:89007638

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章