0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么要选择微内核操作系统?

RTThread物联网操作系统 来源:RTThread物联网操作系统 2020-06-03 14:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在开始今天的正文之前,我们先通过下面的视频,来更直观的感受下微内核操作系统

为什么要选择微内核操作系统?

微内核操作系统,单从名字上来说可能被误解为操作系统非常小,但这并不是它本身的意义,而是指内核非常小,内核只保留一些基本的功能,一些系统服务,例如文件系统,网络协议栈等则放到了用户态。

例如原来在宏内核操作系统中,用户应用程序是通过系统调用,陷入到内核中,然后再读取、访问文件。而在微内核操作系统中,则是用户应用程序通过发送IPC消息给到运行在用户态的文件系统服务来访问文件。

针对于微内核操作系统,我们看到最近两三年有些新的发展:

Google在推进Fuchsia微内核操作系统

IntelCPU的管理引擎中使用Minix微内核操作系统

华为在推进鸿蒙分布式微内核操作系统

可以看到相关厂商都一致性的选择了微内核架构或和微内核架构相关的技术方式。

这个背后的可能原因会有哪些?

原⽣进程沙箱,解决应⽤安全和分发问题 -- Google Fuchsia(⿊客)

稳定的驱动接⼝,硬件⼚商可独⽴维护硬件驱动 -- Google Fuchsia(硬件)

系统模块化,分层,设备⼚商可以灵活定制专有系统 -- Google Fuchsia(友商)

Linux越来越庞大,更多的为服务器进行优化,针对低性能、低资源设备显得臃肿;

可以提供网络,文件,web服务等的功能轻型系统;-- MINIX on Intel

(以上内容:部分是许中兴博士的Fuchsia一文的摘录,部分则出自网络上一些文章)

2019年年初,微内核也在RT-Thread提上了日程,同年4月便正式开始推进这件事情。还有一个促使我们决定的重要原因是,我们从中看到一些市场需求:

快速启动,终端上的系统可以在500ms内完成启动并就绪;

安全方面的考虑,当应用出问题时不会影响到其他无关功能;

在进行系统升级时,不类似传统RTOS需要把整个固件进行升级;

当要在ARM11、Cortex-A等带MMU的处理器上跑一套操作系统时,RT-Thread已经不那么能够得到适应:整体一起开发,代码维护相对困难;升级时也需要对系统一起进行升级。

RT-Thread Smart 混合微内核

RT-Thread Smart 之所以采用混合微内核架构,更多是从工程、实用层面考虑如何有效的解决需求:

系统启动需要足够快,功能就绪时<500ms

在初始启动时,时间会花很大一部分在系统加载上。传统的方式,都是整个映像程序一起加载。新的系统则只需要加载一个非常小的系统,然后其他应用部分按需加载,同时保持整体资源占用足够小;

应用崩溃时不再影响到内核、系统其他无关功能

每个应用都是地址隔离的,拥有自己的独立地址空间。当应用执行出错,或访问错误地址时,应用程序会core dump,而不会影响到其他应用,系统内核;

在工程引入新的特性时,对原有的功能不影响

继续沿用目前的RT-Thread整体内核代码,在原有基础上增加、完善lwP(轻型进程)功能,保留原有的实时性和小巧的特点。

RT-Thread混合微内核架构

从架构图可以看出内核的功能相对基本,一些系统服务则挪到了用户态,例如elmFATKit - FAT的文件系统,lwIPKit - lwIP轻型TCP/IP协议栈等,而在用户态则使用嵌入式系统中常用的musl libc库:一个轻型,但相对完整的libc实现。不过另外一点,这些系列的用户态系统服务,如果需要追求高性能,也可以在menuconfig中定制这个功能组件继续在内核中保留,这样可以达到最佳的性能。

通过混合微内核改造RT-Thread操作系统后,RT-Thread将成为最适合物联网产业的IoT OS之一,因为它可以完美覆盖小资源场景的MCU用于简单控制<使用RT-Thread nano版本>;中等规模的IoT节点<使用RT-Thread宏内核版本>;功能丰富的智能设备<使用RT-Thread混合微内核版本,也称之为RT-Thread Smart>。

报名测试条件及内容

上面已经对RT-Thread混合微内核操作系统进行了简单的介绍,还有许多没有公布的细节。如果你有兴趣了解,欢迎报名RT-Thread混合微内核系统内测,从更全面的方位来了解RT-Thread Smart。 在参与测试前,先说明下参与的条件:(名额有限,希望您可以认真对待报名表中的每一个问题)

希望是从事嵌入式系统终端开发的行业,具备开发经验;

希望有一定的Linux开发基础,前期一些开发环境可能是在Linux下;

对于参与的同学,我们会提供一份柿饼M7的开发板,同时根据情况收取一定的押金,后续开发板归还后返回押金;

以下这个就是柿饼M7的开发板:

柿饼M7开发板包括:

全志R11处理器,1.2GHz ARM Cortex-A7,64MB DRAM

板载16MB SPI NorFlash

支持AP6181 WiFi

USB接口(用于USB Device连接PC),USB转串口TTL

40/50pin标准RGB屏接口

6线Touch电容触摸屏接口

音频Speaker接口,MIC模拟麦克风

MIPI/DVP camera接口(目前还未包括驱动)

对于参与测试的同学,需要做些什么:

提供一份使用的测试报告,反馈混合微内核使用上的最直观感受;

在上面进行一定的开发,反馈开发层面哪里不足、需要改进;

