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

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

3天内不再提示

SEGGER嵌入式应用程序重磅发布

麦克泰技术 来源:麦克泰技术 2025-07-17 10:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在当今快节奏的嵌入式系统领域,灵活性和适应性是关键。因此,我们激动地向大家揭晓SEGGER的最新创新成果:嵌入式应用程序(Embedded Apps),类似于手机上的应用(只是更不容易发现且体积小得多),可在嵌入式系统上运行。

应用程序是小型、动态的软件片段,可通过静态或动态方式与设备固件链接。通常情况下,它们采用动态链接方式,这意味着您可以随时下载并将其添加到现有固件中。

SEGGER应用程序由固件中一个小型且高度优化的代码片段(即执行器)来执行,该执行器本质上实现了虚拟CPU的指令集。这一功能扩展了设备的功能性,使其更具通用性,能更好地适应新需求和更新。本质上,应用程序可将您的嵌入式设备转变为一个嵌入式平台!

SEGGER应用程序的一大突出特点是其采用沙箱机制。也就是说,它们在受保护的环境中运行,底层操作系统可对其行为进行监控。如果某个应用程序试图执行不允许的操作,执行器会暂停该应用程序的运行,并返回至固件(调用方),由固件决定如何处理这种情况。这样不会造成任何损害。这确保了即使应用程序内部出现问题,系统的其他部分仍能保持稳定和安全。

基本概念

概念可能有点难以想象,但我们会尽力解释,只需在固件中添加执行器、带有API函数的沙箱,您的设备就可以运行应用程序了。要为应用程序添加功能,可增加相应的API函数。例如,若要添加对文件系统的读取权限,通常需要添加三个函数,如OpenFile(打开文件)、ReadFile(读取文件)、CloseFile(关闭文件)。若要允许写入权限,则需添加WriteFile(写入文件)函数。应用程序的加载方式以及在何种上下文/线程中执行,由固件设计人员决定。

多个应用程序可以同时运行,无论是在同一内核还是不同内核上,均在实时操作系统(RTOS)的控制下。任何RTOS都适用,因为执行器由在RTOS下运行的固件调用(前提是您的固件使用RTOS)。

每个应用程序都可拥有自己的内存空间。如果某个应用程序出现问题(如崩溃),不会影响系统稳定性,这类似于手机或电脑上的应用程序崩溃不会影响系统本身。这使得应用程序甚至可以在安全关键型环境中运行;它甚至能让关键系统的认证过程更简便,因为外围功能(如显示器控制)可转移到应用程序中,而该应用程序则无需纳入认证流程。

内存需求

担心对你的系统来说太大?这些应用程序不仅能增强灵活性,而且内存消耗极小。作为嵌入式固件一部分的执行器,通常仅需600至1000字节。我们有针对ARM优化的版本,以及可移植的C版本,该C版本几乎可在任何设备上运行,包括用于仿真的个人电脑。固件所提供的API函数,通常仅增加1至3KB的内存占用,具体主要取决于您希望向应用程序开放的原生函数。

这意味着嵌入式应用程序(emApps)即使在较小的系统(64KB闪存)上也能顺利运行。该框架可轻松集成到现有固件中。

代码密度

运行这些应用程序的虚拟CPU的代码密度极高,往往高于主机CPU,尤其是在RISC-V环境中。这甚至有助于节省宝贵的程序空间,特别是当应用程序被静态构建到程序中时!

我们为这款虚拟CPU配备了专属的C编译器。通过使用“TO C”转换器,还可使用其他语言,如Basic、Pascal、Python

内存保护——沙箱机制

应用程序只能使用固件(嵌入式系统运行的程序)分配的内存空间。在应用程序处于活动状态期间,固件会提供相应的内存。任何访问分配内存空间之外区域的尝试都会被拦截,执行器会返回并让调用方(固件)决定如何处理这种情况。

性能

应用程序由固件中一个小型且高度优化的代码片段(即执行器)执行。该执行器本质上实现了虚拟CPU的指令集,我们已为此对其进行了优化:该指令集非常紧凑,因此虚拟CPU执行的指令数量通常远少于主机CPU实现相同功能所需的指令数量,并且它能在任何CPU上高效执行。再加上可将计算密集型任务卸载到主机CPU的能力,其性能通常非常接近主机CPU。

研发背景

我们已将这一创新方法集成到J-Link和Flasher产品线中,因为我们看到了其中的需求。

应用程序的编程可由我们或第三方完成,无需重新编译固件,也不会牺牲性能。任何所需的加密代码都可成为这些应用程序的一部分(我们提供相关库,便于使用)。这样,固件本身就能保持精简且“无加密代码”。其他应用程序可对FPGA进行编程,或对已编程的目标系统进行产品生产后测试。

未来展望

