物联网操作系统HelloX V1.80测试版发布

时间:2021-09-06 01:19:53

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

相比V1.79,最新发布的V1.80版本主要具备了如下特性:

增加了SSH和Telnet客户端的支持

可以通过HelloXV1.80版,作为SSH的客户端,来远程登录支持SSH或Telnet服务的服务器,进行远程管理和控制。如下是一个截图:

物联网操作系统HelloX V1.80测试版发布

SSH客户端代码直接调用了HelloX的TCP/IP协议栈(基于lwIP),在此基础上通过实现加密和报文验证功能,实现了完整的SSH安全连接。可以通过SSH这个基本的安全连接能力,实现多种多样的应用侧安全功能。这在物联网领域是必须的。

增加了UVC支持

最新版本的HelloX,增加了对UVC(USB VideoClass)的支持,能够自动识别基于USB接口的视频设备,并对视频设备进行控制,启动录像,抓取图片等功能。由于V1.80版的GUI功能尚未得到进一步增强,因此当前版本的UVC,只能通过文本界面来操作USB摄像头设备,无法查看具体的视频信息。

在后续的版本中,会进一步增加GUI的支持,这样就可以实现本地化的视频解码和显示功能。

内核得到了进一步的增强

具备弹性可伸缩的内核,是物联网操作系统的最基本特性。V1.80 Beta版本的HelloX的内核机制,得到了进一步的加强,主要是面向物联网应用。主要增强的内核机制和特性如下:

1.      内核异常机制得到进一步增强,可以通过异常信息,判断出导致异常的指令码,源代码文件,代码行数,等等。这样就有助于问题的快速定位;

2.      通过对象签名技术,进一步增强了内核的安全和可靠。很多情况下,如果使用一个非法的指针调用操作系统的API,如果操作系统内核不对这个指针进行合法性检查,那么可能会导致内核崩溃。而对象签名就是一种内核对象指针检查技术。内核通过检查指针所指向的内核对象的数字签名,判断该指针是否是一个合法内核对象指针。如果是,则进行下一步操作,否则直接忽略掉,甚至引发一个异常。这个机制是在HelloX的应用程序开发过程中识别和实现的;

3.      增加了内核中断统计功能。可以实时的统计系统中所有中断的发生次数和频率,对于异常的中断(比如因为硬件故障而导致的频繁中断),直接扼杀掉,确保了内核的整体安全性;

4.      系统时钟周期降低为5ms,同时可支持动态系统时钟周期调整。一般的操作系统的系统时钟,都是在10ms或20ms上下,HelloX把系统时钟调整为5ms,可以使得系统对外部事件的反应更加实时,对网络报文的处理更加准确。但是过高的系统时钟频率会导致电量的消耗,这在很多物联网应用中是不允的,因此HelloX V1.80版本又增加了系统时钟动态调整机制,可以根据需要,实时调整系统时钟的频率。比如为了节约电量,可以把系统时钟周期由5ms调整为100ms,这样会大大降低系统能耗。

除此之外,还有其它一些内核层面的增强和优化。

HelloX后续开发计划

V1.80版只是HelloX开发过程中的一个小小的里程碑,我们不会有任何停顿,继续瞄准物联网操作系统方向,继续对HelloX做进一步深入的开发和应用推广。在短期内,我们初步计划在下列两个方面进行进一步的增强:

1.      高度安全的客户端。随着云计算的发展,越来越多的应用和服务将构筑在云上,人们通过客户端来访问云资源。在一些安全要求极度苛刻的场景下,采用通用操作系统作为客户端,存在很大的安全隐患。因此我们将以自主可控的HelloX内核为基础,增强其安全能力,来打造高度安全可靠的云终端。对于安全保证机制,除了基本的数字证书,生物识别等等加密和认证技术外,我们还计划纳入“行为识别”技术,在操作系统内核层面识别使用者的行为习惯(比如敲键速度,关机习惯,等等),来对使用者进行识别。如果发现异常,则会引发不同级别的处理措施,来保证极端需求情况下的安全性;

2.      通过引入一个物联网系统框架,并在智慧家庭中应用和推广。下图示意了物联网操作系统的整体框架。物联网操作系统内核和外围功能组件(比如TCP/IP协议栈,SSH安全支持,文件系统,USB支持等等)都已经具备了,后续将考虑移植业界流行的IoTivity物联网协同框架,形成一个完整的物联网操作系统平台,并在智慧家庭中进行推广和应用。

物联网操作系统HelloX V1.80测试版发布

特别感谢

特别感谢飓风同学(QQ:370543742),独立实现了SSH和Telnet客户端到HelloX内核的移植和调试工作,同时优化了基于PC的字符显示功能,实现了支撑Linux输出的彩色文本显示方式,为V1.80的开发做出了重要贡献。

同时感谢广东物联网协会,中科院软件研究所,北京大学等单位给予的鼓励,以及对HelloX开发方向的建议和指导。

最后,为HelloX V1.80取了一个nickname,叫做babygirl,原因如下(算是夹了点私货:-)):

物联网操作系统HelloX V1.80测试版发布

感谢所有关注和支持HelloX项目的朋友和同仁,可通过下列方式,了解和参与物联网操作系统HelloX项目:

QQ群:38467832,QQ/微信:89007638

