知名嵌入式操作系统宣布停止更新

虎嗅APP2024-07-17 07:09:51  139

“人生苦短,我选Mbed。”这是嵌入式工程师曾经说的话。而在这两天,Mbed出大新闻了。

近日,Arm官方宣布,Mbed开发平台和操作系统将于2026年7月起终止使用,届时Mbed网站将被存档,将无法再利用在线工具中构建项目。

Mbed表示,MbedOS软件是开源的,将保持公开可用,但Arm将不再积极维护。

同时,MbedTLS项目不受此公告的影响,并将继续作为TrustedFirmware社区项目的一部分受到支持。

os.mbed.com中的原文如此表示:

Mbed自2009年以来一直是一个非常受欢迎的项目,它帮助专业开发人员、教育用户和创客社区在由Mbed合作伙伴和贡献者开发的基于Arm的硬件上创建、保护、部署和更新数千个应用程序。自推出以来,嵌入式和物联网开发已经发生了巨大的变化和扩展,在此发展过程中,Arm对CMSIS等行业标准以及一套用于专业和学术用途的嵌入式和物联网开发工具进行了大量投资。

与此同时,Arm支持的项目(如micro:bit、Arduino和RaspberryPi)在教育环境和创客社区中发展势头强劲,使Mbed提供的许多功能变得更加普及和易于访问,无论是基于浏览器的IDE和硬件抽象到代码托管和远程构建服务。我们相信,这些需求现在可以通过更广泛的生态系统得到最好的满足,而无需Arm的直接支持。

Arm始终致力于投资物联网开发,专注于我们认为将最有效地服务于行业和学术界的标准、工具和教育内容,因为我们将继续支持每个人在Arm上构建计算的未来。

Mbed也对用户提供了如下建议:

我们建议教育机构开始研究不再使用Mbed作为嵌入式开发教学平台。Arm教育团队正在积极致力于为2025年秋季开始的新学期创建替代教学和学习解决方案。我们欢迎学术界对此提出反馈。联系团队:education@arm.com

不应使用Mbed启动任何新的商业项目,任何现有的基于Mbed的商业项目都应开始研究替代框架。

可替代的建议:

对于免费使用的嵌入式开发环境,推荐ArmKeilMDKv6社区版,它可以与CMSIS标准和CMSISRTXRTOS无缝协作:

为了快速制作原型和教育目的,建议如下开发平台:

Arduino(基于C/C++)

micro:bit(多重编程抽象)

RaspberryPiPico(多种编程抽象)

对于替代的RTOS,建议:

CMSISRTX

FreeRTOS

Zephyr

对于嵌入式Linux项目,建议:

Yocto

RaspberryPi

所有用户开始将代码和其他数据从Mbed.com迁移到其他平台。Mbed帐户中有一个导出工具。

一些重要的问题

MbedOS代码库会发生什么?

Arm已停止对MbedOS代码库的主动维护和CI。您不应期望在2026年7月之前看到任何修复或改进。2026年7月之后,代码库将存档在GitHub中。

MbedTLS会发生改变吗?

MbedTLS项目不受此更改的影响。尽管它与Mbed同名,但MbedTLS现在是TrustedFirmware.org的一部分。MbedTLS的开发照常进行,并像往常一样提供功能发布(包括LTS版本)和支持的路线图。

我在商业产品中使用了MbedOS。我该怎么办?

MbedOS使用条款不会改变,您可以继续在现有的商业或非商业项目中使用MbedOS。

操作系统弃用后,我还能构建我的Mbed项目吗?

您将无法在KeilStudioCloud或MbedStudio中构建Mbed项目,但可以使用MbedCLI通过GCC构建项目。截至目前,Arm尚未提供对MbedOS代码库的任何支持。这包括MbedCLI。

Mbed与RTOS的发展

