论文部分内容阅读
随着嵌入式技术的发展,嵌入式系统得到了广泛应用。低端微处理器由于成本较低,仍然是许多嵌入式系统的首选目标。目前,基于低端微处理器的应用,主要采用前/后台系统的方式进行设计。在这样的应用中,系统的设计和维护较难,对外界事件的响应较慢,实时性较差。为解决以上问题,充分发挥低端微处理器的潜能,采用多任务系统是一种有效的解决途径。然而,现有嵌入式实时多任务操作系统对存储资源需求较高,不适用于存储资源有限的低端微处理器。因此,实现一种微型的嵌入式实时操作系统将具有重要的意义。本文通过对嵌入式实时操作系统相关技术的分析研究,针对8位低端微处理器设计并实现了一种可移植的微型嵌入式实时操作系统——mROS(micro Embedded Real-Time Operating System),包括任务管理、任务通信、时间管理和驱动管理4个模块。在任务管理模块中,mROS采用了基于优先级的抢占式调度策略,根据任务控制块中的wait信号判断调度的时机。当wait信号到来时,调度器就会立即得到执行,有效地保证了系统的实时性。在任务通信模块中,mROS采用了“信号+命令队列”的思想,信号解决了任务间的同步问题,命令队列用于数据信息的传递。在时间管理模块中,mROS采用了独立的时间控制结构体,用于定义软件定时器,由系统的时钟节拍驱动软件定时器工作,为任务提供定时和延时功能。在驱动管理模块中,mROS采用函数指针表的思想,屏蔽了底层硬件的差异,为应用开发提供了统一的驱动管理功能。在可移植性方面,mROS采用了分层的设计思想,主体代码架构在硬件抽象层之上,通过硬件抽象层屏蔽掉微处理器体系结构的差异。最后,在低端单片机STC89C58平台上进行综合测试。测试结果表明,mROS能够有效地运行在低端微处理器上。在存储资源的占有方面,mROS比μC/OS-Ⅱ节省了约24 %的存储资源。在实时性方面,mROS达到了μC/OS-Ⅱ的实时性能。