物联网操作系统HelloX V1.80测试版发布的更多相关文章

  1. 物联网操作系统HelloX V1.78测试版正式发布

    经过HelloX开发团队近四个月的努力,在HelloX V1.77版本基础上,增加许多功能特性,并对V1.77版本的一些特性进行了进一步优化之后,正式形成HelloX V1.78测试版本,经相对充分的 ...

  2. 物联网操作系统HelloX V1.77(beta)版本发布

    物联网操作系统HelloX V1.77发布 经过近半年的努力,物联网操作系统HelloX V1.77版本正式完成,源代码已上载到github(github.com/hellox-project/Hel ...

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

    经过HelloX开发团队近半年的努力,在HelloX V1.78版本基础上,增加许多功能特性,并对V1.78版本的一些特性进行了进一步优化之后,正式形成HelloX V1.79测试版本.经相对充分的测 ...

  4. 基于物联网操作系统HelloX的智慧家庭体系架构

    基于物联网操作系统HelloX的智慧家庭体系架构 智慧家庭是物联网的一个分支应用,是一个被广泛认同的巨大IT市场空间.目前市场上已经有很多针对智慧家庭的产品或解决方案,但与移动互联网不同,智慧家庭至今 ...

  5. 物联网操作系统HelloX已成功移植到MinnowBoard MAX开发板上

    在HelloX开发团队的努力下,以及Winzent Tech公司(总部在瑞典斯德哥尔摩)的支持下,HelloX最新版本V1.78已成功移植到MinnowBoard MAX开发板上.相关源代码已经发布到 ...

  6. 物联网操作系统HelloX开发者入门指南

    HelloX开发者入门指南 HelloX是聚焦于物联网领域的操作系统开发项目,可以通过百度搜索"HelloX",获取详细信息.当前开发团队正在进一步招募中,欢迎您的了解和加入.如果 ...

  7. 物联网操作系统HelloX开发人员入门指南

    HelloX开发人员入门指南 HelloX是聚焦于物联网领域的操作系统开发项目,能够通过百度搜索"HelloX".获取具体信息. 当前开发团队正在进一步招募中,欢迎您的了解和添加. ...

  8. 物联网操作系统HelloX应用编程指南

    HelloX操作系统应用编程指南 HelloX应用开发概述 可以通过三种方式,在HelloX操作系统基础上开发应用: 1.        以内部命令方式实现应用,直接编译链接到HelloX的内核she ...

  9. 物联网操作系统Hello China移植mile stone之一:移植基础版本V1.76发布

    Hello China V1.76版发布,这是向ARM系列CPU移植的基础版本.相对V1.75版,该版本主要做了如下的一些调整: 1.  通过宏定义的方式对内核实现了模块化,开发者可以通过开启或关闭预 ...

随机推荐

  1. AngularJS中的route可以控制页面元素的改变,使多页面变成一个单页面。。。

    SPA(Single Page Application)指的是通单一页面展示所有功能,通过Ajax动态获取数据然后进行实时渲染,结合CSS3动画模仿原生App交互,然后再进行打包(使用工具把Web应用 ...

  2. 从零开始用gulp

    gulp是基于流的前端构件化工具.目前比较火的前端构建化工具还是挺多的,grunt gulp fis3等等. 这个鬼东西有什么用?请参考https://www.zhihu.com/question/3 ...

  3. [转载]python gevent

    原地址: http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001407503089 ...

  4. Javascript 笔记与总结(2-16)事件对象

    事件对象:事件发生的瞬间,发生位置.时间.鼠标按键.触发的节点等信息,被打包成一个对象,此对象,系统自动传递给事件函数的第一个参数. [例]记录 鼠标划过图片时的事件对象 <!DOCTYPE h ...

  5. MVC&amp&semi;&amp&semi;MVP

    Classic MVC Classic MVC 大概上世纪七十年代,Xerox PARC的Trygve提出了MVC的概念. 并应用在Smalltalk系统中,为了和其它类型的MVC加以区分,历史上习惯 ...

  6. 弹出窗口内嵌iframe 框口自适应

    说一下,弹出窗口还有内嵌一个iframe 这种模式应该是不科学的,但是公司项目里面就偏偏用到了,它这高低还不能只适应,所以我痛苦的日子来了 分析一下: 首先window.showDialog 方法的时 ...

  7. OC语言(二)

    十.匿名对象 即不将对象赋给指针,而是直接使用 注意new对象的时候要用[ ]嵌套 例如:[[Car new] run]; 十一.枚举书写规范 注意空格 //注视 typedef enum { } X ...

  8. Redis主从&plus;读写分离中可以在从机读取到过期数据

    参考链接: https://mp.weixin.qq.com/s?__biz=MzIyNzUwMjM2MA==&mid=2247483696&idx=1&sn=c69e364b ...

  9. 1 Servlet 简介

    1 Servlet是sun公司提供的一门用于开发动态web资源的技术.用户若用Java技术开发一个动态web资源或者网页,需要完成以下2个步骤:① 编写一个Java类,实现servlet接口② 把开发 ...

  10. 从Zero到Hero,OpenAI重磅发布深度强化学习资源

    https://zhuanlan.zhihu.com/p/49044306 https://spinningup.openai.com/en/latest/