一种改进嵌入Linux实时性的新型方案
4.调度处理
当 中断到来时,实时内核判断它是基本内核中断还是属于实时中断,分别进行处理。若是基本内核中断,如果当前有实时任务正在运行,则只是设置一下中断标志位, 悬挂此中断,如果没有实时任务运行,则调用基本内核的中断处理程序;如果此中断是实时中断,就直接调用相对应的实时中断处理程序。注意,实时中断可以抢先 基本内核任务的执行。系统的中断处理流程如图3所示。
应用案例
工业控制是嵌入式实时操作系统的传统应用领域,需要严格的实时处理功能、高可靠性和良好的开放性,对开发环境、可操作性、成本等也有特别的要求。因此本项研究以重大装备的远程监控系统作为其应用之一。
1.嵌入式远程监控系统结构
应 用针对工业生产中使用的大型设备在连续运转状态下的远程监控问题,研究用于重大装备远程监控的嵌入式装置。系统主要包括输入/输出模块(NetIO)和输 入/输出上位模块(NetWeb),前者用于实现现场数据的采集(输入),或用于现场装置的控制(输出),后者集成了Web功能,使得用户可以通过互联网 对输入/输出模块进行访问。两类模块通过网络相连接,在本系统中为通过串行485总线。嵌入式远程监控系统结构如图4所示。
2.NetWeb对嵌入式Linux的功能验证
图4 嵌入式远程监控体系结构
NetWeb的开发基于前面介绍的嵌入式实时Linux操作系统。特殊的双内核操作系统结构决定了应用开发的特殊性。
1)任务管理功能
系统中的任务可以分为实时性任务和非实时性任务,实时任务包括实时数据采集、处理等方面,这部分的功能要在实时内核RTAI之上进行实现;另外,非实时任务主要包括数据存储、远程通讯的实现,这部分功能要在基本内核uClinux之上实现。
嵌入式实时Linux将实时任务与非实时任务分开管理,实施不同的调度策略和任务间通信方式,至于实时任务与非实时任务之间的通信可以通过实时的FIFO或共享内存实现。这样的功能使应用的编写简洁清晰、功能明确、调度灵活,方便了用户。
2)网络功能
嵌入式实时Linux实现了嵌入式互联网技术,将Web服务器引入到现场测试和控制设备中,在相应的硬件平台和软件系统的支持下,使传统的测试和控制设备转变为具备了以TCP/IP为底层通信协议,Web技术为核心的基于互联网的网络测试和控制设备。
嵌 入式Web与传统Web应用相比,简化了系统结构,将信息采集和信息发布都集成到现场的测控设备中。由于有了标准的接口形式和通信协议,内嵌于设备的 Web服务器可以向任何接入它所在网络的合法用户提供统一的基于浏览器方式的操作和控制界面,浏览器成了设备的前端控制板。
3)实时性
嵌 入式实时Linux是硬实时的嵌入式操作系统。当中断到来时,若是基本内核中断,如果当前有实时任务正在运行,则只是设置一下中断标志位,悬挂此中断;如 果此中断是实时中断,就直接调用相对应的实时中断处理程序。这样的调度机制可以保证远程监控系统中实时任务在确定的时间限度内完成,为系统故障的实时预 报、诊断、控制提供了强有力的支持。
此外,系统还从时间管理、内存管理、中断管理、同步、互斥管理以及设备管理等方面对这一操作系统的功能进行评估验证。
本文小结
尽管将Linux进行嵌入式实时性改进的方案很多,但是采用RTAI+uClinux的还未见到成型的产品。这一方案既符合嵌入式系统的需求,又达到硬实时性标准,同时还有强大的网络功能、易升级性、易移植性等优点。
同时,在其上进行应用编程时实时任务(基于RTAI)和非实时任务(基于uClinux)是分开编写的,清晰简洁,但由于用户需要直接在内核空间编程,从系统的安全性角度存在很大隐患。希望可以通过进一步讨论研究使其更加完善。
- 快速充电 前路漫漫(10-24)
- 基于PIC单片机的同步电动机新型智能励磁控制系统设计(12-03)
- TI采用新“金刚狼”MCU平台 使MCU总功耗锐减50%(10-10)
- 新型的移动数据终端Dolphin 6100由霍尼韦尔近期推出(08-02)
- 基于MSP430单片机的新型智能IC卡天然气表设计(07-25)
- 基于X25045的新型看门狗电路设计(06-16)