SEGGER的三款RTOS有什么特点?

电子说

1.3w人已加入

描述

作者 | strongerHuang

微信公众号 | strongerHuang

说到SEGGER可能有些读者比较陌生,但说到J-Link相比大家都比较熟悉。

是的,J-Link就是SEGGER公司下的一款产品,SEGGER除了我们熟悉的J-Link其实还有很多嵌入式软件相关的产品,你了解多少?

之前还给大家分享过《 STM32生态系统增添embOS新成员 》的文章。

1SEGGER有哪些RTOS

可能我们熟悉的RTOS是μC/OS、 FreeRTOS、 RT-Thread等。但SEGGER也有RTOS,有三种不同的变体,分别是:embOS、 embOS-MPU、 embOS-Safe。

API

其实embOS发展有很多年了,embOS-MPU 和 embOS-Safe都是在embOS的基础上发展的产物。

2embOS

embOS库和源代码可免费用于非商业用途。

特点:

超过25年的持续发展

适用于所有流行的内核,编译器和开发工具

部署在广泛应用领域的数十亿设备中

通过了IEC 61508 SIL 3和IEC 62304 C类的功能安全认证

符合MISRA-C:2012

强大且易于使用的API

最高的性能,最少的内存使用

提供内核意识插件

零中断延迟

---来源官网,谷歌翻译

API

3embOS-MPU

embOS-MPU是embOS发展产物,这里的MPU是Memory Protection Unit(内存保护单元)。

是在embOS之上提供内存保护,增强了不少嵌入式产品的安全性。

由于具有完全兼容的API,现有的embOS应用程序不用,或者简单修改就能兼容embOS-MPU。

主要特点:

适用于任何安全关键型应用

适用于任何包含硬件MPU或MMU的MCU

无限数量的特权和非特权任务

非特权任务100%沙盒化

简单直接的运行时配置

易于集成到新产品和现有产品中

---来源官网,谷歌翻译

什么是内存保护?

说到MPU(内存保护单元),这里就再来描述一下什么是内存保护。

内存保护是控制内存访问权限的一种流行机制,并且是大多数现代处理器体系结构和操作系统的一部分。内存保护的主要目的是避免特定任务访问尚未分配给它们的内存,从而防止一个任务中包含的可能的错误甚至恶意软件影响整个系统。

为了实现此目的,必须限制可能影响其他任务或OS本身的应用程序任务访问整个内存,特殊功能寄存器和OS的控制结构。例如,执行第三方代码的任务可能被认为是不安全的,因此应受到相应的限制。此类应用程序任务不得以与OS相同的特权状态运行,后者以完全特权模式运行,并且可以访问所有内存,外围设备和CPU功能。而是,这些任务必须在非特权状态下运行,并且只能访问特定的内存位置。

什么是embOS-MPU?

embOS-MPU使用硬件的内存保护单元以及用embOS-MPU实施的其他软件机制来防止一项任务影响系统的整体。这保证即使在一项任务中发生错误的情况下,所有其他任务和操作系统本身也可以继续执行。

使用embOS-MPU,所有特权任务都可以完全访问整个内存。但是,无特权的任务具有对每个不同的内存区域的特定访问权限。为了访问外围设备,可以从非特权任务中调用其他内存位置和OS控制结构,设备驱动程序以及特定的embOS API。

因此,基于embOS-MPU的应用程序包含两个不同的部分:

第一部分以特权状态运行: 初始化MPU设置并包括设备驱动程序。此部分包含关键代码,必须经过验证才能完全可靠。

第二部分是应用程序本身: 不需要为完全可靠性而进行验证。由于它以非特权状态运行,因此该部分不会影响整个系统。

4embOS-Safe

embOS-Safe从描述也能猜测到,它是经过认证的功能安全的RTOS。

embOS-Safe同样是embOS的发展产物,与embOS相关的应用程序编程接口(API)相同。用户的应用程序可以轻松移植到该安全RTOS上。

特点:

增强您产品的安全性!

简化认证并降低风险

通过德国TÜV Süd的IEC 61508 SIL3和IEC 62304 C类认证

责任编辑:haq

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分