[发明专利]一种嵌入式实时系统中断处理装置及方法有效
申请号: | 200710148601.7 | 申请日: | 2007-08-22 |
公开(公告)号: | CN101140550A | 公开(公告)日: | 2008-03-12 |
发明(设计)人: | 宁晨;李灿伟;黄毅;韩佳雨 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F13/24 | 分类号: | G06F13/24 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518057广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 实时 系统 中断 处理 装置 方法 | ||
技术领域
本发明涉及嵌入式系统领域,更具体地说,涉及一种嵌入式实时系统中断处理的装置及方法。
背景技术
随着嵌入式技术的迅速发展,嵌入式实时操作系统正越来越广泛地应用在工业自动化、电子通讯、家电等各个领域。同时,嵌入式操作系统运行的平台也越来越多样,对各种中断源的处理也越来越复杂。在这种情况下,为了保证嵌入式平台在处理中断过程中的系统稳定性和实时性,原来的中断处理技术也随之不断发展。
目前用于嵌入式实时系统中中断处理方法主要包括以下流程:(1)硬件设备产生中断信号,并上报给中断控制器,由中断控制器进行中断优先级判断以及屏蔽控制后,再产生中断触发信号上报给CPU(中央处理器);(2)CPU再根据相应的中断向量查找中断向量表,从而跳转至ISR(中断服务例程),开始执行用户设定的中断响应代码进行中断处理,并获取中断的相关信息;(3)在底层的中断服务例程中调用上层注册的回调函数,进行上层中断业务的处理或业务的分发,在底层中断上下文中执行完上层的代码后中断返回。例如采用这种处理流程的中央处理器包括英特尔公司制造的型号为PentiumII的处理器、摩托罗拉公司的PPC8270处理器等等。
但是在挂接中断的设备越来越多样化,嵌入式平台越来越复杂的今天,现有的嵌入式实时系统的中断处理方法在稳定性和实时性方面正面临各种挑战。首先,如果某种设备中断过于频繁,或者由于某种故障使中断无法及时清除,当CPU退出中断响应函数后,立即又会再次进入,周而复始,对于抢占式操作系统CPU将处于一种死循环状态,无法再处理其它事情,最终导致内核工作队列溢出或者看门狗溢出。例如,光口频繁产生的中断会造成其对接板一直处理中断,使其他的任务得不到调度,如果在单板启动时出现这种情况,会造成单板进程启动超时,单板无法启动成功的严重问题。其次,对于那些处理相当复杂的中断,如果把复杂的中断事件处理工作放在底层中断响应函数中完成,则会造成其处理时间过长。而中断响应处理时间过长,会影响CPU对其它中断事件的及时响应,在某些情况下会严重影响系统的稳定性和实时性。
现有的专利文献包括:专利申请号为CN200610154795.7的中国专利申请“构件化嵌入式操作系统中断的实现方法”和专利号为US6574694的美国专利“Interrupt optimization using time betweensucceeding peripheral component events”(利用外围设备事件的时间间隔进行中断优化的方法)。
第CN200610154795.7号中国专利申请存在以下不足:一、虽然该专利从内核软件工程管理的角度,采用构件化技术实现嵌入式操作系统中断处理,但是它增加了在中断上下文中的处理时间,增加了系统的复杂度,从而影响CPU对其它中断事件的实时响应,在某些情况下会牺牲系统的实时性;二、另外在中断过于频繁的情况下,会使嵌入式操作系统的CPU处于死循环状态,内核无法调度和响应其他任务,从而引起系统崩溃或严重威胁系统稳定性。
第US6574694号美国专利存在以下不足:一、虽然在该专利中,对中断事件进行了简单的滤波处理,但是它不能根本性的解决中断上报过于频繁的情况下系统死机的情况;二、在中断设备多样、中断处理复杂的情况下,会影响系统响应中断的实时性。
发明内容
本发明解决的技术问题是提供了一种应用于嵌入式实时系统的中断处理装置及方法。
本发明提供的一种应用于嵌入式实时系统的中断处理装置,该装置包括:中断响应模块、底层中断回调处理模块、中断套接层守候任务处理模块和上层中断回调初始化模块,
中断响应模块,用于在中断信号触发之后,进行中断处理工作,触发底层中断回调处理模块;
底层中断回调处理模块,根据中断类型进行处理,通过同步机制和任务队列将中断处理结果释放到中断套接层守候任务处理模块;
中断套接层守候任务处理模块,用于从中断任务队列取出待处理任务,查找套接层回调函数表,并用于执行嵌入式实时系统中的上层模块注册在套接层模块中的后续中断回调处理任务,包括进行中断分发和处理。
上层中断回调初始化模块,由嵌入式实时操作系统上层触发调用,进行套接层回调函数表的初始化和注册操作。
上述的装置,进一步包括:
中断事件实时监测和控制模块,用于对中断事件定时进行检测,根据检测结果对相应中断进行异步的中断屏蔽控制。
上述的装置,其中,中断响应模块具体为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710148601.7/2.html,转载请声明来源钻瓜专利网。