物联网操作系统的概念,最先来自于无线传感器操作系统,知名的有TinyOS和Contiki,TinyOS是专为嵌入式无线传感网络设计开发的开放源代码操作系统,目标是低功耗无线设备。Contiki是一个适用于有内存的嵌入式系统的开源的、高可移植的、支持网络的多任务操作系统。与传统的嵌入式设备相比,物联网感知层的设备更小、功耗更低,而且需要较高的安全性和组网能力,物联网通信层需要支持各种通信协议和协议之间的转换,应用层则需要具备云计算能力。在软件方面,支撑物联网设备的软件比传统的嵌入式设备软件更加复杂。于是就有了物联网操作系统IoTOS。说的简单一些,IoTOS就是具备物联网需求的嵌入式操作系统。从2014年至今,许多IoT领域里的玩家都陆续推出了支持不同厂商的mcu设备的IoTOS,比如ARMmbedOS,Windows10IoTCore,Linux-FoundationZephyrproject和GoogleOSFuchsia等。

mbedOS,是ARM推出针对给所有Cortex-M设备使用的,一种专为物联网(IoT)中的“物体”设计的开源嵌入式操作系统。mbedOS屏蔽了不同mcu厂商提供了微处理之间的差异(通过CortexM--CMSIS框架),对于用户来说,只需要和API打交道即可,也就是说,用户基于mbed开发的应用可以很方便地更换使用不同厂商的arm微处理器。当然,这里还是仅限于支持mbed的处理器,也就是mbedenabledboards。

MbedOS6

mbed提供的在线开发工具onlineIDE

ARM为mbedOS开发者提供一套基于云计算的在线网页编译工具,可以在Windows、Linux、Mac等各种可以网页浏览的设备上进行编程。所以不需要安装调试工具,只要选好指定的开发板,就立即可以进行编程,编译后直接生成一个bin文件,直接烧写到设备即可运行。

mbedOS分层结构

Mbed的通用架构模型给嵌入式开发人员提供了极大的灵活性和可扩展性。举例来说,该架构模型一般分为三个单独的层:

低级硬件抽象层(HAL)

MbedOSAPI,用作中间件,提供存储、RTOS、安全连接、通信堆栈等能力

高级物联网层,包括开发人员的应用程序代码、MbedOS库和连接客户端。

上图是mbedOS的分层结构,我认为不必要过多的解读它的结构,主要是我们可以看到mbedOS所提供的具有物联网需求的功能和协议,包括6LoWPAN,Web传输受限制的应用协议(CoAP)和超文本传输协议(HTTP),用于机器对机器(M2M)连接的消息队列遥测传输(MQTT),密码协议传输层安全协议(TLS),数据包传输层安全性协议(DTLS),开放移动联盟轻量级M2M(OMALWM2M)标准。开发人员的工作量将会大量减轻,从而可以专注于编写尤其适用于mbedOS内核顶层的安全和通信协议的代码。

MbedOS的发展历史

2006年:创立

初创阶段:Mbed项目由ARM的两位员工ChrisStyles和SimonFord在ARM公司内部启动,最初是为了简化基于ARMCortex-M微控制器的嵌入式开发。

2009年:首次发布

Mbed1.0发布:2009年,Mbed推出了第一个版本,提供一个在线编译器和库,支持ARMCortex-M微控制器。这个版本简化了嵌入式系统开发,吸引了大量开发者。

2010-2014年:社区和生态系统发展

社区扩展:Mbed平台开始吸引更多的开发者和公司加入,形成了一个活跃的开发者社区。

硬件支持增加:多个微控制器厂商如NXP、STMicroelectronics和Freescale(现为NXP的一部分)开始支持Mbed,提供更多兼容的开发板和模块。

2015年:MbedOS和MbedCloud发布

MbedOS3.0发布:ARM发布了MbedOS3.0,这是一个更加综合性的嵌入式操作系统,支持实时操作系统(RTOS)特性、安全性和联网功能。

MbedCloud推出:ARM推出了MbedCloud,一个针对物联网设备管理的云平台。MbedCloud提供了设备注册、连接管理、固件更新和安全管理等功能,帮助企业更好地管理大规模物联网设备。

2016-2017年:功能扩展与稳定化

