物联网操作系统HelloX V1.81发布公告

物联网操作系统HelloX V1.81发布公告

经过HelloX开发团队近半年的努力,在HelloX V1.80版本基础上,增加许多功能特性,并对V1.80版本的一些特性进行了进一步优化之后,正式形成HelloX V1.81测试版本。经相对充分的测试和验证之后,现正式发布。相关代码,已全部上载到github上(github.com/hellox-project/HelloX_OS),欢迎对HelloX感兴趣的朋友下载测试和试用,并进一步反馈问题。

除继续保持V1.80所有特性之外,V1.81版本主要对下列特性进行了支持或优化:

1.        成功移植Samsung的JavaScript引擎-JerryScript。这使得HelloX可以支持JavaScript编程,而JavaScript被认为是物联网时代的主要应用编程语言;

2.        优化了HelloX的外部执行模块加载功能,当前可以加载PE格式的可执行文件,这样的结果就是,HelloX的内核与外围模块或者应用程序可以完全解耦,内核与外部模块之间采用系统调用进行通信。比如,在x86平台上,HelloX的内核采用Visual Studio编译开发,而应用程序完全可以采用GCC等编程环境进行开发;

3.        优化并丰富了C运行库(C Library)的功能,增加了诸如浮点运算支持,时间支持等等基础功能。同时把C运行库从内核中剥离出来,作为公共模块存在,可以供内核调用,也可以供应用程序使用;

4.        内核功能的进一步优化。

在HelloX V1.81版本的开发过程中,我们始终坚持“稳定可靠,不留问题死角,可直接应用”为原则,所有代码都经过了详细深入的内部测试。在移植JerryScript的时候,发现并修补了JerryScript的多个问题或BUG。比如:

1.   在把浮点数字转换为字符串时,Jerry定义了一个固定的字符串缓冲区(64字节)。这在一些浮点数小数比较多的情况下(超过64位),会导致缓冲区溢出。在HelloX上,我们对此做了优化,避免了缓冲区溢出问题;

2.   在移植过程中,发现JerryScript的源代码缺少了很多内置对象(built-in objects)的支持函数。我们根据JerryScript的其它内置对象的实现,补充了这些支持函数;

3.   还有一些其它相关的修订或代码修改,在此不做赘述。

HelloX V1.81的内核,与JavaScript引擎打包在一起,可执行代码的总大小可控制在600K左右,可满足大多数嵌入式硬件的要求。

为了便于体验和测试HelloX最新版本的功能,我们专门制作了一个虚拟硬盘文件(/bin目录下,vdisk.vhd压缩文件)。感兴趣的朋友可以直接把这个虚拟硬盘挂接到虚拟机上(比如VirtualBox),引导运行即可。下图示意了一个简单的JavaScript开发截屏:

 

在V1.81的实现中,JerryScript解释引擎被编译成一个外部可执行模块,并保存在外部存储介质中。需要时,通过loadapp命令,加载到内存中执行。

我们编写了一个简单的JavaScript执行shell,执行”loadapp jerryvm.exe”之后,即可加载JerryScript并启动这个shell。程序员可以编写JavaScript脚本,完成之后,按下“Ctrl + Z”组合键,即可执行刚刚编写的代码。要退出这个shell,只需按下”Ctrl + C”组合键即可。

需要说明的是,对JavaScript的支持,只是HelloX支持物联网应用开发的手段之一。并不是所有的物联网应用都适合用JavaScript开发,毕竟这是一种解释型语言,执行效率和实时性是期软肋。作为一个全栈的操作系统,HelloX可以提供多层次的API或者机制,来满足几乎所有物联网应用的开发。比如,为了适应实时性开发的要求,HelloX可以直接提供C语言开发接口。而仅仅提供JavaScript语言开发的环境,显然无法具备这种能力。

作为物联网操作系统,HelloX将始终聚焦物联网领域的应用,为物联网量身定制一套最优的系统软件解决方案。我们认为,只有一个内核的支撑,是远远不够的。物联网和智能硬件的有效发展和壮大,需要更多技术的支持,比如人工智能,分布式计算,机器学习,等等。但一个稳定可靠和可扩展的物联网操作系统,是这些技术的最好生存土壤。后续我们在进一步完善内核的同时,将在这些领域进行探索和研究,并依托HelloX进行落地实现,真正构筑一套支撑未来网络的软件数字神经。

物联网操作系统HelloX的功能已逐渐完善,但是距离我们构想的目标,仍有一定的距离。下面是我们后续的开发及扩展计划:

1.   进一步移植三星的IoT.js物联网开发环境,支持类似Node.JS一样的物联网应用开发。JerryScript只是一个执行引擎,具体物联网相关的功能,都是在IoT.js中实现的;

2.   开发一个包括智能手机客户端,后台APP Store等在内的通信框架,使得智能手机客户端可以直接控制运行HelloX的物联网设备,从APP Store上下载应用(JavaScript脚本)并执行。这与智能手机的应用市场功能是类似的。我们认为,“系统软件与应用软件分离”,“软件与硬件分离”,是物联网领域的开发特点。而物联网APP Store就是支撑第一个特点的基础;

3.   构筑一个与HelloX配套的大数据平台。缺省情况下,运行HelloX的物联网设备,会把相关数据存储在这个大数据平台下。当然,应用HelloX的物联网设备开发商也可以改变这种默认行为;

4.   对HelloX内核和外围辅助功能进行进一步的开发和优化。比如对C运行库(Library)的进一步丰富和扩展,对HelloX内核系统调用机制的进一步优化和扩展等;

5.   寻求硬件合作伙伴:目前,HelloX已具备应用能力。欢迎硬件开发商与我们合作,一起在实际产品中应用HelloX操作系统。HelloX社区将提供技术支持。

欢迎有志于物联网和系统软件开发的人士加入加入我们,进一步开发和优化HelloX操作系统。具体的细节,欢迎加入QQ群讨论:38467832

对HelloX和物联网操作系统的进一步信息,请关注blog:blog.csdn.net/hellochina15

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值