希望可以有1 - 2个月的时间来和我们持续的沟通和反馈;

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11331

    浏览量

    225908
  • 操作系统
    +关注

    关注

    37

    文章

    7439

    浏览量

    129623
  • RT-Thread
    +关注

    关注

    32

    文章

    1641

    浏览量

    45216

原文标题:【内测邀请】RT-Thread Smart 混合微内核系统开始内测了!

文章出处:【微信号:RTThread,微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    操作系统体系结构

    操作系统的体系结构是一个开放的问题。正如上文所述,操作系统在核心态为应用程序提供公共的服务,那么操作系统在核心态应该提供什么服务、怎样提供服务?有关这个问题的回答形成了两种主要的体系结构:大
    发表于 01-15 08:19

    操作系统的发展及分类

    ,就形成了多道批处理操作系统。该系统把用户提交的作业成批地送入计算机内存,然后由作业调度程序自动地选择作业运行。   优点是资源利用率高,多道程序共享计算机资源,从而使各种资源得到充分利用;
    发表于 01-15 08:00

    操作系统运行机制

    计算机系统中,通常CPU执行两种不同性质的程序:一种是操作系统内核程序;另一种是用户自编程序或系统外层的应用程序。对操作系统而言,这两种程序
    发表于 01-15 07:12

    内核到生态:一次看懂HarmonyOS 6如何重写操作系统的“基础代码”

    在移动操作系统竞争进入“深水区”的当下,用户对于系统体验的期待早已不再局限于功能的简单叠加,而是追求一种从底层架构革新带来的全方位飞跃。HarmonyOS 6的正式发布,正是这样一次对操作系统
    的头像 发表于 12-31 09:09 361次阅读
    从<b class='flag-5'>内核</b>到生态:一次看懂HarmonyOS 6如何重写<b class='flag-5'>操作系统</b>的“基础代码”

    龙蜥操作系统装机量突破1000万

    11月17日,以“生态共融·智驱未来”为主题的2025龙蜥操作系统大会(OpenAnolis Conference)在北京成功举办。千余位全球技术大咖、业界精英和行业开发者齐聚一堂,深入探讨AI时代下操作系统产业发展的新趋势、新挑战与新路径,共话龙蜥社区引领
    的头像 发表于 11-20 11:40 956次阅读

    EV10AS180A模数转换器支持哪些操作系统

    与这些硬件接口进行交互,从而实现对EV10AS180A的控制和数据读取。系统集成与应用场景:在将EV10AS180A集成到具体系统中时,用户可能会根据系统需求选择合适的
    发表于 11-18 09:18

    单片机的操作系统

    单片机操作系统主要分为实时操作系统(RTOS)和嵌入式操作系统两类,以下是常见选择: 实时操作系统(RTOS) ‌ FreeRTOS ‌:
    发表于 11-14 06:18

    嵌入式实时操作系统的特点

    实时嵌入式操作系统(Real-Time Embedded Operating System)是专门设计用于嵌入式系统的实时操作系统。嵌入式系统是一种特殊的计算机
    发表于 11-13 06:30

    探索操作系统底层的关键接口

      在linux中,将程序的运行空间分为内核空间与用户空间(内核态和用户态),在逻辑上它们之间是相互隔离的,因此用户程序不能访问内核数据,也无法使用内核函数。当用户进程必须访问
    的头像 发表于 11-08 12:42 887次阅读

    手持机PDA三大操作系统Android / 开源鸿蒙 / Windows对比

    本文全面解析手持机PDA主流操作系统(Android和开源鸿蒙和Windows)的技术特点、区别及适用场景,帮助企业根据自身业务需求选择合适的系统。包含多维度对比表格和实用选型建议。
    的头像 发表于 09-23 15:41 1287次阅读
    手持机PDA三大<b class='flag-5'>操作系统</b>Android / 开源鸿蒙 / Windows对比

    如何选择合适的实时操作系统

    选择合适的实时操作系统(RTOS,Real-Time Operating System)可能会影响你在不同行业的职业发展路径。
    的头像 发表于 09-09 14:47 1248次阅读

    树莓派操作系统:版本、特性及设置完整指南!

    桌面环境的版本和轻量级、仅用于命令行的最小安装版本。该操作系统设计高效且资源友好,是树莓派设备的理想选择。树莓派操作系统的优势√轻量高效该操作系统设计精简,占用资源
    的头像 发表于 07-28 18:26 1827次阅读
    树莓派<b class='flag-5'>操作系统</b>:版本、特性及设置完整指南!

    聚徽厂家解码——工控机操作系统选择:Windows、Linux、QNX 如何匹配工业场景

    在工业自动化进程不断推进的当下,工控机作为核心设备,其操作系统的恰当选择对工业生产的稳定性、高效性和安全性起着决定性作用。常见的 Windows、Linux 和 QNX 操作系统,各自具备独特
    的头像 发表于 05-29 16:28 1856次阅读

    鸿道Intewell操作系统:人形机器人底层操作系统

    操作系统的实时性赋能东土科技的鸿道(Intewell)工业操作系统作为国内唯一通过汽车、工业控制、医疗、轨道交通四项功能安全认证的系统,为标准体系中的技术层架构提供了底层支持。其微内核
    的头像 发表于 05-16 14:44 969次阅读

    普华基础软件开源汽车操作系统新版本代码上线

    近日,第二十一届上海国际汽车工业展览会现场,开源车用操作系统新版本代码上线仪式在中国电科展台成功召开。全球首个开源智能驾驶操作系统内核龘EasyAda V2.1和首个规模化、量产级安全车控
    的头像 发表于 04-30 09:17 1156次阅读