又一国产开源微内核操作系统上线!源代码已开放下载
出品丨自主可控新鲜事
本文内容来源于摩尔芯闻
正文共1596,建议阅读时间5分钟
随着物联网的发展,传统操作系统,特别是Linux已经难以满足各种细分领域的应用要求,再加上国际贸易的限制,急需新的、能满足市场发展需求,且自主化程度较高的操作系统。基于微内核的华为鸿蒙就是典型代表。
微内核设计的基本思想是简化内核功能,在内核之外的用户态尽可能多地实现系统服务,同时加入相互之间的安全保护。微内核只提供最基础的服务,比如多进程调度和多进程通信等。区别于“宏内核”,微内核采用同一套操作平台,针对不同硬件能力的产品进行部署,并采用分布式架构,提升效率。这很适合物联网的特质和需求。
在物联网时代,对实时操作系统(RTOS)提出了新的要求,如传统的RTOS内核需要更丰富的中间组件和软件包,以提升开发效率;另外,多芯多OS也难以满足实际应用需求,需要软件和应用复用,提升人才管理和效率,形成统一的OS平台。此外,实时操作系统在MPU上开始流行,因为它实时性强,系统成本低,且能实现快速启动。
在这样的产业和市场背景下,中国本土的睿赛德科技(RT-Thread)在其原有的RT-Thread 宏内核基础上,推出了RT-Thread Smart混合微内核系统。
RT-Thread Smart是基于RT-Thread操作系统衍生的新分支——混合微内核操作系统,主要面向带 MMU(内存管理单元Memory Management Unit)的中高端处理器,为众多领域提供更具竞争力的操作系统基础软件平台,具备快速启动、兼容POSIX 接口、开发调试便利、应用与内核分离、高安全性等特性。
rt-smart在硬件平台的基础上通过MMU、系统调用的方式把整个系统分成了内核态及用户态,并具备独立的地址空间(32位系统上是4G的独立地址空间)。
图:RT-Thread Smart架构
RT -smart内核即可包含基本功能,同时也可定制裁剪。rt-smart用户态应用环境采用musl libc提供POSIX接口调用及C运行环境,延续 RT-Thread 原有的生态,使用scons构建或其他的构建工具,例如xmake,cmake等,并对接 RT-Thread 在线软件包;同时支持 POSIX,方便 Linux 应用的移植。
与Linux相比,RT-Thread Smart在成本和体积的资源占用方面有明显优势,如Linux裁剪版压缩后内核占用空间为3.57MB,根文件系统5MB,占用内存17.4MB。而RT-Thread Smart内核占用空间504kB,压缩后仅为217kB,根文件系统127kB,占用内存1.9MB。
启动时间方面,RT-Thread宏内核 + 文件系统 + 网络协议栈 + 多媒体,需要3 – 5秒,Linux需要5 - 10秒,而RT-Thread Smart仅需不到500毫秒。RT-Thread Smart具备优异的实时性能,中断延时<1us,能够满足苛刻的高实时性场合。
轻型化是RT-Thread Smart内核架构的主要特点:只包含基本功能,同时也可定制,内核尺寸低至500kB。其用户态系统服务可拆卸、可重启,安全性更好,相互之间内存隔离。该微内核架构具有相同的API风格,应用与内核都可延续RT-Thread API,用户态扩展性强。它的每个应用程序都具备独立地址空间:高1G地址空间分配给内核及I/O,低3G地址空间给用户应用,0 - 1M空间设置访问属性进行保护。
RT-Thread Smart混合微内核的一个重要特点就是在用户态存在RT-Thread的API,易于在用户态、内核态迁移应用程序,当放在内核态时可以获得更高的性能。其图形用户界面也很友好,支持界面拖动布局控件,以及C++、JavaScript多语言编程,可实现滑动、动画,电容屏触摸操作,具有丰富的图形控件、自定义组合面板功能,还有高效的资源管理器和多国语言支持。
开发环境方面,RT-Thread Smart支持使用RT-Thread Studio一站式开发工具;Web化的IDE大幅度提升了工作效率。
操作系统的推广,需要芯片和硬件支持,目前,Arm系的全志Cortex-A、Xilinx Zynq、树莓派,MIPS系的龙芯64位处理器,以及CK810、RISC-V等越来越多的芯片指令集架构都加入到了支持RT-Thread Smart的行列。
更重要的是,RT-Thread Smart延续了该公司传统,继续采取开源策略。
最新官方消息显示,RT-Thread Smart已正式上线,目前源代码可在Github、Gitee下载,采用Apache License 2.0。
🔗源码下载链接:
https://github.com/RT-Thread/rt-thread/tree/rt-smart
https://gitee.com/rtthread/rt-thread/tree/rt-smart
目前,rt-smart已支持QEMU、树莓派4B运行,开发者即可通过rt-smart开源仓库获得相关代码和文档,参考学习、了解RT-Smart的架构和代码。
END
免责声明:本文系网络转载,版权归原作者所有。但因转载众多,或无法确认真正原始作者,故仅标明转载来源,如涉及作品版权问题,请与我们联系,我们将在第一时间协商版权问题或删除内容!内容为作者个人观点,并不代表本公众号赞同其观点和对其真实性负责。
点击下方标题,查看往期精彩内容
>>>国产化替代势在必行:2020年中国半导体材料行业发展报告
>>>信创招标结果疑云:股价双跌,中国软件、统信软件谁拿到了“免死金牌”?
>>>国产自研芯片的“大突围”:所有IP全自主国产,中芯国际先进制程迎来突破
>>>行业 | 中芯国际确认受美国出口管制 部分原材料供应受影响
>>>教育部:以超常规方式加快培养一批紧缺人才 为国家解决“卡脖子”问题做贡献
>>>中芯国际:继续供货华为
>>>国产CPU按下“快进键”
>>>反思华为,无“根”之痛
>>>重磅丨《2019网信自主创新调研报告》正式发布 (附文件)
>>>重磅!突破美国封锁,国产操作系统“天赐”即将诞生,火爆知乎