物联网操作系统HelloX V1.80测试版发布
经过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服务的服务器,进行远程管理和控制。如下是一个截图:
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物联网协同框架,形成一个完整的物联网操作系统平台,并在智慧家庭中进行推广和应用。
特别感谢
特别感谢飓风同学(QQ:370543742),独立实现了SSH和Telnet客户端到HelloX内核的移植和调试工作,同时优化了基于PC的字符显示功能,实现了支撑Linux输出的彩色文本显示方式,为V1.80的开发做出了重要贡献。
同时感谢广东物联网协会,中科院软件研究所,北京大学等单位给予的鼓励,以及对HelloX开发方向的建议和指导。
最后,为HelloX V1.80取了一个nickname,叫做babygirl,原因如下(算是夹了点私货:-)):
感谢所有关注和支持HelloX项目的朋友和同仁,可通过下列方式,了解和参与物联网操作系统HelloX项目:
QQ群:38467832,QQ/微信:89007638
物联网操作系统HelloX V1.80测试版发布的更多相关文章
- 物联网操作系统HelloX V1.78测试版正式发布
经过HelloX开发团队近四个月的努力,在HelloX V1.77版本基础上,增加许多功能特性,并对V1.77版本的一些特性进行了进一步优化之后,正式形成HelloX V1.78测试版本,经相对充分的 ...
- 物联网操作系统HelloX V1.77(beta)版本发布
物联网操作系统HelloX V1.77发布 经过近半年的努力,物联网操作系统HelloX V1.77版本正式完成,源代码已上载到github(github.com/hellox-project/Hel ...
- 物联网操作系统HelloX V1.79发布公告
经过HelloX开发团队近半年的努力,在HelloX V1.78版本基础上,增加许多功能特性,并对V1.78版本的一些特性进行了进一步优化之后,正式形成HelloX V1.79测试版本.经相对充分的测 ...
- 基于物联网操作系统HelloX的智慧家庭体系架构
基于物联网操作系统HelloX的智慧家庭体系架构 智慧家庭是物联网的一个分支应用,是一个被广泛认同的巨大IT市场空间.目前市场上已经有很多针对智慧家庭的产品或解决方案,但与移动互联网不同,智慧家庭至今 ...
- 物联网操作系统HelloX已成功移植到MinnowBoard MAX开发板上
在HelloX开发团队的努力下,以及Winzent Tech公司(总部在瑞典斯德哥尔摩)的支持下,HelloX最新版本V1.78已成功移植到MinnowBoard MAX开发板上.相关源代码已经发布到 ...
- 物联网操作系统HelloX开发者入门指南
HelloX开发者入门指南 HelloX是聚焦于物联网领域的操作系统开发项目,可以通过百度搜索"HelloX",获取详细信息.当前开发团队正在进一步招募中,欢迎您的了解和加入.如果 ...
- 物联网操作系统HelloX开发人员入门指南
HelloX开发人员入门指南 HelloX是聚焦于物联网领域的操作系统开发项目,能够通过百度搜索"HelloX".获取具体信息. 当前开发团队正在进一步招募中,欢迎您的了解和添加. ...
- 物联网操作系统HelloX应用编程指南
HelloX操作系统应用编程指南 HelloX应用开发概述 可以通过三种方式,在HelloX操作系统基础上开发应用: 1. 以内部命令方式实现应用,直接编译链接到HelloX的内核she ...
- 物联网操作系统Hello China移植mile stone之一:移植基础版本V1.76发布
Hello China V1.76版发布,这是向ARM系列CPU移植的基础版本.相对V1.75版,该版本主要做了如下的一些调整: 1. 通过宏定义的方式对内核实现了模块化,开发者可以通过开启或关闭预 ...
随机推荐
- linux全部命令
linux全部命令 一.安装和登陆命令1.进入图形界面startx 2.进入图形界面init 5 3.进入字符界面init 3 4.登陆login 5.关机poweroff-p 关闭机器的时候关闭电源 ...
- jQuery对表单、表格的操作及更多应用(上:表单应用)
内容摘录自锋利的JQuery一书 一.表单应用 1 获取和失去焦点改变样式(P142) $(function(){ $(":input").focus(function(){ // ...
- POJ3177 Redundant Paths(边双连通分量+缩点)
题目大概是给一个无向连通图,问最少加几条边,使图的任意两点都至少有两条边不重复路径. 如果一个图是边双连通图,即不存在割边,那么任何两个点都满足至少有两条边不重复路径,因为假设有重复边那这条边一定就是 ...
- ural 1289. One Way Ticket
1289. One Way Ticket Time limit: 1.0 secondMemory limit: 64 MB A crowed of volunteers dressed in the ...
- struts 的问题是由于没有写的name有缺少的项,没有完全对应
java.lang.RuntimeException: Invalid action class configuration that references an unknown class name ...
- BZOJ1707 : [Usaco2007 Nov]tanning分配防晒霜
S向每头奶牛连边,容量1 每个防晒霜向T连边,容量cover 每头奶牛向SPF在自己范围内的防晒霜连边,容量inf 用线段树优化建图跑最大流即可. #include<cstdio> con ...
- BZOJ2738: 矩阵乘法
Description 给你一个N*N的矩阵,不用算矩阵乘法,但是每次询问一个子矩形的第K小数. Input 第一行两个数N,Q,表示矩阵大小和询问组数: 接下来N行N列一共N*N个数,表示这个矩阵: ...
- CentOS 下安装无线哥的老爷机DELL的无线驱动
使用命令检测网卡 lspci | grep Network 为“0c:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g ...
- sftp配置
sftp不需要安装,只需要借助sshd服务器即可使用. 增加用户useradd -s /bin/false mysftp 设置用户密码passwd mysftp 创建用户家目录mkdir /home/ ...
- [转]动态调用webservice时 ServiceDescriptionImporter类在vs2010无法引用的解决方法
本文转自:http://blog.csdn.net/limlimlim/article/details/8647038 [导读]ServiceDescriptionImporter是创建Web Ser ...