MbedOS5.0发布:2016年发布了MbedOS5.0,进一步增强了操作系统的功能,包括对物联网协议(如LoRa、Thread、BLE等)的支持,改进的调试和开发工具。

增强安全性:MbedOS增加了更多的安全特性,如对设备身份验证和固件更新的支持,满足物联网设备的安全需求。

2018-2020年:合作与生态系统深化

合作伙伴关系:ARM与多家芯片制造商和物联网公司建立了合作伙伴关系,进一步扩展了MbedOS的生态系统。

MbedStudio:ARM发布了MbedStudio,这是一个桌面集成开发环境(IDE),为开发者提供更强大的开发和调试工具。

MbedCloud重命名为PelionDeviceManagement:MbedCloud重命名为PelionDeviceManagement,并继续扩展其功能,提供设备生命周期管理、数据管理和连接管理等服务。

2020年:MbedOS6发布

MbedOS6.0发布:2020年,ARM发布了MbedOS6.0,这是一个主要版本更新,进一步提升了安全性、连接性和RTOS功能。MbedOS6.0引入了更严格的安全性特性、更好的电源管理、对更多协议的支持以及改进的开发工具。

安全性增强:MbedOS6引入了对安全启动、加密和密钥管理的增强支持,满足物联网设备日益增长的安全需求。

2021年至今:持续发展

持续改进:MbedOS不断进行更新,增加新特性、改进性能和增强安全性。

边缘计算与AI:MbedOS开始支持更多的边缘计算和人工智能功能,满足日益增长的智能物联网设备需求。

Pelion平台发展:PelionDeviceManagement继续扩展其服务和功能,帮助企业更好地管理和利用其物联网设备和数据。

嵌入式开发平台竞争激烈,操作系统竞争更激烈

正如前所述,包括Arduino、树莓派以及micro:bit、ESP32在内的各种开源开发平台下,Mbed并不受国内欢迎。

正如吴昊在《深入浅出物联网操作系统Mbed》一文中所述,Mbed在国内应用比较少,其中主要几个原因:其一,Mbed主要推荐在线开发,开发完成后下载编译后固件并运行,这种模式存在几种问题:无法在线调试硬件,国内网络环境无法访问部分国外网站,在线开发不利于知识产权保护,并且Mbed导出本地工程也存在一些问题:其二,国内嵌入式开发以Keil为主,而Keil对C++支持比较弱,gcc主要以命令模式进行开发,使用比较不友好。

而在RTOS方面,目前市场上有十余种RTOS,分别为μClinux、μC/OS-II、eCos、FreeRTOS、mbedOS、RTX、Vxworks、QNX、NuttX,国产的嵌入式操作系统包括都江堰操作系统(djyos)、AliosThings、HuaweiLiteOS、RT-Thread、SylixOS等。

对于嵌入式系统而言,这种碎片化的场景也让工程师在学习和开发中带来了不小的阻隔。

归根结底,Arm的主要收入来源是授权和技术许可,而不是硬件或开发工具,这与专注于开发者社区和市场推广的其他平台形成了对比。

实际上,在2020年,Arm就剥离旗下物联网服务业务(IoTServiceGroup,简称ISG,包括PelionIoT平台和TreasureData)的计划,其余业务也将转移到由其母公司软银集团成立的新的实体,从而将更加专注于以Cortex为代表的芯片底层架构设计。

如今放弃Mbed,除了市场竞争激烈之外,同样也是Arm为聚焦主业所做的改变。

这次Arm宣布终止Mbed项目,你有受到影响吗?欢迎进入下方链接跟帖讨论:https://www.eeworld.com.cn/a1GS4W5

参考文献

ARM?mbedOS入门开发(一)介绍篇深入浅出物联网操作系统Mbed

转载此文是出于传递更多信息目的。若来源标注错误或侵犯了您的合法权益,请与本站联系,我们将及时更正、删除、谢谢。
https://www.414w.com/read/907855.html
0
最新回复(1)
  • 十人永2024-07-17 21:16
    引用1
    没影响,早就弃用ARM了[得瑟]