Cortex-M3下μc/Os-Ⅱ就绪表算法优化:存储与效率提升
38 浏览量
更新于2024-08-30
收藏 286KB PDF 举报
嵌入式系统/ARM技术中的μc/Os-Ⅱ就绪表算法在ARM架构上的改动是一个关键话题,特别是在针对Cortex-M3这样的单片机领域。Cortex-M3作为ARM公司最新的架构版本,支持Thumb-2指令集,这在实现高效能的同时,也对代码密度有所优化。μc/Os-Ⅱ原有的算法依赖于OSMapTbl[8]和OSUnMapTbl[256]两个查找数组,以快速定位就绪任务。
在Cortex-M3上进行改动的原因主要在于提升算法的效率,因为就绪表操作通常在关中断模式下执行,直接影响系统的中断响应时间,这是评估实时操作系统性能的重要指标。改动后的算法考虑了Cortex-M3的特性,如利用单周期指令clz进行高效计算,减少了存储需求,将就绪任务的数量从64提升到了1024(尽管2.84版已支持256个任务,但效率下降)。
然而,改动也带来了一些挑战。首先,RealviewMDK当时的版本不支持C语言直接使用Thumb-2指令集,这意味着在编写代码时使用内嵌汇编函数会导致调用开销,降低执行效率。其次,C语言对clz指令的支持有限,这可能影响新算法在不同平台上的兼容性。
尽管存在这些限制,改动后的μc/Os-Ⅱ就绪表算法在优化存储、提高查找速度以及增加任务处理能力方面显示出明显的改进,这对于实时性要求较高的嵌入式系统来说无疑是一次重要的优化尝试。未来,随着工具链和技术的发展,这类算法的优化和移植将更加顺畅,以适应不断变化的硬件环境和编程需求。
2020-10-21 上传
208 浏览量
2020-11-11 上传
142 浏览量
105 浏览量
159 浏览量
114 浏览量
2020-11-09 上传
2020-10-23 上传
weixin_38519060
- 粉丝: 1
- 资源: 900
最新资源
- 搜索引擎_原理技术与系统
- Java语言编码规范(Java+Code+Conventions).
- 新东方词根词缀大全.pdf
- MIT How to do Research
- 浙大计算机硬件课程改革
- c语言部分方法介绍资料
- IDES安装中文系统步骤祥解
- 利用logistic模型预测移动电话发展
- C++徐孝凯习题解答.txt
- ARM入门教程 轻松学ARM
- Eclipse Web Tools Platform 英文版 (pdf)
- 轻量级ORM-Persister使用指南(英文版)
- verilog黄金参考指南中文版
- [浪曦.J2EE.Struts.2应用开发详解系列视频2008_4_29更新].Practical.Apache.Struts2.Web.2.0.Projects.pdf
- Asp.net页面之间传递参数的几种方法
- VS2005(c#)项目调试问题解决方案集锦