我们将继续把这一技术集成到其他产品中。对于J-Link,未来将能够添加对新CPU的支持。任何人都能做到这一点,即使是SEGGER外部人员也可以。

凭借强大的API以及两个内部设计的单周期软核(“Speedy”)——其运行速度可达200MHz、单周期,不仅可以添加使用JTAG、SWD或cJTAG的其他内核,还能添加复杂的双引脚和单引脚接口

在Flasher Hub中,一个例子是客户网页服务器,它允许自定义网页用户界面、添加新功能,或简单地将用户界面的语言更改为任何所需语言。

一旦应用程序可用,新的想法便会层出不穷。即使是在强大主机上运行的软件,也能从嵌入式应用程序(emApps)中获益。

它们在沙箱中运行且具有明确定义的API,这一特点使其相较于常规插件更具优势。

我们预见,未来不同行业的众多嵌入式应用都将能利用这一技术。借助应用程序,您可以以安全且可控的方式扩展功能,类似于智能手机上的应用程序。这种方法不仅增强了灵活性,还为第三方开发者提供了为生态系统贡献力量的机会。

我们热切期待嵌入式应用程序(emApps)将如何塑造嵌入式系统的未来,也迫不及待地想让您体验它们带来的益处!

请持续关注更多更新,准备好探索SEGGER嵌入式应用程序(emApps)带来的全新世界吧!如果您有兴趣在商业产品中使用嵌入式应用程序(emApps)并希望了解更多信息,请联系我们:info@segger.com

SEGGER(嵌入式专家)祝您一切顺利!

June 10th, 2025

作者:Rolf Segger

麦克泰技术代理SEGGER全线产品,具有30年的软件开发与调试工具使用方面的知识和经验,关于SEGGER产品的更多信息,欢迎咨询info@bmrtech.com。

麦克泰技术走过了30年发展历程(1995-2025),秉承“让嵌入式软件开发更容易”的理念,致力于推广嵌入式软件开发工具、测试软件和嵌入式操作系统。麦克泰技术通过举办嵌入式软件和操作系统研讨会、开设培训课程、出版图书,撰写博客文章,倡导和宣传开放和开源的嵌入式软件、操作系统以及开发技术,包括VRTX(90年代)、µC/OS(2000年),Montavista Linux(2010年)和FreeRTOS(2010年)以及IAR/BDI/J-Link等知名的产品和技术。

麦克泰技术具有丰富嵌入式软件项目开发、行业应用与服务经验。今天,我们依托欧美嵌入式软件商业团队支持,提供嵌入式软件商业授权和服务。包括(不限于)SEGGER嵌入式软件开发和编程工具(J-Link/Flasher),OS分析工具Tracealyzer,WITTENSTEIN公司的SafeRTOS(FreeRTOS)、Flexible Safety RTOS(µC/OS-II MPU)以及新一代PX5 RTOS。麦克泰技术专注预认证功能安全操作系统在汽车、轨交、医疗和工业领域的应用以及RISC-V处理器嵌入式开发生态建设。

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

    关注

    5186

    文章

    20141

    浏览量

    328643
  • 应用程序
    +关注

    关注

    38

    文章

    3342

    浏览量

    59904
  • SEGGER
    +关注

    关注

    0

    文章

    60

    浏览量

    14759

原文标题:加速生态系统发展:嵌入式应用程序(Embedded Apps)重磅推出

