嵌入式实时操作系统μC/OS-II在P89V51RD2中的移植
引言
自嵌入式系统开发以来,很长时间都采用前后台系统软件设计模式:主程序为一个无限循环,单任务顺序执行。通过设置一个或多个中断来处理异步事件。
这种系统对于简单的应用是可以的,但对于实时性要求比较高的、处理任务较多的应用,就会暴露出实时性差、系统可靠性低、稳定性差等缺点。
μC/OS-II 是一种基于优先级的抢占式多 任务实时操作系统, 包含了实时内核、任务管理、时间管理、任务间通信同步(信号量,邮箱,消息 队列)和内存管理等功能。它可以使各个任务独立工作,互不干涉,很容易实现准时而且无误执行,使实时应用程序的设计和扩展变得容易,使应用程序的设计过程大为减化。而且它内核源代码公开,可移植性强,为编程人员提供了很好的一个软件平台。通过μC/OS-II在P89V51RD2 上的移植,可以掌握移植和测试μC/OS-II 的实质内容,很容易将其移植到其它的CPU平台上。
μC/OS-II 介绍
μC /OS-II是一个完整的、可移植、可固化、可裁剪的占先式实时多任务内核。μC/OS-II绝大部分的代码是用ANSI的C语言编写的,包含一小部 分汇编代码,使之可供不同架构的微处理器使用。至今,从8位到6 4位,μC/OS-II已在超过40种不同架构上的微处理器上运行。μC/OS-II已经在世界范围内得到广泛应用,包括很 多领域, 如 手机、路由器、集线器、不间断电源、飞行器、医疗设备及工业控制 上。实际上,μC/OS-II已经通过了非常严格的 测试,并且得到了美国航空管 理局(Federal Aviation Administration)的认证,可以用在飞行器上。这说明μC/OS-II是稳定可靠的,可用于与人性命攸关的安全紧要(safety critical)系统。除此以外,μC/OS-II 的鲜明特点就是源码公开,便于移植和维护。
μC/OS-II 内核结构
多任务系统中,内核负责管理各个任务 ,或者说为每个任务分配CPU 时间 ,并且负责任务之间的通讯。内核提供的基本服务是任务切换。 μC/OS-II可以管理多达64个任务。由于它的作者占用和保留了8个任务,所以留给用户应用程序最多 可有56个任务。赋予各个任务的优先级必须是不相同的。这意味着μC/OS-II不支持时间片轮转调度法 (round-robin scheduli ng)。μC/OS-II为每个任务设置独立的 堆栈空间,可以快速实现任务切换 。μC/OS-II近似地每时每刻总是让优先级最高的就绪任务处于运行状态,为了保证这一点,它在调用系统API 函数、中断结束、定时中断结束时总是执行调度算法,μC/OS-II通过事先计算好数据简化了运算量,通过精心设计就绪表结构使得延时可预知。
相关文章
- 2021-12-25基于模糊神经网络的移动机器人沿墙导航控制设计
- 2023-02-22三级建模微型机电系统多学科优化设计法
- 2024-01-19电子束吸收剂量标准液体化学剂量测量系统的研究
- 2022-08-18现场总线技术解析与其发展趋势
- 2024-01-25秒表检定测量不确定度的评定
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。