找回密码
 立即注册
楼主: fanxsp

原创极简的51-MCU专用RTOS TinyRTOS51

  [复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2025-04-30 07:46:22

33

主题

1079

回帖

2319

积分

荣誉版主

积分
2319
发表于 2024-5-8 11:57:26 | 显示全部楼层
fan*** 发表于 2024-5-8 11:43
昨天我仔细梳理了一下,上下文切换,不关总中断,只关PendSV  , 应该是可以的,要做个程序测试一下,你也 ...

我是任务级也在PendSV里切换,所以不存在切换重入,也不存在关PendSV.


我没有你做的效率那么高, 就是不管任务级还是中断级, 都会全寄存器入栈,统一用PendSV处理
这样的好处是代码不用搞几份,缺点是牺牲了一些效率, 所幸的是不关中断这个好处,
足以抵消所有坏处,而对于任务级响应,不差这几个微秒

我想了一下,你的区分任务级和中断级切换,应该也是可以实现的,只需要在任务级切换时,
关掉PendSV,而不是关掉全部中断



点评

为什么不试试呢?  详情 回复 发表于 2024-5-8 12:03
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:16
  • 最近打卡:2025-04-30 08:41:32

105

主题

1215

回帖

1万

积分

荣誉版主

积分
12882
发表于 2024-5-8 12:03:00 | 显示全部楼层
tzz1*** 发表于 2024-5-8 11:57
我是任务级也在PendSV里切换,所以不存在切换重入,也不存在关PendSV.

为什么不试试呢?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2025-04-30 07:46:22

33

主题

1079

回帖

2319

积分

荣誉版主

积分
2319
发表于 2024-5-8 12:05:14 | 显示全部楼层
本帖最后由 tzz1983 于 2024-5-8 12:07 编辑
fan*** 发表于 2024-5-8 11:43
昨天我仔细梳理了一下,上下文切换,不关总中断,只关PendSV  , 应该是可以的,要做个程序测试一下,你也 ...

但是还是得实践,我对你的代码也不是很熟悉,你是用链来处理优先级的,这个PendSV和高优中断调用OS服务就可能有交叉访问,实际上访问核心全局变是时还是得关中断,只是搬运的时候可以免
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:501
  • 最近打卡:2025-05-01 14:43:21

1

主题

183

回帖

1863

积分

金牌会员

积分
1863
发表于 2024-5-8 12:11:25 | 显示全部楼层
杨*** 发表于 2024-5-8 12:03
为什么不试试呢?

已经做了,现在是要做一个测试程序,比较严格的测试一下

点评

你就按照排行榜的程序把你的新版本发上来,我准备将在STC8H在测试比较专门发一个帖子,希望得到你的支持。 大家一起来研究一下“不关闭总中断”的临界区保护方法,如果技术成熟,每个本尊都有“关闭总中断”和“不关  详情 回复 发表于 2024-5-8 12:18
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:16
  • 最近打卡:2025-04-30 08:41:32

105

主题

1215

回帖

1万

积分

荣誉版主

积分
12882
发表于 2024-5-8 12:12:08 | 显示全部楼层
Cos*** 发表于 2024-5-8 11:03
Keil RTX 4/5 是完全继承并发展了 Arm 对 OS 的设计思想,
其它许多 RTOS 都仅是部分借鉴,如在 PendSV 中 ...

要不你也把你的“零中断延迟”的M3/M4上的CosyOS-II的测试程序也放上来,和我移植的uC/OS-II比较一下?
不争RTX4/5的理念和方法是不是创新,不争别人的RTOS是不是“墨守成规”。
只具体比较一下你的CosyOS-II是否实现了“高优先级中断零延迟”,我移植的uC/OS-II关闭总中断是否造成了“高优先级中断延迟”,同时再比较一下排行榜上的指标?
比一比不就知道了?用具体的数字和事实说话,行吗?

点评

好的,杨老师,理论说的已经够多的了,不再说了, 我抽空整理一下测试程序,发上来。  详情 回复 发表于 2024-5-8 12:18
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:432
  • 最近打卡:2025-05-01 16:19:56

5

主题

1127

回帖

4263

积分

荣誉版主

积分
4263
发表于 2024-5-8 12:12:59 | 显示全部楼层
本帖最后由 CosyOS 于 2024-5-8 12:20 编辑



我再重复介绍一遍,由ARM设计的、现代的、“安全关键” 的OS思想。
“安全关键” 主要包括 两方面内容,空间隔离时间隔离

任务中调用的服务,通过调用SVC来间接执行;
中断中调用的服务(中断挂起服务),通过触发PendSV来缓期执行。
实现了 用户代码内核服务 的空间隔离、任务服务中断服务 的空间隔离。(两对空间隔离)

空间隔离的优势:
1、内核服务可以经过充分的测试,从而能使系统更加健壮和可靠。
2、任务无需在特权级下运行,可以运行在用户级(无法直接访问关键寄存器)

     用户程序无需承担因误操作而瘫痪整个系统的风险。
3、如果在任务中调用中断服务(必将触发PendSV),由于权限不够,会引发总线 fault
4、如果在中断中调用任务服务(必将触发SVC),由于用法错误,将上访成硬 fault
从而全面提升整个系统的安全性和可靠性。



任务应工作在“用户级”,而不是“特权级”
以免因用户误操作,错误修改关键寄存器,
这样才更符合“安全关键”!


关于  时间隔离  以后再介绍。






1 喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
  • +1

    楼主威武~

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:432
  • 最近打卡:2025-05-01 16:19:56

5

主题

1127

回帖

4263

积分

荣誉版主

积分
4263
发表于 2024-5-8 12:18:34 | 显示全部楼层
杨*** 发表于 2024-5-8 12:12
要不你也把你的“零中断延迟”的M3/M4上的CosyOS-II的测试程序也放上来,和我移植的uC/OS-II比较一下?
...

好的,杨老师,理论说的已经够多的了,不再说了,
我抽空整理一下测试程序,发上来。



点评

我在M3上移植的uC/OS-II已经放在排行榜帖子里了,现在你的CosyOS for M4已经发上来了,那么对于我的这个要求: 这样RTX4/5的理念和方法是不是创新,我移植的RTOS是不是“墨守成规”?比一比不就知道了?用事实说话  详情 回复 发表于 2024-5-10 01:43
谢谢支持。 其实对于STC单片机用户而言,有越多的RTOS和种类供他选择,越好。 从中国古人的烧烤一种口味,到现在的超过八大菜系缤纷美食,管它食品协会的大佬说什么,老百姓得到更多的选择才是王道。 从本质上说,排  详情 回复 发表于 2024-5-8 12:26
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:16
  • 最近打卡:2025-04-30 08:41:32

105

主题

1215

回帖

1万

积分

荣誉版主

积分
12882
发表于 2024-5-8 12:18:36 | 显示全部楼层
fan*** 发表于 2024-5-8 12:11
已经做了,现在是要做一个测试程序,比较严格的测试一下

你就按照排行榜的程序把你的新版本发上来,我准备将在STC8H在测试比较专门发一个帖子,希望得到你的支持。
大家一起来研究一下“不关闭总中断”的临界区保护方法,如果技术成熟,每个本尊都有“关闭总中断”和“不关闭总中断”的临界区保护方法两个版本
对于STC单片机用户而言,鱼与熊掌就都有了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:501
  • 最近打卡:2025-05-01 14:43:21

1

主题

183

回帖

1863

积分

金牌会员

积分
1863
发表于 2024-5-8 12:21:00 | 显示全部楼层
杨*** 发表于 2024-5-8 12:18
你就按照排行榜的程序把你的新版本发上来,我准备将在STC8H在测试比较专门发一个帖子,希望得到你的支持 ...

还是要关总中断的,只是在任务切换过程,不用全程关总中断,只关一小段时间。

点评

再试试,我认为你写的和tzz1983移植到STC8H上的uC/OS都可以实现“不关闭总中断”的版本  详情 回复 发表于 2024-5-8 12:30
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:16
  • 最近打卡:2025-04-30 08:41:32

105

主题

1215

回帖

1万

积分

荣誉版主

积分
12882
发表于 2024-5-8 12:26:17 | 显示全部楼层
Cos*** 发表于 2024-5-8 12:18
好的,杨老师,理论说的已经够多的了,不再说了,
我抽空整理一下测试程序,发上来。

谢谢支持。
其实对于STC单片机用户而言,有多的RTOS和种类供他选择,越好。
从中国古人的烧烤一种口味,到现在的超过八大菜系缤纷美食,管它食品协会的大佬说什么,老百姓得到更多的选择才是王道。
从本质上说,排行榜就是各位本尊向大家展示和提供免费品尝的食品博览会

回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 13:23 , Processed in 0.193955 second(s), 121 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表