文章出处:【微信号:麦克泰技术,微信公众号:麦克泰技术】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何采用SAFERTOS和ESM保护嵌入式系统安全

    信任根的重要组成部分是实时操作系统(RTOS),它为应用程序的运行提供了一个安全的平台。嵌入式系统的具体安全要求取决于其架构以及所面临的威胁。在本博客中,我们将探讨RTOS的安全性,以SAFERTOS及其增强安全模块(ESM)作为保护
    的头像 发表于 10-24 15:51 1142次阅读

    RT-Thread 2025嵌入式软件大赛重磅来袭

    为激发开发者潜能、促进技术交流,RT-Thread 正式启动2025年度嵌入式软件大赛! 本赛道为嵌入式软件大赛,聚焦嵌入式软件设计与开发,携手瑞萨、英飞凌、ST、恩智浦、富瀚微、玄铁、兆易创新等
    的头像 发表于 09-22 16:40 3234次阅读
    RT-Thread 2025<b class='flag-5'>嵌入式</b>软件大赛<b class='flag-5'>重磅</b>来袭

    RT-Thread 2025嵌入式软件大赛重磅来袭

    为激发开发者潜能、促进技术交流,RT-Thread正式启动2025年度嵌入式软件大赛!本赛道为嵌入式软件大赛,聚焦嵌入式软件设计与开发,携手瑞萨、英飞凌、ST、恩智浦、富瀚微、玄铁、兆易创新等全球
    的头像 发表于 09-20 10:06 1272次阅读
    RT-Thread 2025<b class='flag-5'>嵌入式</b>软件大赛<b class='flag-5'>重磅</b>来袭

    嵌入式工程师为什么要学QT?

    Qt对嵌入式工程师来说,真的很重要吗? Qt是一个跨平台的C++应用程序开发框架,非常适合嵌入式系统的开发,Qt在嵌入式开发中具有很重要的作用。 在项目实践中可以看出,Qt在工业自动化
    发表于 08-14 15:15

    SEGGER J-Probe工具的工作原理和应用

    SEGGER J-Probe工具的核心理念是提供一个可定制的图形用户界面(GUI),使开发人员能够在应用程序运行时与嵌入式系统的内部数据进行交互并进行可视化展示。
    的头像 发表于 08-14 10:04 1876次阅读
    <b class='flag-5'>SEGGER</b> J-Probe工具的工作原理和应用

    SEGGER工具链集成到CMake和VS Code了

    SEGGER公司已将其嵌入式开发工具链集成到了广泛使用的CMake构建配置工具中,这意味着基于Visual Studio Code(VS Code)代码编辑器的应用开发可以方便的使用SEGGER工具实现了。
    的头像 发表于 07-23 15:06 762次阅读

    Linux嵌入式和单片机嵌入式的区别?

    :使用Linux操作系统,可以运行各种复杂的应用程序和驱动程序。 4. 资源需求 : 单片机嵌入式 :对硬件资源的需求较低,通常只需要一个单片机芯片,内存和存储空间较小。 Linux嵌入
    发表于 06-20 09:46

    运行在嵌入式系统上的emApps

    在当今快节奏的嵌入式系统世界中,灵活性和适应性是嵌入式系统实现的关键。SEGGER推出了其最新创新:Embedded apps(emApps)应用,类似于手机上的应用程序,可以运行在
    的头像 发表于 06-18 09:53 616次阅读
    运行在<b class='flag-5'>嵌入式</b>系统上的emApps

    想在嵌入式领域高薪就业?先迈过这些人才门槛!

    嵌入式开发的世界,如今正经历着一场变革,同时也暴露出诸多问题。现在,会编写嵌入式程序的人随处可见,树莓派、Arduino 等开发板的出现,让嵌入式编程变得轻而易举,就连软件工程师也能轻
    的头像 发表于 03-20 10:42 765次阅读
    想在<b class='flag-5'>嵌入式</b>领域高薪就业?先迈过这些人才门槛!

    有方科技重磅亮相德国嵌入式

    德国纽伦堡时间3月11-13日, EmbeddedWorld 2025(德国嵌入式展)在纽伦堡国际展览中心举行,作为全球规模最大、专业性最强的嵌入式系统与物联网技术展会,其被誉为全球智能硬件与工业数字化的“技术风向标”。
    的头像 发表于 03-13 09:14 927次阅读

    飞凌嵌入式携手全志,T536全国产核心板重磅发布

    以全志T536工业级处理器为引擎,驱动国产化创新,为千行百业提供降本增效新选择——飞凌嵌入式FET536-C核心板重磅发布
    的头像 发表于 03-05 10:31 1425次阅读
    飞凌<b class='flag-5'>嵌入式</b>携手全志,T536全国产核心板<b class='flag-5'>重磅</b><b class='flag-5'>发布</b>

    使用Ozone调试基于nRF9160 Zephyr应用程序

    Ozone是SEGGER免费的嵌入式软件调试器。它是一个强大的工具,可以让你深入了解嵌入式系统中发生的事情。它在调试nRF9160 Zephyr应用程序时特别有用。整理多个线程和多映像
    的头像 发表于 02-25 17:07 1421次阅读
    使用Ozone调试基于nRF9160 Zephyr<b class='flag-5'>应用程序</b>

    嵌入式主板的概述与发展

    随着科技的迅猛发展,嵌入式系统在现代电子产品中扮演着越来越重要的角色。嵌入式主板作为嵌入式系统的核心组件之一,承担着控制、处理和通讯等多种功能。本文将对嵌入式主板的基本概念、构成部分、
    的头像 发表于 01-13 16:30 1177次阅读
    <b class='flag-5'>嵌入式</b>主板的概述与发展

    使用SEGGER工具实现嵌入式应用开发

    嵌入式系统的可能性是无限的,从创建智能家居设备到为工业自动化提供动力,但是有这么多的工具、技术和流程要学习,你从哪里开始呢?
    的头像 发表于 01-10 16:27 1081次阅读

    新手怎么学嵌入式?

    的基础上增加了面向对象编程的特性,有助于编写更复杂的嵌入式程序。 3. 学习硬件知识 嵌入式技术与硬件紧密相关,因此你需要了解一些基本的硬件知识。比如微控制器(MCU)、微处理器(MPU)的工作原理,了解
    发表于 12-12 10:51