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

來源:互聯網
上載者:User

標籤:hellox   物聯網作業系統   作業系統   minnowboard max   

 

在HelloXTeam Dev的努力下,以及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介面的存放裝置。

在此,感謝HelloXTeam Dev,尤其是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

 

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

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

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.