在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
物联网操作系统HelloX已成功移植到MinnowBoard MAX开发板上的更多相关文章
-
(原创)AP6212移植到AM335X自主开发板上
转载请指明出处. 参考<关于AM335X移植SDIO WIFI的简易教程> http://www.deyisupport.com/question_answer/dsp_arm/sitar ...
-
minigui移植到arm linux开发板上无法执行
要保证目录下有该文件 /etc/MiniGUI.cfg 复制过程使用cp –af 强制复制
-
物联网操作系统HelloX V1.79发布公告
经过HelloX开发团队近半年的努力,在HelloX V1.78版本基础上,增加许多功能特性,并对V1.78版本的一些特性进行了进一步优化之后,正式形成HelloX V1.79测试版本.经相对充分的测 ...
-
live555 交叉编译移植到海思开发板
本文章参考了.http://blog.csdn.net/lawishere/article/details/8182952,写了hi3518的配置说明.特此感谢 https://blog.csdn.n ...
-
【开发实录】在鸿蒙开发板上使用websocket(移植自librws库)
librws: Tiny, cross platform websocket client C library 相关代码可在下面下载,也可进入librws: 将librws移植到鸿蒙Hi_3861开发 ...
-
物联网操作系统HelloX V1.80测试版发布
经过HelloX开发团队近半年的努力,在HelloXV1.79版本基础上,增加许多功能特性,并对V1.79版本的一些特性进行了进一步优化之后,正式形成HelloX V1.80测试版本.经相对充分的测试 ...
-
物联网操作系统HelloX V1.77(beta)版本发布
物联网操作系统HelloX V1.77发布 经过近半年的努力,物联网操作系统HelloX V1.77版本正式完成,源代码已上载到github(github.com/hellox-project/Hel ...
-
基于物联网操作系统HelloX的智慧家庭体系架构
基于物联网操作系统HelloX的智慧家庭体系架构 智慧家庭是物联网的一个分支应用,是一个被广泛认同的巨大IT市场空间.目前市场上已经有很多针对智慧家庭的产品或解决方案,但与移动互联网不同,智慧家庭至今 ...
-
移植Mplayer到OK6410开发板
移植Mplayer到OK6410开发板 作者:vasage 项目需要,需要将Mplayer移植到开发板上,所以今天花了一下下午成功移植,其中参考很多文档,后发现许多文档陈旧,些许文档有少量错误,所以这 ...
随机推荐
-
Codeforces #270 D. Design Tutorial: Inverse the Problem
http://codeforces.com/contest/472/problem/D D. Design Tutorial: Inverse the Problem time limit per t ...
-
Secrets
https://www.youtube.com/watch?v=qHm9MG9xw1o I need another storySomething to get off my chestMy life ...
-
Linux高级编程--05.文件读写
缓冲I/O和非缓冲I/O 文件读写主要牵涉到了如下五个操作:打开.关闭.读.写.定位.在Linux系统中,提供了两套API, 一套是C标准API:fopen.fclose.fread.fwrite.f ...
-
Jquery VailDate初探
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
-
NOI十连测 第五测 T2
思路:考虑建立可持久化线段树,第一层维护的是i这个位置的next位置,第二层,维护的是接下来走这个字符会到哪个节点. 感觉很巧妙啊,不愧是Claris #include<algorithm> ...
-
Grafana+Prometheus系统监控之webhook
概述 Webhook是一个API概念,并且变得越来越流行.我们能用事件描述的事物越多,webhook的作用范围也就越大.Webhook作为一个轻量的事件处理应用,正变得越来越有用. 准确的说webho ...
-
深入理解Linux内核 学习笔记(4)
第四章 中断和异常 中断通常被分为同步中断和异步中断,同步中断是当指令执行时由CPU控制单元产生的,之所以称为同步,是因为只有在一条指令终止执行后CPU才会发出中断异步中断是由其他硬件设备依照CPU时 ...
-
Hunter -- 批量文件管理工具
一个简单工具, 用来进行批量文件的重命名, 更改后缀, 搜索特定后缀, 等 下载地址:http://download.csdn.net/download/kuangsun/7545179
-
Skflow mac安装 for tensorflow-0.8.0
参考: # Mac OS X, CPU only: $ pip install --ignore-installed --upgrade https://storage.googleapis.com/ ...
-
Java DESede 加解密(";DESede/ECB/PKCS5Padding";)
private static final Cipher DES_CIPHER; static { try { DES_CIPHER = Cipher.getInstance("DESede/ ...