2022年嵌入式实时系统中断管理技术的分析研究.docx
《2022年嵌入式实时系统中断管理技术的分析研究.docx》由会员分享,可在线阅读,更多相关《2022年嵌入式实时系统中断管理技术的分析研究.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品学习资源1. 摘要 :嵌入式实时系统中断治理技术直接影响到系统的实时响应性能,本文通过对嵌入式内核中断治理技术的讨论,归结出“中断前后段处理”模型;同时,针对一些处理器中多个外部中断共用一个向量的问题,提出了一种单向量多中断处理映射技术,并在PowerPC mpc860处理器上实现 Delta OS内核时,验证了此技术的有效性;关键词 :实时性;中断;中断治理模式;嵌入式实时系统Research on Interrupt Management Technology ofEmbedded Real-time SystemsLEI Hong-wei SANG nanXIONG Guang-ze
2、CollegeofcomputerofUniversityofElectronicandScience TechnologyofChina Chengdu, Sichuan 610054 , China )ABSTRACT: The interrupt management technologies of embedded real-time systems have directinfluence on the system response time.Inthis papera mode of the interrupt processing, called fromer-afterint
3、erruptprocessing issummedup, andamap technologyof vector shared interruptprocessing is presented . The effectness of the technology is verified with the experiment of Delta OS kernel porting.Key words: real-time ;interrupt ; interrupt management mode, embedded real-time system1、引言嵌入式实时系统 将中断处理程序 rou
4、tine与向量号 vector绑定在一起; VRTXsa 内核中通过 sys_load_vrtx_isr 来安装一个中断句柄;DeltaOS内核中通过 delta_interrupt_catchvector,new_isr_handler,vector,old_isr_handler将用户指定的 n ew_isr_handler 安装到对应的 vector 处,同时保留以前的中断句柄;面对底层处理部分又可以分为两个部分:中断向量表部分和中断处理部分;中断向量表部分主要指中断向量表的定位和向量表中表项内容的形式,一般在嵌入式内核中都供应一个中断向量表,其表项的向量号应与处理器中所描述的向量对应;
5、向量表表项的内容形式一般有两种形式;最常见的形式就是在具体的向量位置储备的是一些转移程序,转到具体的中断处理部分;另一种形式也就是中断向量位置存放具体的中断处理程序,此仅针对向量号之间彼此有肯定的距离,此距离足以存放中断处理程序;面对底层部分中的中断处理部分是整个嵌入式内核中断治理的核心,在后面有具体的分析;欢迎下载精品学习资源在嵌入式内核中断治理中,仍有其他一些部分如关于中断治理的初始化部分,包括对中断掌握器的初始化和中断处理环境的构建等;在面对用户部分中,安装中断的向量号有两种类型:实向量号 硬件处理器指定的向量)和虚向量号,虚向量号主要便利系统对一些中断的治理,如在一些处理器体系中一些外
6、部设备只有一个中断向量号,就可采纳虚向量号来治理这些外部设备;这些虚向量号统一映射到那个实的中断向量号处;假如采纳实向量号就在安装时,对向量号要进行安全性检查,由于系统中有些核心的向量是不答应安装的,例如,在一些嵌入式系统中,调试代理专用的一些向量,比较常见的int 3,这些向量对应的处理部分是调试代理程序;假如用户在此向量处安装了其它中断处理程序,就使系统无法调试;对于嵌入式内核中断治理模式图中的中断处理部分,现以Delta OS内核为例,具体说明其中断处理部分;DeltaOS内核中断处理部分采纳了“统一接管 ”的思想,即 DeltaOS为全部的外部中断都供应一个统一的入口 _ISR_Han
7、dler ;此入口的主要功能有爱护中断现场,执行用户的中断服务程序,判定是否答应可抢占调度,中断现场的复原等; Delta OS内核中断处理的流程图如图 13;开头中断现场的爱护设置中断屏蔽级别是是否中断嵌套否切换到系统专用堆栈执行用户的中断处理句柄复原中断级别否是否答应任务调度是复原中断现场切换到高优先级任务中断返回欢迎下载精品学习资源图1 3 Delta OS 内核中断处理流程图从Delta OS 内核中断处理流程图中,可看出嵌入式内核中一些专用的处理方式;1)在嵌入式内核中一般有两个堆栈:系统栈和任务栈;系统栈是系统为中断上下文处理而预留的堆栈;任务栈属于任务本身的私有堆栈,用来储备任务
8、执行过程中一些暂时变量等信息;由于中断上下文不隶属于任何任务的上下文中,所以嵌入式内核一般都有一个系统栈特地处理中断上下文的;当产生中断且非中断嵌套时,此时的堆栈由被中断的任务中的任务栈切换到系统栈,当在中断处理中又发生中断,此时堆栈不再切换,仍用系统栈;当退出最外层中断时,堆栈又由系统栈切换到被中断的任务中的任务栈;2)一般嵌入式内核有两种形式:抢占式和非抢占式;而为了更好的支持系统的实时性,许多嵌入式实时内核都是抢占式内核,如Vxworks,pSOS等;从上面 DeltaOS内核中断处理流程图可知DeltaOS是抢占式内核,由于在中断处理中当检测到有高优先级任务就绪时,就会切换到高优先级任
9、务里,而不是等到退出中断后,再进行任务调度;3)在嵌入式内核中,中断时机和调度时机直接影响到系统的实时性;关中断的时机一般在执行核心操作之前,核心操作包括对链表的操作,对核心数据项如指示同步,反应重要信息状态)的修改等场合都需关中断;当执行完相应的核心操作后,就可以开中断;开调度时机主要供应重新调度的机会,一般在执行操作系统核心调用前关调度,当执行完后开调度;系统中开关中断与开关调度的关系大致如下:开关中断的粒度比开关调度要深,要细;开关中断主要为了实时性,供应各种可能的中断时机,答应响应外部中断;中断里也可以执行调度和系统调用,但中断的上下文与任务的上下文是不一样的,因此在中断里只能执行一些
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 嵌入式 实时 系统 中断 管理 技术 分析研究
限制150内