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

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

V1.85主要功能简介

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

  1. 完整实现了进程功能。每一个应用程序,都可以为进程形式运行,有自己独立的地址空间(32位),可以在自己的地址空间内创建多个用户线程实现并发。通过系统调用(system call)陷入内核,访问内核功能。不同进程之间的数据和程序代码严格隔离,最大限度的保证系统整体安全性;
  2. 对先前版本V1.83的网络功能有较大幅度的优化。比如,实现了对Intel I217/I218/I211等千兆以太网的支持,网络驱动更加丰富。进一步优化了网络协议栈,使得不同网络层次之间的数据拷贝降到最少。基于V1.85版本的网络功能,定制了一款名为“blackbox”的路由器,后面详细介绍;
  3. 增加了更加丰富和完整的调试与诊断手段,包括日志输出功能,异常情况下的调试信息输出功能,以及内存申请跟踪等功能。当前的内核,已经很少出现异常情况。万一出现异常,通过分析上述手段输出的信息,可以快速定位问题。

    HelloX V1.85编译后的可执行文件大小,包括内核,网络功能,用户命令行界面,文件系统,各类驱动程序等,在550K左右,比V1.83编译后的镜像尺寸降低不少,但是功能却增加了许多。这主要是V1.85版本把很多原来嵌入到内核中的功能(比如ssh客户端,telnet客户端等)都作为模块应用程序,放到了用户空间中执行。

V1.85进程功能介绍

进程功能是HelloX V1.85版本新引入的功能,主要目的是为了对不同的应用程序进行彻底的隔离,创造一个安全稳定的执行环境。

大部分嵌入式的操作系统都不具备进程功能,在嵌入式领域,包括操作系统内核,应用程序,各种驱动程序,大多数情况都是一个解决方案厂商提供,不存在不信任的应用或驱动。而且引入进程之后,频繁的进程间切换会降低系统整体性能,因此权衡下来,嵌入式操作系统一般都不实现进程功能。

但是HelloX定位于物联网网关等复杂的应用场景,需要动态加载和执行第三方应用程序。如果不做安全隔离,程序之间就可以直接访问对方数据,存在巨大安全隐患。同时第三方应用质量无法保证,在没有地址空间隔离的情况下,一旦一个应用程序出问题,很大概率会导致整个系统崩溃。因此权衡下来,HelloX最终在V1.85版本中引入进程功能。

只是动态按需加载的第三方应用,才会以进程形式运行。HelloX内核本身的功能,比如TCP/IP协议栈,USB驱动程序,文件系统,等等功能还是在内核中运行。因为我们认为这些功能是可信任的,而且都是系统必须功能(一项功能缺失,即使操作系统内核不受影响,也已经无法提供完整的功能),因此与内核分离意义不大。

HelloX V1.85的进程功能主要包含下列这些:

  1. 地址空间
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值